数据库原理:绪论

12/31/2023 数据库

目录


参考:


# 数据库原理:绪论

# 一、数据库系统概述

# 1.1 基本概念

数据

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

  • 语义:数据的含义称为数据的语义(如学生的姓名、性别、出生年月等用于描述数据是什么的词语),数据与其语义是不可分的。
  • 记录:计算机中表示和储存数据的一种格式或者一种方法。

信息

信息(Information):由原始数据经加工提炼而成的,用于决定行为、计划或具有一定语义的数据称为信息,具有相对性。

数据库

数据库(Database,简称DB):是长期储存在计算机内、有组织的、可共享的大量数据集合。

数据库基本特征:1.永久存储;2.有组织 ;3.可共享;4.冗余度小;5.易扩展。

数据库中的数据按照一定的数据模型组织、描述和储存,具有较小的冗余度(重复数据少)、较高的数据独立性(程序和数据相对独立,不受平台限制)和易拓展性,并可为各种用户(批处理用户和联机用户,即应用程序和终端)共享。数据库中不仅存放了数据,还存放了数据和数据之间的关系。

数据库管理系统

数据库管理系统(Database Management System,简称DBMS):是位于用户与操作系统之间的一层数据管理软件。

数据库管理系统的主要功能(科学地组织和存储数据、高效地获取和维护数据):

  1. 数据定义功能:提供数据定义语言(DDL),定义数据对象的组成与结构。
  2. 数据组织、存储和管理:分类组织、存储和管理各种数据(数据字典、用户数据、数据存储路径),确定文件结构和存储方式在存储级上组织这些数据,实现数据之间的联系,基本目标: 提高存储空间利用率和方便存取,提供多种存储方法,提高存取效率。
  3. 数据操纵功能:提高数据操纵语言(DML),实现增删改查。
  4. 数据库的事务管理和运行管理:统一管理和控制数据库,保证数据的安全性、完整性、多用户对数据的并发使用及发生故障后的系统恢复。
  5. 数据库的建立和维护功能:初始数据的输入、转换功能,数据库的转储、恢复功能,数据库的重组织功能和性能监视、分析功能等。
  6. 其他功能:通信功能,数据转换功能。

数据库系统

数据库系统(Database System,简称DBS):是指在计算机系统中引入数据库后的系统构成。常常把数据库系统简称为数据库。

  • 数据库系统由数据库(DB)、数据库管理系统(DBMS)、应用程序和数据库管理员(DBA)组成的存储、管理、处理和维护数据的系统。
  • 数据库系统人员由数据库管理员(简称DBA)、系统分析员和数据库设计人员、应用程序员、用户。

数据库应用程序接口

数据库应用程序接口(API):DBMS为开发应用程序提供的操纵和访问数据库中数据的接口函数、过程或语言。

数据库应用程序

数据库应用程序(AP):满足某类用户要求的操纵和访问数据库的程序(人事管理系统、图书管理系统)。

数据库应用程序的分类:

  1. 联机事务处理(OLTP):对用户的操作命令响应快、每次操作涉及的数据量少 。理解:就是简单的增删改,操作无脑,快就完事了。
  2. 联机分析处理(OLAP):支持决策支持系统,需要在数据仓库的基础上,进行联机分析处理,每次处理的数据量大,响应时间长,它需要由历史数据、由多个数据来源的数据得到有指导意义的信息。理解:分析大量数据,进行统计,实现“数据杀熟”。

# 1.2 数据库管理技术的发展过程

  1. 人工管理阶段

    在计算机出现之前,人们运用常规的手段从事记录、存储和对数据加工,也就是利用纸张来记录和利用计算工具(算盘、计算尺)来进行计算,并主要使用人的大脑来管理和利用这些数据。

    特点:1. 计算机系统不提供对用户数据的管理功能;2. 数据不能共享;3. 不保存数据。

  2. 文件系统阶段

    在这一阶段(20世纪50年代后期至60年代中期)计算机不仅用于科学计算,还利用在信息管理方面。随着数据量的增加,数据的存储、检索和维护问题成为紧迫的需要,数据结构和数据管理技术迅速发展起来。此时,外部存储器已有磁盘、磁鼓等直接存取的存储设备。软件领域出现了操作系统和高级软件。操作系统中的文件系统是专门管理外存的数据管理软件,文件是操作系统管理的重要资源之一。

    特点:数据以“文件”形式可长期保存在外部存储器的磁盘上。由于计算机的应用转向信息管理,因此对文件要进行大量的查询、修改和插入等操作,这些操作由文件系统提供。

    缺点:1. 数据冗余;2. 不一致性;3. 数据独立性差。

  3. 数据库系统阶段

    20世纪60年代后期以来 ,计算机性能得到进一步提高,更重要的是出现了大容量磁盘,存储容量大大增加且价格下降。在此基础上,才有可能克服文件 系统管理数据时的不足,而满足和解决实际应用中多个用户、多个 应用程序共享数据的要求,从而使数据能为尽可能多的 应用程序服务,这就出现了数据库这样的数据管理技术。

    特点:1. 数据结构化;2. 数据共享性高、冗余少且易扩充;3. 数据独立性高;4. 数据由DBMS统一管理和控制。

    • 数据的管理者:DBMS

    • 数据面向的对象:现实世界

    • 数据的结构化:整体结构化。数据的结构用数据模型描述,无需程序定义和解释,数据可以变长,数据的最小存取单位是数据项,描述数据时不仅要描述数据本身,还要描述数据之间的联系

    • 数据的共享程度:共享性高,降低数据的冗余度,节省存储空间,避免数据间的不一致性,使系统易于扩充。

    • 数据的独立性:高度的物理独立性和一定的逻辑独立性。

      • 数据控制:由DBMS统一管理和控制(数据的安全性保护,数据的完整性检查,并发控制,数据库恢复)

# 二、数据模型

数据模型是现实世界数据特征的抽象,是用来描述数据、组织数据和对数据进行操作的。现有的数据库均是基于某种数据模型的。数据模型是数据库系统的核心和基础。

# 2.1 数据模型的分类

概念模型

按用户的观点来对数据和信息建模,主要用于数据库设计

概念模型的表示方法很多,最常用的为实体-联系方法(Entity-Relationship approach,E-R),该方法用E-R图来描述概念模型,E-R方法也成为E-R模型。

实体-联系方法(Entity-Relationship Approach)是概念模型的一种表示方法,其提供了表示实体型、属性和联系的方法。

  • 实体型:用矩形表示,矩形框内写明实体名

  • 属性:用椭圆表示,并用无向边将其与相应的实体型连接起来

  • 联系:用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体型连接起来,同时标明联系的类型(1:1, 1:n, m:n)

    比如有两个简单实体,分别是单位和职员,它们的关系就是1:m,一个单位可以有多个职员;

    再比如有两个实体,分别是学生和图书,它们的关系就是m:n,从而形成中间表学生借阅的图书,结果是1本图书可以被多人借阅,1个人也可以借多本图书。

逻辑模型

逻辑模型主要包括层次模型、网状模型、关系模型、面向对象模型、对象关系数据模型、半结构化数据模型等,它是按计算机系统的观点对数据建模,主要用于数据库管理系统的实现

物理模型

物理模型是对数据最底层的抽象,它描述数据在系统内部的表示方法和存取方法,在磁盘或磁带上的存储方式和存取方法,是面向计算机系统的,其具体实现是DBMS的任务

20190629192441167

# 2.2 数据模型的组成要素

一般来讲,数据模型是严格定义的一组概念的集合。这些概念精确地描述了系统的静态特性、动态特性和完整性约束条件。

数据模型通常由数据结构、数据操作、完整性约束条件三个部分组成。

数据结构

数据结构描述数据库的组成对象以及对象之间的联系。结构是对系统静态特性的描述。

数据操作

数据操作是指对数据库中各种对象的实例允许执行的操作的集合,包括操作及其有关的规则,主要分为查询和更新(插入、删除、修改)两大类操作。数据操作是对系统动态特性的描述。

数据的完整性约束条件

完整性约束条件是给定的数据模型中数据及其联系所具有的制约和依存规则,用以限定符合数据模型的数据库状态以及状态的变化,以保证数据的正确、有效、相容。规则包含:实体完整性、参照完整性、用户定义完整性。三者都满足即满足了数据完整性约束。

# 2.3 常用的传统数据模型

  1. 非关系模型(格式化模型)
  2. 层次模型(Hierarchical Model)
  3. 网状模型(Network Model)
  4. 关系模型(Relational Model) ,数据结构:表
  5. 面向对象数据模型(Object Oriented Model) 数据结构:对象
  6. 对象关系模型(Object relational data Model) (对关系模型的扩展)
  7. 半结构化数据模型、非结构化数据模型

# 三、数据库系统结构

从数据库管理系统角度看,三级模式结构。

从数据库最终用户角度看,单用户结构、主从式结构、分布式结构、客户/服务器、浏览器/应用服务器/数据库服务器。

数据库系统模式的概念

# 3.1 数据库系统模式的概念

型(Type):对某一类数据结构和属性的说明。(学号,姓名,性别) 值(Value):型的一个具体赋值。(2013001,李明,男) 模式(Schema):数据库中全体数据的逻辑结构和特征的描述,仅仅涉及型的描述,反映的是数据的结构及其联系,模式是相对稳定的。 实例(Instance):模式的一个具体值,反映数据库某一时刻的状态,同一个模式可以有很多实例,实例随数据库中的数据的更新而变动。

模式是相对稳定的,而实例是相对变动的

# 3.2 数据库系统的三级模式结构

数据库系统的三级模式结构:模式(Schema)、外模式(External Schema)、内模式(Internal Schema)

模式(也称逻辑模式)

  • 数据库中全体数据的逻辑结构和特征的描述

  • 所有用户的公共数据视图,综合了所有用户的需求

  • 模式的地位:是数据库系统模式结构的中间层

    • 与数据的物理存储细节和硬件环境无关

    • 与具体的应用程序、开发工具及高级程序设计语言无关

外模式(也称子模式或用户模式)

  • 数据库用户(包括应用程序员和最终用户)使用的局部数据的逻辑结构和特征的描述

  • 数据库用户的数据视图,是与某一应用有关的数据的逻辑表示

  • 外模式的用途:

    • 保证数据库安全性的一个有力措施

    • 每个用户只能看见和访问所对应的外模式中的数据

内模式(也称存储模式)

  • 是数据物理结构和存储方式的描述

  • 是数据在数据库内部的表示方式:

    • 记录的存储方式(顺序存储,按照B树结构存储,按hash方法存储)

    • 索引的组织方式

    • 数据是否压缩存储

    • 数据是否加密

    • 数据存储记录结构的规定

# 3.3 数据库的二级映象功能与数据独立性

  • 外模式/模式映像—保证数据的逻辑独立性

    数据与程序的逻辑独立性:当模式改变时(例如增加新的关系、新的属性、改变属性的数据类型等)。由数据库管理员对各个外模式/模式的映像做相应改变,可以使外模式保持不变。应用程序是依据数据的外模式编写的。从而应用程序不必修改,保证了数据与程序的逻辑独立性,简称数据的逻辑独立性。

  • 内模式/模式映像—保证数据的物理独立性

    数据与程序的物理独立性:当数据库的存储结构改变,由数据库管理员对模式/内模式映像做相应改变,可以使模式保持不变,从而应用程序也不必改变,保证了数据与程序的物理独立性,简称数据的物理独立性。

20190629192529400

上次更新时间: 9/25/2024, 1:17:45 AM