系统架构设计师—案例分析—数据库篇—关系型数据库设计
文章目录
- 设计过程
- 用户需求分析
- 自底向上
- 自顶向下
- 重点
- 概念结构设计
- 分类(Classification)
- 聚集(Aggregation)
- 概括(Generalization)
- 步骤
- 冲突的类型
- 逻辑结构设计
- 物理结构设计
- 数据库实施阶段
- 数据库运行与维护阶段
设计过程
阶段 | 主要任务 |
---|---|
用户需求分析 | 分析用户活动、收集数据确定系统边界。 |
概念结构设计 | 将应用对象抽象成不依赖于DBMS的数据模型,即概念模型、描述概念模型的较理想工具是E-R图 |
逻辑结构设计 | 将抽象的概念模型转化为与选用的DBMS产品所支持的数据模型相符合的逻辑模型,即关系模式。 |
物理结构设计 | 是逻辑模型在计算机中的具体实现方案。 |
数据库实施阶段 | 根据前两个阶段的结果建立数据库,编制与调试应用程序,组织数据入库,并进行试运行。 |
数据库运行和维护阶段 | 数据应用系统经过试运行即可投入运行,但该阶段需要不断地对系统进行评价、调整与修改。 |
用户需求分析
自底向上
自顶向下
重点
调查组织结构情况、调查各部门的业务活动情况、协助用户明确对新系统的各种要求、确定新系统的边界,以此获得用户对系统的如下要求。
- 信息要求:保存的信息、完整性要求等。
- 处理要求:操作功能、处理的频度、响应时间等。
- 系统要求:安全性要求、使用方式要求、可扩充性要求。
概念结构设计
对现实事物抽象认识的3种方法:
分类(Classification)
对现实世界的事物,按照其具有的共同特征和行为,定义一种类型。
在某一类型中,个体是类型的一个成员或实例,即“is member of”。
聚集(Aggregation)
定义某一类型所具有的属性。
如学生类型具有学号、姓名、性别、班级的共同属性,每一个学生都是这一类型中的个体,通过在这些属性上的不同取值来区分。各个属性是所属类型的一个成分,即“is part of”。
概括(Generalization)
由一种已知类型定义新的类型。
通常把已知类型称为超类(Super class),新定义的类型称为子类(Sub class),即“is subset of”。
步骤
- 需求分析
- 局部E-R模式设计
- 确定局部视图范围
- 识别实体及其标识
- 确定实体间的联系
- 分配实体及联系的属性
- 全局E-R模式设计
- 消除冲突
冲突的类型
- 属性冲突
- 结构冲突
- 命名冲突
逻辑结构设计
- 将抽象的概念模型转换为与选用的DBMS产品所支持的数据模型相符合的逻辑模型,即关系模式。
- 主要工作步骤包括:
- 确定数据模型
- 关系型
- 非关系型
- 网状型
- 将E-R图转换称为指定的数据模型
- 确定完整性约束
- 实体完整性
- 参照完整性
- 用户定义的完整性
- 确定用户视图
- 确定数据模型
物理结构设计
主要工作步骤包括确定数据分布、存储结构和访问方式。
数据库实施阶段
在计算机上建立起实际的数据库结构,数据加载(或称装入),进行试运行和评价的过程,叫做数据库实施(或称实现)。
数据库运行与维护阶段
数据库一旦投入运行,就标志着数据库维护工作的开始。数据库维护工作的主要内容包括对数据库性能的监测和改善、故障恢复、数据库的重组和重构。