数据库系统原理——备考计划2:数据库系统的概述

前言:

基于课本、上课ppt、复习总结ppt进行一个知识点的罗列,方便后期高效地复习


目录

前言:

一、基本概念

1.数据:

(1)概念:

(2)数据的种类:

(3)数据的定义:

2.数据库:

(1)概念:

(2)特点:

3.大数据:

二、数据库技术的产生、发展

1.人工管理阶段:

2.文件系统阶段:

3.数据库系统阶段:

4.三个阶段的比较:

三、数据库系统的体系结构

[1.数据库系统( DataBase System,DBS)定义:](#1.数据库系统( DataBase System,DBS)定义:)

2.数据库系统的组成:

3.内部体系结构------三级模式和二级映像结构

(1)三级模式------外模式(子模式/用户模式)------>视图

(2)三级模式------模式(逻辑模式/概念模式)------>基本表

(3)三级模式------内模式(存储模式/物理模式)------>存储文件

(4)二级映像------外模式/模式映像:保证数据和程序之间的逻辑独立性

(5)二级映像------模式/内模式映像:保证数据的物理独立性

4.外部体系结构:

[四、数据库管理系统(DataBase Management System)](#四、数据库管理系统(DataBase Management System))

1.主要功能

2.组成

(1)系统运行控制程序

(2)语言编译处理程序

(3)系统建立、维护程序

(4)数据字典

3.数据存取过程

五、数据模型

1.概念

2.分类:

(1)概念模型:

(2)逻辑模型(数据模型)和物理模型:

3.构成:

(1)数据结构

(2)数据操作

(3)数据的完整性约束

4.层次数据模型

(1)概念

(2)数据增删改

(3)优点

(4)缺点

5.网状数据模型

(1)概念

(2)数据增删改

(3)优点

(4)缺点

6.关系数据模型------二维表

(1)概念

(2)优点

(3)缺点

7.面向对象数据模型------对象和对象标识

(1)概念

(2)优点

(3)缺点

六、数据库系统的发展

七、数据库技术展望


一、基本概念

1.数据:

(1)概念:

数据是数据库中存储的基本对象

(2)数据的种类:

  • 数字是数据最简单的一种形式
  • 文本、图像、音频、视频等都是数据

(3)数据的定义:

  • 是用来记录信息的可识别的符号组合
  • 是信息的具体表现形式

2.数据库:

(1)概念:

  • 长期存储在计算机中的有组织的、可共享的大量数据和数据对象的集合
  • 在计算机中按照一定的格式存储数据的仓库

(2)特点:

  • 按一定的数据模型组织、描述和存储;
  • 具有较小的的数据冗余、较高的数据独立性;
  • 可为多种用户共享;
  • 能以安全和可靠的方法进行数据的检索和存储。

3.大数据:

无法在一定时间范围内使用常规软件工具进行捕捉、管理和处理的数据集合是需要新处理模式才能具有更强的决策力、 洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产

二、数据库技术的产生、发展

1.人工管理阶段:

数据不保存,不共享,无独立性, 无专用软件管理数据

图2-1 应用程序与数据间的对应关系

2.文件系统阶段:

以文件形式长期保存,由文件系统管理 数据 ,程序与数据间有一定独立性

图2-2 应用程序与数据间的对应关系

3.数据库系统阶段:

数据结构化 ,共享性高、冗余度低 , 独立性高 ,有统一的数据控制功能(DBMS)

图2-3 应用程序与数据间的对应关系

4.三个阶段的比较:

|---------------|--------------|---------------|-----------------|
| | 人工管理 | 文件系统 | 数据库系统 |
| 应用领域 | 科学计算 | 科学计算管理 | 大规模管理  |
| 硬件需求 | 无直接存取存 储设备 | 磁盘、磁鼓 | 大容量磁盘 |
| 软件需求 | 没有操作系统 | 文件系统 | 数据库管理系统 |
| 数据共享 | 无共享,冗余 度极大 | 共享性差,冗余 度大 | 共享性高,冗余度小 |
| 数据独立性 | 不独立,完全 依赖于程序 | 独立性差 | 高度的物理独立性和逻 辑独立性 |
| 数据结构化 | 无结构 | 记录内有结构, 整体无结构 | 整体结构化,用数据模 型描述 |

三、数据库系统的体系结构

1.数据库系统( DataBase System,DBS)定义:

是实现有组织地、动态地存储大量关联数据、方便多用户访问的计算机硬件、软件和数据资源组成的系统,即是采用数据库技术的计算机系统。

2.数据库系统的组成:

数据库、数据库管理系统、数据库应用系统、数据库管理员和用户等组成

图3-1 数据库系统的组成

(1)用户:

  • 终端用户:非计算机专业人员使用数据库
  • 应用程序员:设计和编制应用程序
  • 数据库管理员:负责设计、建立、管理和维护数据库以及协调用户对数据库要求的个人或工作团队

(2)硬件系统:

存储和运行数据库系统的硬件设备。

3.内部体系结构------三级模式和二级映像结构

数据库系统的三级模式之间的联系通过二级映像实现,实际的映像转换工作由数据库管理系统完成。因为一个数据库系统中只有唯一一个数据库,因此其的内模式和模式是唯一的 ,但建立在数据库系统上的应用不唯一,也就是说外模式可以有多个

图3-2 数据库系统的三级模式和二级映像

(1)三级模式------外模式(子模式/用户模式)------>视图

概念模式的某一部分的抽象表示

  • 是数据库用户能看到并允许使用的那部分局部数据的逻辑结构和特征的描述
  • 是数据库用户的数据视图
  • 是与某一应用有关的数据的逻辑表示

不同的用户由不同的需求和访问权限,因此一个数据库可以有多个外模式

(2)三级模式------模式(逻辑模式/概念模式)------>基本表

整个数据库实际存储的抽象表示

  • 是数据库中全体数据的逻辑结构和特征的描述,又称数据模式
  • 是所有用户的公共数据视图

数据的逻辑结构包括数据记录的名称、组成的数据项的名称、类型、取值范围等

(3)三级模式------内模式(存储模式/物理模式)------>存储文件

整个数据库实际存储的表示

  • 是对数据库存储结构的描述
  • 是数据在数据库内部的表示方式
  • 是数据库最低一级的逻辑描述

一般由数据库管理系统(DBMS)提供的定义语言来定义内模式,对于一般的用户来说是 透明看不见的。

图3-3 SQL语言支持的关系数据库的三级模式结构

(4)二级映像------外模式/模式映像:保证数据和程序之间的逻辑独立性

当数据库的逻辑结构(模式)发生变化时,应用程序的外部视图不受影响。这意味着应用程序可以保持不变,即使数据库的逻辑结构发生变化。这种独立性使得数据库的设计和实现可以相对独立于应用程序的设计和实现,从而提高了系统的灵活性和可维护性。

(5)二级映像------模式/内模式映像:保证数据的物理独立性

数据库系统中的内部模式(也称为物理模式)可以独立于外部模式(用户视图)和概念模式(逻辑模式)进行改变,而不会影响到应用程序和用户的数据访问方式。

换句话说,当数据库的物理存储结构发生变化时,外部模式和概念模式不受影响,用户和应用程序无需进行修改,仍然可以通过相同的方式访问数据。

4.外部体系结构:

(1)单用户结构------数据库放在一台计算机上,不能共享数据

(2)主从式结构------大型主机带多个终端;主机处理,终端输出

(3)分布式结构------是分布在计算机网络上的多个逻辑相关的数据库的集合

(4)客户机/服务器结构(C/S结构)------把DBMS的功能与应用程序分开

(5)浏览器/服务器结构(B/S结构)------将客户端运行的应用程序转移到应用服务器上

四、数据库管理系统(DataBase Management System)

1.概念:

数据库管理系统是一种++系统软件++,它负责管理数据库的创建、维护、访问和控制。

同时也是位于用户与操作系统间的++一层数据管理软件++,它提供了对数据库的管理和操作接口,为用户和应用程序提供了对数据库的访问能力。

通常在对庞大的数据库进行日常维护,并能够快速在大量的数据中找到所需要的数据的时候就需要使用到数据库管理系统。

'图4-1 DBMS在计算机系统中的位置

2.主要功能

(1)数据定义功能

(2)数据操纵功能

(3)数据库运行管理功能

(4)数据库的建立和维护功能

(5)数据通信接口

(6)数据组织、存储和管理

2.组成

(1)系统运行控制程序

  • 系统总控程序
  • 安全性控制程序
  • 完整性控制程序
  • 并发控制程序
  • 数据存取和更新程序
  • 通信控制程序

(2)语言编译处理程序

  • 数据定义语言DDL编译程序
  • 数据操纵语言DML编译程序

(3)系统建立、维护程序

  • 装配程序
  • 重组程序
  • 系统恢复程序

(4)数据字典

描述数据库中有关信息的数据目录

3.数据存取过程

(1)对得到的结果进行必要的处理,如格式转换等

(2)DBMS对存取数据库执行必要的存取操作

(3)DBMS接受请求并将该请求解释转换成机器代码指令

(4)用户向DBMS发出存取请求

(5)DBMS依次检查外模式、外模式/模式映象、模式、模式/内模式映象及存储结构定义

(6)从对数据库的存取操作中接受结果

(7)将处理的结果返回给用户

五、数据模型

1.概念

(1)数据:是描述事物的符号记录。

(2)模型:是现实世界的抽象。

(3)数据模型:

  • 是数据特征的抽象
  • 是数据库系统中用以提供信息表示和操作手段的形式架构
  • 是数据库系统中用以提供信息表示和操作手段的形式构架

2.分类:

(1)概念模型:

根据用户的观点对数据和信息建模,是对现实世界存在的事物和联系的第一级抽象

(2)逻辑模型(数据模型)和物理模型:

逻辑模型是按计算机的观点对数据建模;物理模型是对数据最底层的抽象

3.构成:

(1)数据结构

  • 层次结构
  • 网状结构
  • 关系结构

(2)数据操作

  • 数据查询操作
  • 数据更新操作(插入、修改、删除)

(3)数据的完整性约束

保证数据的正确性、有效性和相容性

4.层次数据模型

(1)概念

图4-1 层次数据模型

  • 层次模型表现为一棵倒立的树;

  • 根以外的其他结点有且仅 有一个双亲结点;

  • 父子结点之间的联系是**一 对多(1:n)**的联系 。

(2)数据增删改

|------|------------------------------------|
| 数据插入 | 进行插入操作时,如果没有相应的双亲结点值就不能插入子女结点值。 |
| 数据删除 | 进行删除操作时,如果删除双亲结点值,则相应的子女结点值也被同时删除。 |
| 数据修改 | 修改操作时,应修改所有相应的记录,以保证数据的一致性。 |

(3)优点

  • 结构简单,层次分明
  • 查询效率高
  • 提供良好的数据完整性支持
  • 数据就具有共享性、安全性、完整性

(4)缺点

  • 很难实现多对多联系
  • 该模型数据库缺乏灵活性,插入和删除数据限制太多
  • 无法直接查询子女结点,得须通过双亲结点

5.网状数据模型

(1)概念

特点:

有一个以上的结点没有双亲结点。

允许结点有多个双亲结点。

允许两个结点之间有多种联系(复合联系)

图4-2 网状数据模型

  • 是采用有向图结构表示记录型与记录型之间联系的数据模型
  • 每个结点表示一个记录型,每个记录型可包含若干个字段,记录型描述的是实体。
  • 结点间的带箭头的连线(或有向边)表示父子的联系。

(2)数据增删改

|------|----------------------------|
| 数据插入 | 插入数据时,允许插入尚未确定双亲结点值的子女结点值。 |
| 数据删除 | 删除数据时,允许只删除双亲结点值。 |
| 数据修改 | 修改数据时,只需更新指定记录即可。 |

(3)优点

  • 可表示实体间的多种复杂(多对多)联系;
  • 具有良好的性能和存储效率。

(4)缺点

  • 数据结构复杂;
  • 数据定义语言、数据操纵语言复杂;
  • 用户需要了解系统结构的细节。

6.关系数据模型------二维表

(1)概念

简单来说就相当于一张二维表。

图4-3 关系数据模型

(2)优点

  • 简单,有严格的数学理论根据;
  • 结构简单清晰,用户易懂易用;
  • 灵活强大的查询能力;
  • 更高的数据独立性、易于设计实现维护和使用。

(3)缺点

  • 查询效率;
  • 硬件开销;
  • 容易设计不好。

7.面向对象数据模型------对象和对象标识

(1)概念

将系统工程中的某个模块和构件是为问题空间的一个或一类对象,

  • 对象是现实世界中实体的模型化;
  • 对象标识独立于对象的内容和存储位置,是一种逻辑标识符,由系统产生,在整个系统范围内是唯一;
  • 两个对象即使内部状态值和方法都相同,如标识符不同,仍认为是两个相等而不同的对象;
  • 每个对象都包含一组属性和一组方法。

(2)优点

  • 适合处理各种数据类型;
  • 面向对象程序设计与数据库技术结合;
  • 提高开发效率;
  • 改善数据访问。

(3)缺点

  • 没有准确的定义;
  • 维护困难;
  • 不适合所有的应用。

六、数据库系统的发展

|-----------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| 传统数据库 | |-----------------------------------|-----------------------------------------------------| | 第一代: 格式化数据模型 (层次数据模型和 网状数据模型) | 支持三级模式的体系结构; 用存取路径来表示数据之间的联系; 独立的数据定义语言; 导航的数据操纵语言。 | | 第二代: 关系数据模型 | 概念单一; 以关系代数为基础; 数据独立性强; 关系数据库语言是非过程化的。 | 缺点: 面向机器的语法数据模型; 数据类型简单、固定 ; 结构与行为完全分离 ; 被动响应 。 |
| 第三代 | |-----------|---------------------------------------| | 面向对象的数据模型 | 支持面向对象的数据模型; 保持或继承第二代数据库系统的优点; 具有开放性。 | |

七、数据库技术展望

数据库技术与分布处理技术相结合,出现了分布式数据库。

数据库技术与人工智能技术相结合,出现了演绎数据库、主动数据库和知识库等。

数据库技术与多媒体技术相结合,出现了多媒体数据库。

相关推荐
爬山算法1 分钟前
Oracle(129) 如何使用闪回归档(Flashback Archive)?
数据库·oracle
liuwill12 分钟前
从技术打磨到产品验证:读《程序员修炼之道》的务实之道
笔记·程序人生
秋秋秋叶14 分钟前
Python学习——【3.1】函数
python·学习
Kk.61630 分钟前
SQL编程题复习(24/9/20)
数据库·sql·pta考试·专本贯通
Yz987643 分钟前
Hadoop-MapReduce的 原理 | 块和片 | Shuffle 过程 | Combiner
大数据·数据库·数据仓库·hadoop·mapreduce·big data
6230_1 小时前
git使用“保姆级”教程2——初始化及工作机制解释
开发语言·前端·笔记·git·html·学习方法·改行学it
加油=^_^=1 小时前
MySQL基础篇的补充
数据库·python·mysql
Pandaconda1 小时前
【计算机网络 - 基础问题】每日 3 题(十)
开发语言·经验分享·笔记·后端·计算机网络·面试·职场和发展
Mercury Random1 小时前
Qwen 个人笔记
android·笔记
攸攸太上1 小时前
Docker学习
java·网络·学习·docker·容器