目录

系统架构设计师案例分析数据库篇关系型数据库设计

系统架构设计师—案例分析—数据库篇—关系型数据库设计

设计过程

阶段主要任务
用户需求分析分析用户活动、收集数据确定系统边界。
概念结构设计将应用对象抽象成不依赖于DBMS的数据模型,即概念模型、描述概念模型的较理想工具是E-R图
逻辑结构设计将抽象的概念模型转化为与选用的DBMS产品所支持的数据模型相符合的逻辑模型,即关系模式。
物理结构设计是逻辑模型在计算机中的具体实现方案。
数据库实施阶段根据前两个阶段的结果建立数据库,编制与调试应用程序,组织数据入库,并进行试运行。
数据库运行和维护阶段数据应用系统经过试运行即可投入运行,但该阶段需要不断地对系统进行评价、调整与修改。

用户需求分析

自底向上

https://i-blog.csdnimg.cn/direct/aee131939e884b7880050b11ae48baec.png

自顶向下

https://i-blog.csdnimg.cn/direct/a4b00436a47f4a0db0e1483e9f62cc9f.png

重点

调查组织结构情况、调查各部门的业务活动情况、协助用户明确对新系统的各种要求、确定新系统的边界,以此获得用户对系统的如下要求。

  1. 信息要求:保存的信息、完整性要求等。
  2. 处理要求:操作功能、处理的频度、响应时间等。
  3. 系统要求:安全性要求、使用方式要求、可扩充性要求。

概念结构设计

对现实事物抽象认识的3种方法:

分类(Classification)

对现实世界的事物,按照其具有的共同特征和行为,定义一种类型。

在某一类型中,个体是类型的一个成员或实例,即“is member of”。

聚集(Aggregation)

定义某一类型所具有的属性。

如学生类型具有学号、姓名、性别、班级的共同属性,每一个学生都是这一类型中的个体,通过在这些属性上的不同取值来区分。各个属性是所属类型的一个成分,即“is part of”。

概括(Generalization)

由一种已知类型定义新的类型。

通常把已知类型称为超类(Super class),新定义的类型称为子类(Sub class),即“is subset of”。

步骤

  • 需求分析
  • 局部E-R模式设计
    • 确定局部视图范围
    • 识别实体及其标识
    • 确定实体间的联系
    • 分配实体及联系的属性
  • 全局E-R模式设计
    • 消除冲突

冲突的类型

  1. 属性冲突
  2. 结构冲突
  3. 命名冲突

逻辑结构设计

  • 将抽象的概念模型转换为与选用的DBMS产品所支持的数据模型相符合的逻辑模型,即关系模式。
  • 主要工作步骤包括:
    • 确定数据模型
      • 关系型
      • 非关系型
      • 网状型
    • 将E-R图转换称为指定的数据模型
    • 确定完整性约束
      • 实体完整性
      • 参照完整性
      • 用户定义的完整性
    • 确定用户视图

物理结构设计

主要工作步骤包括确定数据分布、存储结构和访问方式。

数据库实施阶段

在计算机上建立起实际的数据库结构,数据加载(或称装入),进行试运行和评价的过程,叫做数据库实施(或称实现)。

数据库运行与维护阶段

数据库一旦投入运行,就标志着数据库维护工作的开始。数据库维护工作的主要内容包括对数据库性能的监测和改善、故障恢复、数据库的重组和重构。