《高级数据库系统》笔记—— 第一章 数据库系统简介

本文从数据库系统相关的概念讲起,对数据库系统的特点、数据库模式以及DBMS的层次结构进行了介绍。

回到上一章

课程内容

  • 数据库系统
  • 数据库模式
  • 数据模型
  • 数据库系统结构

下面分别介绍

数据库系统

数据库

数据库是具有一定结构的、互相之间有一定联系的数据的有序集合

从定义不难看出:数据库具有结构、联系和一定的有序性。同时具备这三个特征正是它显著优越于传统文件存储之处。在数据库出现前,数据存储主要依靠磁盘文件的存储,而且针对特定的应用其存储规则都是有区别的,这样存储的数据分散而且很难被其他应用程序所复用。开发应用程序的人员工作量也十分巨大,需要为不同的应用定义不同的存储规则,从长远来看,这样对于迭代开发也十分不利;同时数据定义与操作没有与应用程序做到有效的分离,无论哪里做了一点修改,与之相关的其他地方也不能幸免。正是由于传统存储方式存在的问题,数据库系统的概念才应运而生。由于它具有统一的存储结构,不同应用得到的数据可以综合起来以备它用;由于数据库存储的数据在一定程度上是有序的,因此可以便于进行范围查找;对于底层数据文件的操作由DBMS来完成,应用程序只需要调用DBMS提供的API就可以方便的操纵数据库,这样不仅应用程序开发者免于自己设计数据存储结构,而且做到了应用程序逻辑与数据的分离,对提高迭代开发效率也大有裨益。

数据库管理系统DBMS

DBMS是一个通用的软件系统,由一组系统程序构成,负责数据库的定义、管理、使用及操作维护。DBMS属于系统软件,通过它对数据库进行统一管理和控制。

数据库系统

数据库系统是实现有组织地、动态地存储大量关联数据,方便用户访问的计算机软、硬件和数据资源组成的系统,它包括DB、DBA、DBMS等。

数据库系统特点

1。 面向全组织的复杂数据库

  • 支持全企业的应用而不是某一个应用
  • 数据反映了客观事物间的本质联系,而不是着眼于面向某个应用,是有结构的数据。这是数据库系统的主要特征之一,与文件系统的根本差别。文件系统只是记录的内部有结构,一个文件的记录之间是个线性序列,记录之间无联系

2。 数据的冗余度小,易扩充

  • 数据面向整个系统,而不是面向某一应用,数据集中管理,数据共享,因此冗余度小
  • 节省存储空间,减少存取时间,且可避免数据之间的不相容性和不一致性
  • 每个应用选用数据库的一个子集,只要重新选取不同子集或者加上一小部分数据,就可以满足新的应用要求,这就是易扩充性
    下图是数据库系统减小冗余度的例子,各个部门操作的数据具有很大的相关性,如果统一存储起来,可以显著地降低冗余度。
    降低冗余度的例子

3。 具有较高的数据和程序的独立性

  • 把数据库的定义和描述从应用程序中分离出去
  • 数据描述是分级的(全局逻辑、局部逻辑、存储)
  • 数据的存取由系统管理,用户不必考虑存取路径等细节,从而简化了应用程序

4。 统一的数据控制功能,数据共享程度高

  • 数据的安全性控制(Security)
    • 保护数据以防止不合法的使用所造成的数据泄露和破坏
    • 措施:用户标识与鉴定,存取控制
  • 数据的完整性控制(Integrity)
    • 数据的正确性、有效性、相容性
    • 措施:完整性约束条件定义和检查
  • 并发控制(Concurrency)
    • 对多用户的并发操作加以控制、协调,防止其互相干扰而得到错误的结果并使数据库完整性遭到破坏
    • 措施:封锁

数据库模式

模式:对以格式化形式组织的数据库的描述和规定的信息集合,它是一种对数据的抽象,是描述数据的一种方法

为了提高数据的物理独立性逻辑独立性,使数据库的用户观点,即用户看到的数据库,与数据库的物理方面,即实际存储的数据库区分开来,数据库系统的模式是分级

数据库系统三级模式结构

CODASYL(Conference On Data System Language,美国数据系统语言协商会)提出模式、外模式、存储模式三级模式的概念。三级模式之间有两级映象

  • 视图抽象->外模式(Sub-Schema)
    • 用户的数据视图
    • 是数据的局部逻辑结构,模式的子集
  • 概念抽象->概念模式(Schema)
    • 所有用户的公共数据视图
    • 它是数据库中全体数据的全局逻辑结构和特性的描述
  • 物理抽象->内模式(Storage Schema)
    • 又称存储模式
    • 是数据的物理结构及存储方式
      三个模式间的关系如下图:
      数据库模式
      在不同的模式下对数据有着不同的抽象方式,具体如下图
      数据抽象

概念数据模型中往往采用E-R图作为数据的抽象,下图是一个E-R图的例子
概念数据模型
而对于结构数据模型则采用关系模型进行表示,下图是一个关系模型的例子
结构数据模型

DBMS 层次结构

由于本课程主要探讨DBMS的功能及其原理,所以下面重点介绍下DBMS层次结构及其功能
DBMS层次结构如下图所示
DBMS层次结构图

DBMS 主要功能

  • 数据库运行管理
    • 并发控制、存取控制、完整性约束条件检查和执行,日志组织和管理,事务管理和自动恢复
      +数据组织、存储和管理
    • 用户数据、索引、数据字典的组织、存储和管理,包括文件结构、存取方式、数据之间联系的实现等
      +数据库的建立和维护功能
    • 数据的装入、转换、卸出,数据库的转储、恢复、性能监视和分析等

最后附上一张图体会一下DBMS在整个数据库系统中的地位和作用
数据库系统结构

下一章 数据存储

文章目录
  1. 1. 回到上一章
  • 课程内容
  • 数据库系统
    1. 1. 数据库
    2. 2. 数据库管理系统DBMS
    3. 3. 数据库系统
    4. 4. 数据库系统特点
    5. 5. 数据库模式
    6. 6. 数据库系统三级模式结构
    7. 7. DBMS 层次结构
    8. 8. DBMS 主要功能
  • 下一章 数据存储
  • ,