文章目录
一、数据库的设计
1. 基本概念
数据库设计是指对一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使其能够有效存储数据并满足用户的需求。
因此数据库设计的任务是能够设计出适合应用场景的高效的数据库,通常从一下几个方面去进行评估:
- 完备性:能够表示应用领域所需的全部信息,能够满足数据存储、处理的需求
- 一致性:信息一致而没有语义冲突或值冲突
- 优化:设计出来的数据库应该规范化、高效率、易于操作
- 易维护:容易改动、扩充性好,同时不影响数据库的完备性与一致性,也不影响数据库性能
2. 常用设计方法
- 新奥尔良法:奥尔良设计方法是分阶段设计:需求分析、概念设计、逻辑设计、物理设计
- 信息建模法:是概念设计阶段的主要方法,一般使用E-R图设计
- 第三范式法:逻辑设计阶段方法,根据关系数据库的几大范式理论进行设计
- 面向对象法:基于对象的理念,以对象为中心、以类和继承为构造机制设计系统
- 数据流法:数据流法是一种结构化分析法,通过分析情景设计物理模型数据流图;而后导出逻辑模型数据流图;然后再设计新逻辑系统,建立人机接口;最后确定最优方案
3. 数据库设计的基本步骤
- 数据库运行和维护
- 数据库实施
- 物理结构设计
- 逻辑结构设计
- 概念结构设计
- 需求分析
二、需求分析阶段
需求分析阶段是充分了解用户的需求,并分析对于当前应用场景所必须的功能及要求
1. 分析内容
- 信息要求:确定用户需要的信息内容
- 处理要求:确定使用要求,如数据库系统响应时间及处理类型等
- 安全要求:访问权限、使用规则等
2. 数据字典
数据字典是指对数据的数据项、数据结构、数据流、数据存储、处理逻辑等进行定义和描述,其目的是对数据流程图中的各个元素做出详细的说明,使用数据字典为简单的建模项目。
数据字典最重要的作用是作为分析阶段的工具
- 数据项:数据项是不可再分的数据单位,是数据单位的详细描述
数据项描述={数据项名,数据项含义说明,别名,数据类型,长度,取值范围,取值含义,与其他数据项的逻辑关系}
- 数据结构:反映数据之间的组合关系。一个数据结构可以由若干个数据项组成,也可以由若干个数据结构组成,或由若干个数据项和数据结构混合组成。
数据结构描述={数据结构名,含义说明,组成:{数据项或数据结构}}
- 数据流:数据结构在系统内传输的路径
数据流描述={数据流名,说明,数据流来源,数据流去向,组成:{数据结构},平均流量,高峰期流量}
- 数据存储:数据流图中数据块的存储特性说明
数据存储描述={数据存储名,说明,编号,流入的数据流,流出的数据流,组成:{数据结构},数据量,存取方式}
- 处理过程:输入与输出,或数据的变化过程
处理过程描述={处理过程名,说明,输入:{数据流},输出:{数据流},处理:{简要说明}}
三、概念结构设计阶段
概念结构设计师对应用对象精确地抽象、概括而形成的独立于计算机系统的企业信息模型,在这个阶段使用的最多的工具是 E-R 图(实体-联系图(Entity Relationship Diagram))
1. 特点
- 能够真实反映现实世界,能够满足用户对数据的要求
- 易于交流与理解
- 易于修改与扩充
- 易于向关系、网状、层次等数据模型转换
2. 设计方法
- 自顶向下:先定整体框架,再细化局部
- 自底向上:先设计局部,后串联整体
- 逐步扩张:先设计核心,后向外扩充
- 混合策略:多种方法结合
四、逻辑结构设计阶段
逻辑结构设计是将抽象的概念模型转化为与选用的数据库管理系统产品所支持的数据模型相符的逻辑模型,同时逻辑结构设计也是物理结构设计的基础
1. 设计步骤
- 将概念结构转换为关系、网状、层次模型
- 将转换的关系、网状、层次模型向数据库管理系统支持的数据模型转换
- 对数据模型进行功能评价与性能评价,并进行优化
五、物理结构设计阶段
物理结构设计师逻辑模型在计算机中的具体实现方案,是根据具体计算机系统的特点,为确定的数据模型确定合理的存储结构和存取方法
1. 选择存取方法
- 索引方法:为经常使用到的某个属性或属性组建立索引,可以提高查找的效率
- 聚簇存取方法:聚簇把某个属性或属性组上具有想通知的元组集中存放在连续物理块,同样也可以提高查询速度
- HASH 存取方法:使用散列算法,变换为固定长度的输出,该输出值即为散列值
2. 确定数据库存储结构
- 确定数据存放位置:通常将数据分为稳定数据和不稳定数据,对其分开存放
- 确定系统配置:数据库系统会给部分变量赋以默认值,当默认值不能满足某些应用场景时,需要重新赋值以改善系统性能
六、实施与维护阶段
- 数据载入与应用程序的调试
- 数据库的试运行
- 数据库的运行和维护