数据库用途

数据管理方式(人工, 文件, 数据库, 使用场景, 怎么用)

  • 人工: 一个程序对应一个数据集, 人工维护映射关系, 数据冗余大, 无结构, 不独立, 能够胜任挥发型计算
    • notion image
      notion image
  • 文件系统: 将文件由人工维护改为通过文件系统统一存取, 数据冗余大, 独立性差, 内部有结构整体无结构, 能胜任持久型计算(例如文件/云/网络流/字节流/文本流/java(反)序列化)
    • notion image
      notion image
  • 数据库: 所有数据交给数据库管理系统代行管理, 与自身任务解耦, 数据冗余小, 独立性强(物理独立性/逻辑独立性, 由二级映像保证), 整体(和内部)结构化, 易扩展, 避免数据之间的不相容和不一致, 能胜任共享型计算
    • notion image

数据库基本概念

数据库DB: 数据库是长期储存在计算机内, 有组织的, 可共享的大量数据的集合.
数据库管理系统DBMS: 位于用户与操作系统之间的一层数据管理软件, 用于科学地组织和存储数据, 高效地获取和维护数据.
DBMS的主要功能: 数据定义, 数据组织存储管理, 数据操纵, 事务管理和运行管理, 数据库建立和维护 安全性保护, 完整性检查, 并发控制, 数据库恢复.
数据库系统DBS的组成: 数据库(原料), 数据库管理系统(核心逻辑集成), 应用程序(消费者), 数据库管理员.
notion image

数据模型

💡
数据库设计, 概念模型, 逻辑模型(关系的基本概念, 表, 元组, 码, 属性都是什么)
组成要素: 数据结构(静态特性, 组成对象内容及其联系), 数据操作(动态特性, 操作集合, 操作规则, 操作定义), 完整性约束条件(数据及其联系的制约和依赖规则, 保证相容, 通用/定制)
  • 概念模型: 现实中客观对象的抽象
    • 关键词: 实体, 属性, 码, 实体型, 实体集, 联系(E-R图)
      notion image
  • 逻辑模型: 计算机系统观点的建模(关系, 网状, 层次, 面向对象, 对象关系, 半结构化)
    • 关系模型: 逻辑结构是一张二维表, 由行(元组)和列(属性)组成
      关键词: 关系(一张表), 元组, 属性, 主码(唯一标识), 域(属性值域), 分量(元组的一个属性), 关系模式(关系名(属性1, 属性2, …))
      关系范式: 形式规范(如1NF: 关系的每一个分量必须是不可分数据项, 不允许表中有表)
      数据操作是集合操作, 对象和结果都是关系
      三个完整性约束: 实体完整性(主码对得上), 参照完整性(外码对得上), 用户自定义完整性
      notion image
  • 物理模型: 在系统内部底层的表示和存取方法

三级模式两层映射

模式: 数据库逻辑结构和特征, 描述型, 不涉及具体值, 稳定
实例: 某一时刻的状态, 具体值, 变化
同一个模式可以有多个实例
notion image
  • 数据库的模式(数据库的中心): 全局逻辑结构, 对应逻辑模型, 是数据库中全体数据的逻辑结构和特征的描述, 是所有用户的公共数据视图, 是数据库系统模式结构的中间层(依赖倒置原则的中心抽象), 一个数据库只有一个模式. 模式包含数据的逻辑结构(名字, 类型, 取值范围等), 数据之间联系和安全性/完整性要求;
  • 数据库的外模式: 局部逻辑结构, 也叫子模式/用户模式, 是用户最终使用的局部数据的逻辑结构和特征, 一般是模式的子集, 对应一个数据视图, 介于模式和应用之间. 一个模式可以对应多个外模式(取不同的子集), 一个外模式可以被多个应用共享, 用户只能看到对应外模式的数据;
  • 数据库的内模式: 全局存储结构, 也叫存储模式, 描述数据物理结构和存储方式. 一个数据库只有一个内模式.
外模式/模式映像和模式/内模式映像实现三个抽象层次的联系和转换, 改动一者时只需要修改映像而不需要修改其他模式或依赖于模式的应用程序(数据的独立性).
外模式/模式映像使得模式改变时只需要修改映像, 不需要修改依赖于外模式的应用程序, 提供了数据的逻辑独立性;
模式/内模式映像则使得存储结构改变时可以修改映像使得模式不变, 外模式和应用程序不受影响, 提供了数据的物理独立性.
💡
二级映像本质上保证了数据库外模式的稳定性, 提供了数据定义/描述/操作的抽象, 简化了应用程序的编制, 维护和修改

系统组成Ch07

看看就行
硬件平台及数据库
软件(数据库管理系统, 支持数据库管理系统的操作系统, 高级语言及编译系统, 应用开发工具, 数据库应用系统)
人员(数据库管理员, 系统分析员, 数据库设计人员, 应用程序员, 最终用户)
Loading...