数据库系统的结构抽象与演变

一、数据库系统的标准结构

1.1 数据库系统的分层抽象

  • 典型数据库系统的结构抽象

  • DBMS管理数据的三个层次
    • External Level(User Level):某一用户能够看到与处理的数据,全局数据中的某一部分
    • Conceptual Level(Logic Level):从全局角度理解/管理的数据,含相应的关联约束
    • Internal Level(Physical level):存储在介质上的数据,含存储路径、存储方式、索引方式

1.2 数据(视图)与模式

  • 数据与数据的结构----模式
    • 模式(Schema):对数据库中数据所进行的一种结构性的描述,所观察到数据的结构信息
  • 视图(View)/数据(Data):某一种表现形式下表现出来的数据库中的数据

1.3 三级模式两层映像

  • 三级模式(三级视图)
    • External Sehema ---- (External) View:某一用户能够看到与处理的数据的结构描述
    • (Conceptual) Schema ---- Conceptual View:从全局角度理解/管理数据的结构描述,含相应的关联约束,体现在数据之间内在本质联系
    • Internal Schema ---- Internal View:存储在介质上的数据的结构描述,含存储路径、存储方式、索引方式等

  • 两层映像
    • E-C Mapping: External Schema-Conceptual Schema Mapping
      • 将外模式映射为概念模式,从而支持实现数据概念视图向外部视图的转换,便于用户的观察和使用
    • C-I Mapping: Conceptual Schema Mapping
      • 将概念模式映射为内模式,从而支持实现数据概念视图向内部视图的转换,便于计算机进行存储和处理

1.4 数据库系统的标准结构

1.5 两个独立性

  • 逻辑数据独立性:当概念模式变化时,可以不改变外部模式,只需改变E-C Mapping,从而无需改变应用程序
  • 物理数据独立性:当内部模式变化时,可以不改变概念模式,只需改变C-I Mapping,从而不改变外部模式

二、数据模型

2.1 数据模型的概念

  • 模式与模式的结构:数据模型
    • 数据模型
      • 规定模式统一描述方式的模型,包括:数据结构、操作和约束
      • 数据模型是对模式本身结构的抽象,模式是对数据本身结构形式的抽象
    • 比如
      • 关系模型:所有模式都可为抽象(Table)的形式[数据结构],而每一个具体的模式都是拥有不同列名的具体的表。对这种表形式的数据有哪些[操作]和[约束]

2.1 三大经典数据模型

  • 关系模型:表的形式组织数据
  • 层次模型:树的形式组织数据
  • 网状模型:图的形式组织数据

2.3 关系模型

  • 关系模型的例子

2.4 层次模型

  • 层次模型的例子

2.5 网状模型

  • 网状模型的例子

三、数据库系统的演变与发展

3.1 简要发展史

  • 四个阶段
    • 第一阶段:数据库技术探索阶段
      • 研制成功格式文件系统
      • 正式提出“Data Base”,并开始进行研究
    • 第二阶段:数据库技术确立阶段
      • 三大数据库:层次、网状及关系数据库相继提出并进行深入研究
      • 商用数据库出现并应用,但多位网状及层次型系统
      • 数据库研究形成理论基础:关系数据库理论
    • 第三阶段:数据库技术成熟阶段
      • 提出了标准化数据库系统结构模型
      • 关系DB系统迅速发展:如SQL,QBE,System R,Ingres等
      • 关系理论日臻完善,包括规范化理论,关系语言,RDB的设计与实现,新型关系模型等
      • 数据库应用已十分普及,渗透到社会各个方面,出现众多DB的技术分 支,DB走向全面成熟,人称70年代为“数据库的年代”
    • 第四阶段:数据库技术深化发展阶段
      • 数据库方法逐步理论化、数据库设计理论不断完善
      • 新型数据模型、专用数据模型,专用型、新型数据库系统,不断涌现
      • 数据库技术+其他计算机技术结合 == 面向各行各业的专用数据库

3.2 由文件系统到数据库

  • 文件系统的示例

  • 重要发展:由文件系统到数据库
    • 文件系统
      • 文件存储空间的管理、目录管理、文件读写管理、文件保护、向用户提供操作接口
      • 提供了不同的存取方法(索引文件、链接文件、直接存储文、倒排文件等),支持对文件的基本操作(增、删、改、查等),数据存取基本上以记录为单位
      • 优点:
        • 用户不必考虑文件存储的物理细节,解脱了对物理设备存取复杂性处理的负担
      • 缺点
        • 数据与程序紧密结合,数据的组织及语义紧密依赖于处理该文件的应用程序,数据结构发生改变则必须修改应用程序,文件之间无联系,文件的记录之间无联系,共享性差,冗余度大,不一致性高
  • 数据库系统的示例

  • 重要发展:由文件系统到数据库
    • 数据库系统
      • 由DBMS统一存取、维护数据组织形式及语义,可较强地独立于应用程序(数据的物理独立性和逻辑独立性)
      • 把数据及数据结构的定义和描述从应用程序中分离出去,交给DBMS,使得多个应用程序可共享数据及数据结构的操作,数据存取可以记录为单位,也可以以数据项和记录集合为单位
      • 统一的数据控制功能,数据共享程度高:系统可自动检查安全性、完整性和并发正确性
      • 整体数据结构化,文件(Table)之间、记录之间相互有关联,数据的冗余度小,易扩充
      • 独立于应用程序的高效率查询/统计操作

3.3 由层次模型数据库、网状模型数据库到关系数据库

  • 层次模型与网状模型数据库
    • 数据之间的关联关系由复杂的指针系统来维系,结构描述复杂
    • 数据检索操作依赖于由指针系统指示的路径
    • 逐一记录的操作,不能有效支持记录集合的操作

  • 关系模型数据库
    • 数据之间的关联关系由Table中属性的值来表征,结构描述简单:Table/relation
    • 数据检索操作不依赖于路径信息或过程信息,支持非过程化的数据操作
    • 有效支持记录集合的操作
    • 较为完善的理论基础
  • 关系数据库系统的示例

  • 关系数据库
    • 按行按列形式组织数据:关系的第一范式
    • 数据项的不可再分特性
    • 关系运算:关系带书、元组演算、域演算===>标准SQL
    • 关系数据库设计理论

  • 对象-关系数据库
    • 可有效支持不满足关系第一范式的数据项
    • 以对象来封装需分解的数据项
    • 行对象与列对象;聚集对象与结构对象
    • 面向对象技术(O-O)与集合/聚集操作技术(SQL)的结合
    • 支持复杂的数据类型

  • XML数据库
    • 是数据库的另一种形式,被称为半结构化数据库
    • 数据与数据的语义合并在一起进行存储和处理
    • 面向数据交换而提出,在互联网世界得到广泛应用

3.4 由多种多样的数据库到多数据库开放式互联

  • 多种多样的数据库
    • Oracle
    • Sybase
    • Ingres
  • 开放互联多种多样的数据库
    • ODBC
    • JDBC

猜你喜欢

转载自blog.csdn.net/qq_38689352/article/details/110676834
今日推荐