第1章、数据库概览

1、数据管理的三个阶段(利用计算机进行数据管理)

人工管理阶段------>文件系统阶段------>数据库系统阶段


人工管理阶段的特点:①数据不能长期保存在计算机中、②数据与程序不具有独立性、③数据不共享。

文件系统阶段,文件系统属于操作系统中的数据管理软件。文件系统的优点:①数据能够长期保存,并可以反复处理、②程序与数据之间有了一定的独立性。文件系统的缺点:①数据共享性差,冗余度大、②数据独立性差。虽然文件系统内有结构,但文件之间是孤立的,整体任然是一个无结构的数据集合,因此并不能反映现实世界事物之间的联系。

数据库的目标是实现对数据的统一管理和数据共享,即数据采用统一的数据模型 进行组织和储存,由专门的DBMS进行统一管理和控制 。应用程序在DBMS的控制下,采用统一的方式对数据库中的数据进行操作和访问。数据库系统的特点:①数据结构化(与文件系统的根本区别)、②数据共享性高、冗余度低、易于扩充、③数据独立性高、④数据统一管理和控制。

2、数据库系统的构成和处理过程

3、基本概念

4、数据模型的概念和作用

5、数据库系统的发展历程

目前按照数据模型发展的阶段划分,数据库系统大致可划分为三代。

第一代数据库系统采用层次模型或网状模型 (这两种数据模型统称为格式化模型)。二十世纪七八十年代较为流行。


第二代数据库系统是指**支持关系数据模型的关系数据库系统。**这一代数据库系统的主要特点:①概念单一,实体与实体之间的联系都用关系来表示、②以关系代数为基础,形式化基础好、③数据独立性强,数据的物理存取路径对用户屏蔽、④关系数据语言实现了标准化,即创建了结构化查询语言SQL。

ChatGPT

关系型数据库主要设计用于存储和管理结构化数据,例如文本、数字等类型的数据,并且通常优化了事务处理和复杂查询。

对于声音、图像和视频等非结构化数据,关系型数据库并不是最佳的存储选择,因为:

  1. 数据类型: 关系型数据库通常支持的数据类型适合存储文本、数字、日期等结构化数据,但不适合直接存储大型二进制对象(LOBs),如声音和视频文件。

  2. 性能: 存储和检索大型二进制对象对于关系型数据库来说可能会影响性能。这些数据库更适合处理事务和复杂查询,而不是高吞吐量的大型文件操作。

  3. 复杂性: 处理声音、图像和视频可能涉及到更复杂的数据处理和存储需求,例如音频流、视频流处理、元数据管理等,这些要求通常超出了关系型数据库的能力范围。

为了处理声音、图像和视频等非结构化数据,通常会选择专门的存储系统或服务,例如:

  • 对象存储: 适合存储大量的非结构化数据,如 Amazon S3、Azure Blob Storage 等。

  • 多媒体数据库: 专门设计用于存储和管理多媒体数据,如 CouchDB、MongoDB 等 NoSQL 数据库,它们能够更灵活地处理不同类型的数据和大型对象。

  • 专门的文件系统或存储设备: 对于高性能的需求,可能会选择专门的文件系统或存储设备,如 NAS(网络附加存储)或 SAN(存储区域网络)。

因此,虽然关系型数据库在处理结构化数据方面表现出色,但在处理声音、图像和视频等非结构化数据时,通常会选择更适合的存储和管理方案。


关系数据语言(Relational Data Language)是指用于管理关系数据库中数据的语言或语法。它主要用于定义、操作和查询关系型数据库中的数据。

主要的关系数据语言包括:

  1. SQL(Structured Query Language): SQL 是最常见和广泛使用的关系数据语言。它包括数据定义语言(DDL)用于定义数据库结构(如表、索引、视图等),数据操作语言(DML)用于插入、更新、删除数据,以及数据查询语言(DQL)用于查询数据。

    • DDL(Data Definition Language) : 包括 CREATEALTERDROP 等语句,用于定义和管理数据库对象的结构。
    • DML(Data Manipulation Language) : 包括 INSERTUPDATEDELETE 等语句,用于操作数据库中的数据。
    • DQL(Data Query Language) : 主要是 SELECT 语句,用于从数据库中查询数据。
  2. PL/SQL(Procedural Language/Structured Query Language): 是 Oracle 数据库系统中的一种关系数据语言扩展,支持过程化编程和批量 SQL 语句处理。

  3. T-SQL(Transact-SQL): 是 Microsoft SQL Server 的扩展 SQL 语言,支持过程化编程、事务控制和错误处理等功能。

关系数据语言的主要目的是提供一种标准化的方式来管理和操作关系型数据库中的数据,确保数据的一致性、完整性和可靠性。通过使用关系数据语言,开发人员可以有效地创建数据库对象、执行数据操作和查询,以满足应用程序对数据的需求。


第三代数据库管理系统(DBMS)管的3个基本特征:①支持数据管理、对象管理和知识管理,②必须保持或继承第二代数据库系统的技术,即必须保持第二代数据库系统的非过程化数据存取方式和数据独立性等特性,③必须对其他系统开放。

相关推荐
100编程朱老师16 分钟前
面试:什么叫Linux多路复用 ?
linux·运维·服务器
群联云防护小杜21 分钟前
云服务器主动防御策略与自动化防护(下)
运维·服务器·分布式·安全·自动化·音视频
Jtti22 分钟前
Jtti:nginx服务器如何限制访问频率
服务器·网络·nginx
rainFFrain22 分钟前
(MySQL)库的操作
数据库·mysql
视觉&物联智能1 小时前
【杂谈】-人工智能驱动的网络安全威胁:新一代网络钓鱼
网络·人工智能·web安全·网络安全·安全威胁分析
struggle20251 小时前
LinuxAgent开源程序是一款智能运维助手,通过接入 DeepSeek API 实现对 Linux 终端的自然语言控制,帮助用户更高效地进行系统运维工作
linux·运维·服务器·人工智能·自动化·deepseek
只可远观1 小时前
Flutter 泛型 泛型方法 泛型类 泛型接口
服务器·windows·flutter
八股文领域大手子2 小时前
深入理解缓存淘汰策略:LRU 与 LFU 算法详解及 Java 实现
java·数据库·算法·缓存·mybatis·哈希算法
noravinsc2 小时前
django admin 中更新表数据 之后再将数据返回管理界面
数据库·django·sqlite
学习溢出2 小时前
【网络安全】网络钓鱼的类型
网络·安全·网络安全·网络钓鱼·社会工程