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

基本内容

  1. 数据库系统的标准结构
  2. 数据模型
  3. 数据库系统的演变与发展

重难点

  • 一组概念的区分:三级模式两层映像,物理独立性和逻辑独立性。
  • 一组概念的区分:数据、模式、数据模型。
  • 几种数据模型的差异:网状/层次模型-》关系模型-》OO数据模型。 

数据库系统是分层抽象的。

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

 

DBMS对数据分三个层次来管理

External Level = User Level  某一用户能够看到与处理的数据,   全局数据中的某一部分。

Conceptual Level = Logic level 从全局角度理解/管理的数据, 含相应的关联约束。

Internal Level = Physical level 存储在介质上的数据,含存储路径、存储方式 、索引方式等。

数据 与 数据的结构--模式

模式(Schema):对数据库中数据所进行的一种结构性的描述 所观察到数据的结构信息。例如:

学生登记表( 学号 char(8), 姓名 char(10),性别 Char(2), 出生年月 datetime, 入学日期 Datetime, 家庭住址 Char(40) )

视图(View):某一种表现形式下表现出来的数据库中的数据。例如:

三级模式两层映像

三级模式(三级视图)

External Schema   ---- (External) View 某一用户能够看到与处理的数据的结构描述。

(Conceptual) Schema     ---- Conceptual View 从全局角度理解/管理的数据的结构描述, 含相应的关联约束 体现在数据之间的内在本质联系。

Internal Schema     ---- Internal  View 存储在介质上的数据的结构描述,含存储路径、存储方式 、索引方式等。

两层映像

E-C Mapping:External Schema-Conceptual Schema Mapping (将外模式映射为概念模式)

实现数据从概念视图向外部视图的转换,便于用户观察和使用。

C-I Mapping:Conceptual Schema-Internal Schema Mapping(将概念模式映射为内模式)

实现数据概念视图向内部视图的转换,便于计算机进行存储和处理。

两个独立性

逻辑数据独立性 当概念模式变化时,可以不改变外部模式(只需改变E-C Mapping),从而无需 改变应用程序 。

物理数据独立性 当内部模式变化时,可以不改变概念模式(只需改变C-I Mapping) ,从而不改 变外部模式。

 

数据模型的概念:规定模式统一描述方式的模型,包括:数据结构、操作和约束。

比如:关系模型:所有模式都可为抽象表(Table)的形式[数据结构],而每一个具体的模式都是拥有不同列名的具体的表。对这种表形式的数据有哪些[操作]和[约束]。

数据模型vs.模式vs.数据?

数据模型是对模式本身结构的抽象,模式是对数据本身结构形式的抽象。

三大经典数据模型

关系模型:表的形式组织数据

层次模型:树的形式组织数据

网状模型:图的形式组织数据

关系模型的例子:

层次模型的例子:

网状模型的例子:

数据库系统的演变与发展

---- 简要发展史:四个阶段

第一阶段:数据库技术探索阶段(59-65/67)

 研制成功格式文件系统

 正式提出 “Data Base ”,并开始进行研究

 第二阶段:数据库技术确立阶段(65/68-75)

 三大数据库:层次、网状及关系数据库相继提出并进行了深入研究

 商用数据库出现并应用,但多为网状及层次型系统

 第三阶段:数据库技术成熟阶段(76-80s前期 )

 提出了标准化数据库系统结构模型

 关系DB系统迅速发展:如SQL, QBE, System R ,Ingres 等

 关系理论日臻完善,包括规范化理论,关系语言,RDB的设计与实 现,新型关系模型等;

 数据库应用已十分普及,渗透到社会各个方面,出现众多DB的技术分 支,DB走向全面成熟,人称70年代为 “数据库的年代 ”

第四阶段:数据库技术深化发展阶段(85年以来 )

 数据库方法逐步理论化、数据库设计理论不断完善

 新型数据模型、专用数据模型, 专用型、新型数据库系统,不断涌现

 数据库技术 +其他计算机技术结合 == 面向各行各业的专用数据库

 

从文件系统到数据库

文件系统

文件存储空间的管理、目录管理、文件读写管 理、文件保护、向用户提供操作接口

 提供了不同的存取方法 (索引文件、链接文件、直 接存取文件、倒排文件等), 支持对文件的基本操作 (增、删、改、查等), 数据存取基本上以记录为单位

优点:用户 (程序 )不必考虑文件存储的物理细节, 解脱了对物理设备存取 复杂性处理的负担

不足:数据与程序紧密结合,数据的组织及语义紧密依赖于处理该文件的 应用程序,数据结构发生改变则必须修改应用程序,文件之间无联系,文件 的记录之间无联系,共享性差,冗余度大,不一致性高

数据库系统

 由DBMS统一存取、维护数据组织形式及语义, 可较强地独立于应用程序 (数据的物理独立性和逻 辑独立性 )

把数据及数据结构的定义和描述从应用程序中分 离出去,交给DBMS, 使得多个应用程序可共享数 据及数据结构的操作, 数据存取可以记录为单位, 也可以以数据项 和记录集合为单位

统一的数据控制功能,数据共享程度高: 系统可 自动检查安全性、完整性和并发正确性

整体数据结构化,文件(Table)之间、记录之间 相互有关联,数据的冗余度小,易扩充

独立于应用程序的高效率查询 /统计操作

 

重要发展:由层次模型数据库、网状模型数据库到关系数据库

 层次模型与网状模型数据库

数据之间的关联关系由复杂的指针系统来维系,结构描述复杂

数据检索操作依赖于由指针系统指示的路径 逐一记录的操作,不能有效支持记录集合的操作

 关系模型数据库

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

 

重要发展:由关系数据库到对象关系数据库、面向对象数据库

关系数据库

按行按列形式组织数据:关系的第 1范式

数据项的不可再分特性

关系运算: 关系代数、元组演算、域演算--

标准SQL

关系数据库设计理论

对象-关系数据库

可有效支持不满足关系第 1范式的数据项

以对象来封装需分解的数据项

行对象与列对象;聚集对象与结构对象

 

 面向对象数据库

面向对象技术(O-O)与集合 /聚集操作技术(SQL)的结合

支持复杂的数据类型,数据封装与抽象数据结构

支持面向对象的一些特性:类、继承、封装、多态 …

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值