跳转至

Lecture 1

使用文件系统存储数据的缺点:Page 21

  • 数据被多种不同的文件格式重复存储
  • 难以对数据进行访问
  • 数据被分割成许多个文件甚至文件格式
  • 无法轻松的限制数据取值范围,也无法轻松更改限制
  • 数据的修改操作可能进行到一半突然异常停止
  • 多用户同时操作可能会触发意想不到的结果

数据库管理系统 DBMS

DBMS 说白了就是一个软件系统,它可以实现数据库的定义、创建、维护、权限控制等操作:

  • 系统是安全的,未认证的用户无权访问
  • 系统是完整的,数据之间不存在矛盾冲突
  • 并发的,允许共享数据库
  • 可恢复到之前的版本

当然,DBMS 也存在一些缺点,比如:体积较大、需要额外硬件、需要数据转换等

DDL(数据定义语言,Data Definition Language)

DDL 通常用于定义数据库。DDL 还允许使用者指定数据库中的数据类型、结构和限制(type,structure,constraint)。但是不能用于修改数据。

DML(数据操纵语言,Data Manipulation Language)

实现数据库的增删改查,即 insert,update,delete,retrieve

查询语言(query language)是指 DML 当中用于查找和修改数据的部分。

SQL(Structured Query Language)读作 S-Q-L 或 Sequel,是最流行的查询语言。

三级模式、两级映射结构

DBMS 从三个层次管理数据:外部层次、概念层次、内部层次;每个层次都对应着一个模式(schema):外模式、概念模式、内模式。这种结构可以很方便的将用户操作和实际数据库分离开。

外部层次是呈现给用户的;概念层次描述了数据库系统的结构;内部层次描述了数据库的物理存储方式、索引方式等。

数据模型、概念模型

数据模型(data model),可以视作三个部分的组合:结构(structural)部分、操作(manipulative)部分、限制(constraints)部分。

概念模型(conceptual model),也叫做逻辑模型(logical model)

DBMS 的功能

  • 数据的存储、查询、更新
  • 为用户提供描述了数据的目录
  • 修改操作要么完全完成,要么进度为零
  • 允许并行操作
  • 允许恢复到以前的状态
  • 提供身份权限认证功能
  • 允许通信
  • 保证数据安全和完整,非法操作不应发生,保证操作在数据范围内
  • 数据独立性
  • 数据管理、监控、静态分析、垃圾回收等