一直没有设计过数据库,最近正好工作上要求设计一个指标数据库,正好变学习边设计。

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)重新组织和构造数据库