数据库系统概论 第一章 绪论

文章目录

  • [第一章 绪论](#第一章 绪论)
    • [1.1 数据库系统概述](#1.1 数据库系统概述)
      • [1.1.1 数据库的四个基本概念](#1.1.1 数据库的四个基本概念)
      • [1.1.2 数据管理技术的产生与发展](#1.1.2 数据管理技术的产生与发展)
      • [1.1.3 数据库系统的特点数据结构化](#1.1.3 数据库系统的特点数据结构化)
    • [1.2 数据模型](#1.2 数据模型)
      • [1.2.1 两类数据模型](#1.2.1 两类数据模型)
      • [1.2.2 概念模型](#1.2.2 概念模型)
      • [1.2.3 数据模型的组成要素](#1.2.3 数据模型的组成要素)
      • [1.2.4 常用的数据模型](#1.2.4 常用的数据模型)
      • [1.2.5 层次模型](#1.2.5 层次模型)
      • [1.2.6 网状模型](#1.2.6 网状模型)
      • [1.2.7 关系模型](#1.2.7 关系模型)
    • [1.3 数据库系统的结构](#1.3 数据库系统的结构)
      • [1.3.1 数据库系统模式的概念](#1.3.1 数据库系统模式的概念)
      • [1.3.2 数据库系统的三级模式结构](#1.3.2 数据库系统的三级模式结构)
      • [1.3.3 数据库的二级映像功能与数据独立性](#1.3.3 数据库的二级映像功能与数据独立性)

第一章 绪论

1.1 数据库系统概述

1.数据的处理:Descriptive(描述)、Predictive(预测)、Prescriptive(规范)

2.文件组织的相关词汇和概念:

  • 数据库:相关文件的集合;
  • 文件:相关记录的集合;
  • 记录:相关字段的集合;
  • 字段:一组字符串,比如单词、数字;
  • 实体:需要存储信息的诸如人、地址、物体等对象;
  • 属性:描述实体的特征或特性。

3.数据层次:数据库(Database)、文件(file)、记录(record)、字段(field)、字节(byte=8bit)、位(bit)[一个汉字有2个字节]

1.1.1 数据库的四个基本概念

**1.数据(Data)**数据库中存储的基本对象。

①Def:描述事物的符号记录。

②种类:数字( 结构化数据 \color{blue}{结构化数据} 结构化数据)、文字、图形、图像、音频等( 非结构化数据 \color{blue}{非结构化数据} 非结构化数据)。

③数据是基础:数据------信息------知识------智能。

④数据的语义:数据的含义。(数据与其语义是不可分的)

2.数据库(Database,简称DB)

①Def:是 长期储存 \color{red}{长期储存} 长期储存在计算机内、 有组织的 \color{red}{有组织的} 有组织的、可 共享的 \color{red}{共享的} 共享的大量数据集合。

②基本特征:

  • 数据按一定数据模型组织、描述、和储存;
  • 可为各种用户共享;
  • 冗余度较小;
  • 易扩展;
  • 较高的数据独立性。

3.数据库管理系统(DBMS)

①Def:

  • 位于用户和操作系统之间的一层数据管理软件;
  • 是基础软件,是一个大型复杂的软件系统。

②用途:科学地组织和存储数据、高效地获取和维护数据。

③主要功能: D D L ( 数据定义语言 ) 、 D M L ( 数据操纵语言 ) 、 D C L ( 数据控制语言 ) \color{red}{DDL(数据定义语言)、DML(数据操纵语言)、DCL(数据控制语言)} DDL(数据定义语言)、DML(数据操纵语言)、DCL(数据控制语言)

  • 数据定义功能:

    • 提供数据定义语言(DDL);
    • 定义数据库中的数据对象。
  • 数据组织、存储和管理:

    • 分类组织、存储和管理各类数据;
    • 确定组织数据的文件结构和存取方式;
    • 实现数据之间的联系;
    • 提供多种存取方法提高存取效率。
  • 数据操纵功能:

    • 提供数据操纵语言(DML);
    • 实现对数据库的基本操作(查询、插入、删除和修改);
  • 数据库的事物管理和运行管理:

    • 数据库在建立、运行和维护时由数据库管理系统统一管理和控制;
    • 保证数据的安全性、完整性、多用户对数据的并发使用;
    • 发生故障后的系统恢复。

4.数据库系统(Database System,简称DBS)

① 组成:硬件平台、软件平台、人员。

②构成:

  • 数据库
  • 数据库管理系统(及其应用开发工具)
  • 应用程序
  • 数据库管理员(DBA)
    • 设计与定义数据库
    • 帮助最终用户使用数据库系统
    • 负责数据库系统的运维工作
    • 改进和重组数据库系统
    • 转储与恢复数据库
    • 重构数据库

③图示:

1.1.2 数据管理技术的产生与发展

1.什么是数据管理:

  • 对数据进行分类、组织、编码、存储、检索和维护;
  • 数据处理的中心问题。

2.数据管理技术的发展过程:

  • 人工管理阶段(20世纪50年代中之前)
  • 文件系统阶段(20世纪50年代末------60年代中)
  • 数据库系统阶段(20世纪60年代末------现在)

3.数据管理技术的发展动力:

  • 应用需求的推动
  • 计算机硬件的发展
  • 计算机软件的发展

1.1.3 数据库系统的特点数据结构化

1.数据结构化

  • 数据的整体结构化是数据库的主要特征之一

    • 面向全组织,数据之间有联系
    • 数据记录可以边长
    • 数据的最小存取单位是数据项
    • 数据用数据模型描述,无需应用程序定义
  • 数据的共享性高、冗余度低且易扩展(好处)

    • 减少数据冗余,节约存储空间
    • 避免数据之间的不相容性和不一致性
    • 使系统易于扩充
  • 数据独立性高

    • 物理独立性
      • 指用户的应用程序与数据库中的物理存储是相互独立的。当数据的物理存储改变了,应用程序不改变。
    • 逻辑独立性
      • 指用户的应用程序与数据库中的逻辑结构是相互独立的。当数据的逻辑结构改变了,应用程序不改变。
    • 数据的独立性由DBMS的二级映像功能来保证。
  • 数据由数据库管理系统统一管理和控制

    • 数据的安全性(Security)保护
      • 保护数据防止不合法的使用造成数据的泄密和破坏。
    • 数据的完整性(Integrity)保护
      • 保证数据的正确性、有效性和相容性。
    • 并发(Concurrency)控制
      • 对多用户的并发操作加以控制和协调,防止相互干扰而得到错误的结果。
    • 数据库恢复(Recovery)
      • 对数据库从错误状态恢复到某一已知的正确状态。(回滚机制)

1.2 数据模型

1.数据模型是对现实世界数据特征的抽象。(通俗讲就是 对现实世界的模拟 \color{red}{对现实世界的模拟} 对现实世界的模拟)

2.满足要求:

  • 能比较真实的模拟现实世界
  • 容易为人所理解
  • 便于在计算机上实现

3.数据模型是数据库系统的 核心和基础 \color{red}{核心和基础} 核心和基础​。

1.2.1 两类数据模型

1.概念模型,也称信息模型

  • 它是按照用户的观点来对数据和信息建模,用于数据库设计。

2.逻辑模型和物理模型

  • 逻辑模型主要包括网状模型、层次模型、关系模型、面向对象模型、对象关系数据模型、半结构化数据模型等。按计算机系统的观点对数据建模,用于DBMS实现。
  • 物理模型是对数据最底层的抽线,描述数据在系统内部的表示方式和存取方式,在磁盘或磁带上的存储方式和存取方式。

3.客观对象的抽象过程------两步抽象

  • 现实世界中的客观对象抽象为信息世界的概念模型。
  • 把概念模型转换为机器世界某一DBMS支持的数据模型。

1.2.2 概念模型

1.Def:从用户的观点对数据进行建模,将现实世界抽象为信息世界。

2.信息世界的基本概念:

  • 实体(Entity):客观存在并可互相区别的事物。
  • 属性(Attribute):实体所具有的某一特性。
  • 码(Key):唯一标识实体的属性集。
  • 实体型(Entity Type):用实体名及其属性名集合来抽象和刻画同类实体。
  • 实体集(Entity Set):同一类型实体的集合。
  • 联系(Relationship)
    • 现实世界中事物内部以及事物之间的联系在信息世界中反映为实体(型)内部的联系和实体(型)之间( 一对一、一对多、多对多等 \color{red}{一对一、一对多、多对多等} 一对一、一对多、多对多等)的联系。

3.概念模型实例: 实体 − 联系方法 \color{red}{实体-联系方法} 实体−联系方法(E-R方法:E-R图)

1.2.3 数据模型的组成要素

1.数据结构(对系统静态特征的描述)

  • 描述数据库的组成对象( 类型、内容、性质 \color{red}{类型、内容、性质} 类型、内容、性质)以及对象之间的联系。

2.数据操作

  • 查询
  • 更新(包括插入、删除、修改)

3.数据的完整性约束条件:一组完整性规则的集合。

1.2.4 常用的数据模型

  • 层次模型(Hierarchical Model):树
  • 网状模型(Network Model):图
  • 关系模型(Relational Model):表
  • 面向对象数据模型(Object Oriented Data Model):对象

注意!前四个称为逻辑模型( L o g i c a l M o d e l ) \color{red}{注意!前四个称为逻辑模型(Logical Model)} 注意!前四个称为逻辑模型(LogicalModel)

  • 对象关系数据模型(Object Relational Data Model)
  • 半结构化数据模型(Semistruture Data Model)

1.2.5 层次模型

1.DBS中最早出现的数据模型。

2.层次模型用 树形结构 \color{red}{树形结构} 树形结构来表示各类实体以及实体之间的联系。

3.完整性约束条件

  • 无相应的双亲结点值就不能插入子女结点值
  • 如果删除双亲结点值,则相应的子女结点值也被同时删除
  • 更新操作时,应更新所有相应记录,以保证数据的一致性

4.层次模型的特点:

  • 结点双亲唯一。
  • 只能处理一对多的实体联系。
  • 每个记录类型可以定义一个排序字段也成为码字段。
  • 任何记录值只有按其路径查看时,才能显出它的全部意义。
  • 没有一个子女记录值能够脱离双亲记录值而独立存在。

5.层次模型的优缺点:

  • 优点
    • 层次模型的数据结构比较简单清晰
    • 查询效率高,性能优于关系模型,不低于网状模型
    • 层次模型提供了良好的完整性支持
  • 缺点
    • 现实世界中很多联系都是非层次性的,不适合用层次模型表示(多对多层次模型就表示不了)
    • 对插入和删除操作的限制多,应用程序的编写比较复杂
    • 查询子女结点必须通过双亲结点
    • 由于结构严密,层次命令趋于程序化

1.2.6 网状模型

1.网状模型允许多个结点没有双亲结点(层次模型只允许一个:根节点)

2.网状模型允许结点有多个双亲结点(层次模型只允许一个)

3.可以表示一对一、一对多、多对多。

4.网状模型的优缺点:

  • 优点
    • 能够更直接地描述现实世界,表示多种联系的结点关系
    • 具有良好的性能,存取效率较高
  • 缺点
    • 结构比较复杂,随着应用环境扩大,数据库复杂度激增
    • 网状模型的数据定义和建模过程复杂,不易掌握和使用
    • 记录间的联系通过存取路径实现,加重了应用程序负担
    • 缺乏层次模型那样严格的完整性约束条件

1.2.7 关系模型

1.在用户观点下,关系模型中数据的逻辑结构是一张二维表,它由行和列组成。

2.基本概念

  • 关系(Relation):一个关系对应通常说的一张表。
  • 元组(Tuple):表中的一行即为一个元组。
  • 属性(Attribute):表中的一列即为一个属性,给属性命名即属性名。
  • 码(Key):表中的某个属性组,它可以唯一确定一个元组。
    • 比如学号可以唯一确定一行,就可以称为一个码
  • 域(Domain):属性的取值范围。
  • 分量:元组中的一个属性值。
    • 法律就是第三个元组中的有关系名的属性值。
  • 关系模式:对关系的描述
    • 关系名(属性1,属性2,......,属性n)
    • 学生登记表(学号,姓名,年龄,性别,系名,年级)

3.关系模型必须是规范化的,满足一定的规范条件。

  • 最基本的规范条件:关系的每一个分量必须是一个不可分的数据项,不允许 表中有表 \color{red}{表中有表} 表中有表

4.关系模型的操纵和完整性约束

  • 数据操作是集合操作,操作对象和操作结果都是关系。
    • 查询
    • 插入
    • 删除
    • 更新
  • 存取路径对用户隐蔽,用户只要指出干什么,不必详细说明怎么干。
  • 关系的完整性约束条件:
    • 实体完整性
    • 参照完整性
    • 用户定义的完整性

1.3 数据库系统的结构

  • 从 数据库应用开发人员角度 \color{red}{数据库应用开发人员角度} 数据库应用开发人员角度看,数据库系统通常采用三级模式结构,是数据库系统内部的系统结构。

    从 数据库最终用户角度 \color{red}{数据库最终用户角度} 数据库最终用户角度看,数据库系统的结构分为:

    • 单用户结构
    • 主从式结构
    • 分布式结构
    • 客户-服务器
    • 浏览器-应用服务器 / 数据库服务器多层结构等

1.3.1 数据库系统模式的概念

1."型"和"值"的概念

  • 型(Type):对某一类数据的结构和属性的说明。
  • 值(Value):是型的一个具体赋值。

2.模式(Schema)

  • 数据库逻辑结构和特征的描述
  • 是型的描述,不涉及具体值
  • 反映的是数据的结构及其联系
  • 模式是相对稳定的

3.实例(Instance)

  • 模式的一个具体值
  • 反映数据库某一时刻的状态
  • 同一个模式可以有很多实例
  • 实例随数据库中的数据的更新而变动

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

1.模式(Schema)

  • 模式(也称逻辑模式 or 概念模式)
    • 数据库中全体数据的逻辑结构和特征的描述;
    • 所有用户的公共数据视图。
  • 一个数据库只有一个模式。
  • 模式的地位:是数据库系统模式结构的中间层。
    • 与数据的物理存储细节和硬件环境无关;
    • 与具体的应用程序、开发工具及高级程序设计语言无关。

2.外模式(External Schema)

  • 外模式(也称子模式 or 用户模式)
    • 某一用户能够看到的处理的数据的结构描述。
  • 外模式的地位:介于模式与应用之间。
    • 模式与外模式的关系:一对多
    • 外模式与应用的关系:一对多

3.内模式(Internal Schema)

  • 内模式(也称存储模式)
    • 存储在介质上的数据的结构描述,如存储路径、方式等。
  • 一个数据库只有一个内模式。

1.3.3 数据库的二级映像功能与数据独立性

1.E-C映像:外模式/模式映像:便于用户观察和使用。

  • 将外模式映射为概念模式,从而支持实现数据概念视图向外部视图的转换。
  • 保证数据的逻辑独立性。

2.C-I映像:模式/内模式映像:便于计算机存储和处理。

  • 将概念模式映射为内模式,从而支持实现数据概念视图向内部试图的转换。
  • 保证数据的物理独立性。
相关推荐
MiniFlyZt3 小时前
省市区三级联动(后端)
数据库·spring boot
背太阳的牧羊人3 小时前
用于与多个数据库聊天的智能 SQL 代理问答和 RAG 系统(2) —— 从 PDF 文档生成矢量数据库 (VectorDB),然后存储文本的嵌入向量
数据库·人工智能·sql·langchain·pdf
zhangxueyi4 小时前
MySQL之企业面试题:InnoDB存储引擎组成部分、作用
java·数据库·mysql·面试·innodb
代码代码快快显灵4 小时前
Redis 优化秒杀(异步秒杀)
数据库·redis·缓存
极客先躯4 小时前
Redis 安装与配置指南
数据库·redis·数据验证·安装说明·编译和安装·redis 集群配置·查看集群
YaenLi5 小时前
MySQL 安装部署
linux·数据库·mysql
乄北城以北乀5 小时前
一.MySQL程序简介
数据库·mysql
炭烤毛蛋6 小时前
Ubuntu 磁盘修复
linux·数据库·ubuntu
代码代码快快显灵6 小时前
Redis之秒杀活动
数据库·redis·缓存·秒杀活动
一水鉴天7 小时前
为AI聊天工具添加一个知识系统 之27 支持边缘计算设备的资源存储库及管理器
数据库·人工智能·前端框架