知识卡片
数据管理三阶段演进及各阶段暴露的具体问题
内容
数据管理技术从人工管理演进到文件管理再到数据库管理,每一次跃迁都是上一阶段 的具体问题逼出来的,而不是技术自然进步的偶然结果。人工管理阶段程序与数据 一一对应,数据无法在程序间共享,同一份数据会重复出现在多个程序里,形成大量 冗余,效率极低且毫无安全性可言。文件管理阶段引入操作系统的文件系统,让数据 和程序开始独立,但很快暴露出三个具体问题:数据冗余度高且存在不一致性(同一 份信息分散存在多个部门的文件里,缺乏相互检查机制,一处修改另一处却漏改); 数据独立性差(数据结构一变,所有读写它的程序都可能失效);安全性与可靠性 没有保障(文件系统只能对整个文件加密或读写,无法细粒度控制到数据项级别, 也没有并发控制来防止多程序同时写同一数据项时互相覆盖)。数据库管理阶段 用专门的数据库管理系统把数据本身作为独立管理对象,用统一的数据模型表示 数据及数据间的关联,从而针对性地解决了以上三类问题:结构严谨降低冗余、 三级模式结构提供逻辑/物理独立性、统一管理提供完整性/安全性/并发控制/恢复 机制。理解这条演进线索的价值在于:数据库的每一项核心机制(完整性检查、 权限管理、并发控制、恢复技术)都能对应到文件管理阶段一个具体失效的场景, 而不是凭空设计出来的规范。
结构图:
flowchart TD
A[人工管理阶段<br/>程序与数据一一对应] -->|数据无法共享,冗余度极高| B[文件管理阶段<br/>程序通过文件名存取数据]
B -->|数据冗余不一致| C1[问题1: 多部门各自存副本,漏改不同步]
B -->|数据独立性差| C2[问题2: 数据结构一变,所有相关程序失效]
B -->|安全可靠性无保障| C3[问题3: 只能整文件加密,无并发控制]
C1 --> D[数据库管理阶段<br/>数据作为独立对象,DBMS统一管理]
C2 --> D
C3 --> D
参考来源
- 位置:《数据库原理(微课版)》第1章《绪论》1.1.2节"数据管理技术的发展"
(源文件:_epub-src/index_split_001.html)
- 结论依据:原文逐一列出文件管理阶段的三个具体问题(数据冗余度高存在不一致性、
数据独立性差、文件的安全性可靠性没有保障),并说明数据库管理阶段"以数据为
中心"的组织方式针对性地解决了这些问题,因此可以推出"三阶段演进由具体问题
驱动"的结论。
- 原始内容:数据冗余度高,存在不一致性……数据独立性差……文件的安全性、可靠性
没有保障……使用数据库管理数据不再以程序为中心组织数据,而是将数据作为中心
进行管理。