而今

导航

第九章 数据库设计

9.1 数据库设计概述

    定义: 数据库设计是指利用现有的数据库管理系统,针对具体的应用对象构建合适的数据模式,建立数据库及其应用系统并使之能有效地收集,存储,操作和管理数据,满足企业中各类用户的应用要求.

  概念:对一个给定的应用的环境,构造(设计)优化的数据库逻辑模式和物理结构,并据此建立数据库及其应用系统,使之能够有效地存储和管理数据,满足各种用户的应用需求.

   本质:将数据库与现实世界进行密切的,协调一致的结合的过程

 

  9.1.1 数据库设计的特点

    1.三分技术,七分管理,十二分基础数据

    2.综合性

    3.结构(数据)设计和行为(处理)设计相结合

9.2 数据库设计的基本步骤

  1.需求分析阶段

    用到的工具: 数据字典 数据流图

  2.概念结构设计阶段

    e-r图,系统说明书

  3.逻辑结构设计阶段

    将e-r图转化为关系表,系统结构表

  4.物理结构设计阶段

    存储安排,方法选择,存取路径建立,ipo表

  5.数据库实施阶段

    编写模式,装入数据,数据库试运行

  6.数据库运行和维护阶段

    性能检测,转储/恢复,数据库重组和重构

9.3 需求分析的步骤

  1.分析用户活动,产生业务流程图

  2.确定系统功能,分析数据处理流程,产生数据流图

    数据流图,Data Flow Fiagranm(DFD)

      数据流图是从数据传递和加工的角度,以图形的方式来表达系统的逻辑功能

        4个基本成分:

          数据流(用箭头表示),

          加工或处理(用圆圈表示),

          文件或数据存储(用双线段表示),

          外部实体(数据流的源点和终点,用方框表示)

  3.分析系统数据,产生数据字典

    数据字典通常包括数据项,数据结构,数据流,数据存储和处理过程等进行详细的说明

  4.撰写需求说明书

9.4 概念结构设计

  9.4.1 概念结构用e-r模型表示

    e-r模型是实体-联系方法来描述现实世界的概念模型  

  9.4.2 e-r图的3个基本组成和3要素

    (1)3个基本组成

      用矩形框表示实体,并在其中写入实体名

      用椭圆内写实体属性名

      菱形内些联系名

    (2)3个基本要素

      实体型

      实体的属性

      实体型之间的联系    

  9.4.3两个实体型之间的联系类型

    1. 一对一(1:1)

    2.一对多(1:n)

    3.多对多(m:n)

  9.4.4概念结构设计的方法和步骤

    1.自顶向下方法

    2.自底向上方法

    3.逐步扩张方法

    4.混合策略方法

  9.4.5概念结构设计的步骤

    1.抽象数据并设计局部视图

    2.将局部视图合并成全局的概念结构

  9.4.6数据抽象的方法

    1.分类(classification)

    2.概括(generalization)

    3.聚合(aggregation)

  9.4.7 局部e-r图设计步骤

    1.选择局部应用

    2.逐一设计分E-R图

  9.4.8 全局e-r图设计

    1.确定公共实体类型

    2.局部e-r模型的合并

    3.消除冲突

      有哪些冲突?

        1.属性冲突

        2.命名冲突

        3.结构冲突

  9.4.9 优化全局e-r图

    1.实体的合并

    2.冗余属性的消除

    3.冗余联系的消除      

9.5 逻辑结构设计

  9.5.1 设计逻辑结构三步骤  

    (1)将概念结构转化为一般关系,网状,层次模型

    (2)将转化来的关系,网状,层次模型向特定DBMS支持下的数据模型转换

    (3)对数据模型进行优化

  9.5.2 e-r图向关系模型的转换的步骤

    1.实体转换

    2.联系的转换

    例:将如下的e-r图转化为关系模型

    方法1:

      实体转换:学生(学号,姓名),校园卡(卡号,余额)

      联系(办卡)转换:办卡(学号,卡号,办卡日期)

    方法2:(与任意一端对应的关系模型合并):

      学生(学号,姓名,卡号,办卡日期)或者校园卡(卡号,余额,学号,办卡日期)

`    总结:

      方法1是将e-r图转换为3张关系表

      方法2是将e-r图转化成了1张关系表

    例子:将操作员和读者的e-r图转化为关系模型

 

       方法1:

        实体转化:

        读者(读者编号,读者姓名,性别,年龄,注册日期,电话号码)

        操作员(操作员编号,用户名,密码,性别,年龄,身份证号)

        联系(管理)转化:管理(读者编号,操作员编号)  

     方法2(联系与读者实体一端合并):

        操作员(操作员编号,用户名,密码,性别,年龄,身份证号)

        读者(读者编号,读者姓名,性别,性别,年龄,注册日期,带你换号码,操作员编号)

    例子:m:n联系转换

    方法:

      实体转化:

         读者(读者编号,读者姓名,性别,年龄,电话号码,注册日期)

         图书(图书编号,图书名称,图书类别,作者,出版社,图书价格)

      联系(借阅)转化:

        图书借阅(读者编号,图书编号,借阅日期,归还日期,罚款)  

  9.5.3 数据模型的优化

    1. 增加冗余属性

    2.增加派生属性

    3.重建关系

    4.分割关系

9.6 数据库的物理设计

  (1)确定数据库的物理结构.这在关系型数据库中主要指数据的存储方法和存储结构

  (2)对所设计的物理结构进行评价,评价的重点是系统的时间和空间效率

  通常关系数据库物理设计的内容主要包括以下两个方面

    1.确定数据的存取方法

    2.确定数据库的物理存储结构

  9.6.1 确定数据库的物理结构

     1.关系模式存取方法的设计

      (1)索引存取方法的设计

      (2)聚簇存取方法的设计

      (3)hash存取方法的设计

     2.数据存储位置的设计

      为了提高系统性能,设计人员应该根据应用情况的易变部分,稳定部分,经常存取部分和存取频率较低部分分开存放.

     3.系统配置的设计

  9.6.2 评价物理结构

    1.查询和响应时间

    2.更新事务的开销

    3.生成报告的开销

    4.主存储空间的开销

    5.辅助存储空间的开销

9.7 数据库的实施

  9.7.1 数据的载入和应用程序的调试

  9.7.2 数据库的试运行

    当一小部分数据输入数据库后,就可以开始对数据库系统进行来拟合调试,这称为数据库的试运行.

    需要强调两点:

      (1)由于数据入库工作量实在太大,费时,费力,所以应分期分批地组织数据入库.先输入小批量数据共调试用,等检测合格后再大批量输入数据,逐步增加数据量,逐步完成运行评价

      (2)在数据试运行阶段,系统还不稳定,所以硬件,软件故障随时都可能发生.因此,相关人员应该先调试郧西dbms的恢复功能,做好数据库的转储和恢复工作

9.8 数据库的运行与维护

  1.数据库的备份和恢复

  2.数据库的安全性,完整性控制

  3.监督,分析和改进数据库的性能

  4.数据库的重组织和重构造

 

  

  

posted on 2019-11-20 15:15  而今  阅读(256)  评论(0)    收藏  举报