EagleBear2002 的博客

这里必须根绝一切犹豫,这里任何怯懦都无济于事

数据库系统概论-01-绪论

数据:数据库中存储的基本对象,是描述事物的符号记录。

数据的含义称为语义,数据与其语义是不可分的。

数据库是长期储存在计算机内、有组织的、可共享的大量数据的集合。

数据库系统的构成:数据库、数据库管理系统(DBMS,及其应用开发工具),应用程序,数据库管理员(DBA)。

数据管理方式

数据管理三个阶段的比较

数据模型

  1. 概念模型
  2. 逻辑模型
  3. 物理模型

概念模型

用于数据库设计, 用 E-R 图来描述现实世界的概念模型。

概念:实体、属性、码、实体型、实体集、联系。

逻辑模型

用于 DBMS 实现。

问题:如何“多快好省”地将信息世界转换为机器世界?

方案 1:尽量独立于应用层,采用“中立”的方式表达概念模型,体现为关系数据库

方案 2:在应用层中,使用特定数据结构,并在逻辑模型中高效支持这一数据结构,体现为 NoSQL 数据库

方案*:通用数据结构采用方案 1,关键性数据结构采用方案 2

关系模型的数据结构

规范条件:关系必须是规范化的,满足一定的规范条件。

最基本的规范条件(1NF):关系的每一个分量必须是一个不可分的数据项,不允许表中还有表。

关系的完整性约束条件:实体完整性、参照完整性、用户定义的完整性。

术语对比

关系模式的优缺点

优点:

  1. 建立在严格的数学概念的基础上
  2. 概念单一
    1. 实体和各类联系都用关系来表示
    2. 对数据的检索结果也是关系
  3. 关系模型的存取路径对用户透明
    1. 具有更高的数据独立性,更好的安全保密性
    2. 简化了程序员的工作和数据库开发建立的工作

缺点:

  1. 存取路径对用户透明,查询效率往往不如格式化数据模型
  2. 为提高性能,必须对用户的查询请求进行优化,增加了开发 DBMS 的难度

NoSQL

  1. 基于 Key-Value 存储模型
  2. BigTable 模型:(row:string, column:string, time:int64) ==> string
  3. 基于文档模型
  4. 基于图模型:记为 \(G(V, E)\)\(V\) 为节点集合,每个节点具有若干属性,\(E\) 为边集合,也可以具有若干属性。

数据库系统的结构

一个数据库只有一个模式、内模式,模式与外模式、外模式与应用程序是一对多的。

  • 三级模式是对数据的三个抽象级别
  • 二级映象在数据库管理系统内部实现这三个抽象层次的联系和转换
    • 外模式/模式映像:保证了数据的逻辑独立性
    • 模式/内模式映像:保证了数据的物理独立性

数据库系统的组成