02.指标数据库设计
一直没有设计过数据库,最近正好工作上要求设计一个指标数据库,正好变学习边设计。
1.数据库设计流程学习
a)系统的需求分析阶段
b)概念结构设计阶段
c)逻辑结构设计阶段
d)数据库物理设计阶段
e)数据库实施阶段
f)数据库运行和维护阶段
2.流程1:系统的需求分析阶段
进行数据库设计必须了解与分析用户需求(包括数据与处理),需求分析是整个设计过程的基础。
a)需求分析的任务
对现实世界要处理的对象(组织、部门、企业等)进行详细的调查,通过对原系统的了解,收集支持
新系统的基础数据并对其进行处理,在此基础上确定新系统的功能。
调查分析用户的活动:调查组织机构情况,调查各部门的业务活动情况。
收集和分析需求数据,确定系统边界:信息需求;处理需求;安全性;完整性的需求。
编写需求分析说明书
1)系统概况,系统的目标、范围、背景、历史和现状
2)系统的原理和技术,对原系统的改善
3)系统的总体结构与子系统结构说明
4)系统功能说明
5)数据处理概要、工程体制和设计阶段划分
6)系统方案及技术、经济、功能和操作上的可行性。
随系统分析报告要提供下列附件:
1)系统的硬件、软件支持环境的选择及规格要求。(所选择的数据库管理系统、操作系统、汉子平台、计算机型号及其网络环境等)
2)组织机构图、组织之间联系图及各机构功能业务一览图。
3)数据流程图、功能模块图和数据字典等图表。
b) 需求分析的方法
主要方法有自顶向下和自底向上
3. 流程2:概念结构设计阶段
概念结构设计是整个数据库设计的关键,它通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型。
a) 概念设计方法
设计概念结构的ER模型可采用自顶向下、自底向上、逐步扩张和混合策略四种方法。其中最常用的方法是自底向上。自底向上
方法是先定义各局部应用的概念结构ER模型,然后将它们集成,得到全局概念结构ER模型。
概念设计就是将需求分析得到的用户需求抽象为信息结构,即概念数据模型。概念模型作为概念设计的表达工具,为数据库提供
一个说明性结构,是设计数据库逻辑结构的基础。概念模型具备以下特点:
语义表达能力丰富;易于交流和理解;易于修改和扩充;易于向各种数据模型转换。
一个好的ER模式,除了能够准确、全面的反映用户需求之外,还应该达到下列要求:
实体类型的个数应尽量少;
实体类型所含属性个数应尽可能少;
实体类型间的联系应无冗余。
4.流程3:逻辑结构设计阶段
逻辑结构设计是将概念结构转换为某个DBMS所支持的数据模型,并对其进行优化。
概念结构设计阶段得到的ER模型是用户模型,它独立于任何一种数据模型,独立于任何一个具体的
DBMS,是一个与计算机软、硬件的具体性能无关的全局概念模式。为了建立用户所要求的数据库,
需要把上述概念模型转换为某个具体的DBMS所支持的数据模型,即逻辑结构设计。
数据库逻辑设计的任务是将概念结构转换成特定的DBMS所支持的数据模型的过程。关系数据库逻辑设计
的结果是一组关系模式的定义。
初始关系模式设计——>关系模式规范化——>模式评价——是否修改——》以DBMS语法描述——〉物理设计
初始关系模式设计:初始关系模式设计过程就是ER图向关系模式的转换。ER图向关系模式转换的实质是要将ER
图中的实体、属性和联系转换成关系模式。
转换原则:
一个实体转换为一个关系模式,实体的属性就是关系的属性,实体的键就是关系的键。
具有相同主键的关系可以合并。
一个联系转换为一个关系模式,分为以下几种情况。
一个1:1的联系可以转化为一个独立的关系模式,也可以与任意一端对应的关系模式合并。
一个1:n的联系可以转换为一个独立的关系模式,也可以与n端对应的关系模式合并。
一个n:m的联系转换为一个关系。关系的属性由联系本身的属性和与之联系的实体的主键组成,
关系的主键由联系中各实体的主键组合而成(组合键)。
画出关系图:逻辑设计中,ER图转换为关系模式后,应考虑数据的完整性。实体完整性通过确定主键已完成。
用户定义的完整性在实现阶段完成。对于参照完整性,可以用关系图来描述。
5.物理设计阶段
物理设计是为逻辑数据模型选取一个最适合应用环境的物理结构(包括存储结构和存取方法)。
物理设计的内容:
1)存储记录结构的设计
存储记录结构包括记录的组成、数据项的类型和长度,以及逻辑记录到存储记录的映射。
2)访问方法的设计
访问方法是为存储在物理设备(通常指辅存)上的数据提供存储和检索能力的方法。一个访问方法
包括存储结构和检索机构两个部分。存储结构限定了可能访问的路径和存储记录;检索机构定义了
每个应用的访问路径,但不涉及存储结构的设计和设备分配。
3)数据存放位置的设计
为了提高系统性能,应该根据应用情况将数据的易变部分、稳定部分、经常存取部分和存取频率较低部分分开存放。
4)系统配置设计
DBMS产品一般都提供了一些系统配置变量、存储分配参数,供设计人员和DBA对数据库进行物理优化。系统为这些
变量设定了初始值,但是这些值不一定适合每一种应用环境,在物理设计阶段,要根据实际情况重新对这些变量赋值,
以满足新的要求。
物理设计的方法:
1)聚簇
聚簇就是为了提高查询速度,把在一个(或一组)属性上具有相同的元祖集中地存放在一个物理块中。如果存放不下,
可以存放在相邻的物理块中。其中,这个属性称为聚簇码。
2)索引
索引是数据库中一种非常重要的数据存取路径,在存取方法设计中要确定建立何种索引,以及在哪些表和属性上建立索引。通常
情况下,对数据量很大,又需要做频繁查询的表建立索引,并且选择将索引建立在经常用做查询条件的属性或属性组,以及经常用
做连接属性的属性或属性组上。
评价物理结构:
评价物理数据库的方法完全依赖于所选用的DBMS,主要是从定量估算各种方案的存储空间、存取时间和维护代价入手,对估算结果
进行权衡、比较,选择出一个较优的合理的物理结构。如果评价结果满足设计要求,则可进行数据实施。如果该结构不符合用户需求,
则需要修改设计。实际应用中,往往需要经过反复测试才能优化物理设计。
6.数据库实施阶段
数据库实施阶段工作:
1)建立实际数据库结构
2)装入数据
3)应用程序编码与调试
4)数据库试运行(功能测试、性能测试)
5)整理文档
7.数据库运行和维护阶段
数据库应用系统经过运行后即可投入正式运行。在数据库系统运行过程中必须不断的对其进行评价、调整与修改。
1)维护数据库的安全性与完整性
2)监测并改善数据库性能
3)重新组织和构造数据库