数据库技术及应用-数据库的设计_第1页
数据库技术及应用-数据库的设计_第2页
数据库技术及应用-数据库的设计_第3页
数据库技术及应用-数据库的设计_第4页
数据库技术及应用-数据库的设计_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数据库的设计数据库系统的设计包括:数据库的设计数据库应用系统设计数据库的设计是指设计数据库的结构特性,即为特定的应用环境构造最优的数据模型;数据库应用系统设计是指设计出满足各种用户对数据库应用需求的应用程序。用户通过应用程序来访问和操作数据库。数据库设计概述通常来说,一个成功的管理信息系统,包括:50%的业务50%的软件:由25%的数据库和25%的程序组成。设计数据库时既要考虑数据库的框架和数据结构,又要考虑应用程序存取数据库和处理数据。因此,最佳设计不可能一蹴而就,只能是一个反复探寻的过程。大体上可以将数据库设计分为6个阶段:需求分析阶段概念结构设计阶段逻辑结构设计阶段物理结构设计阶段数据库实施阶段数据库运行和维护阶段数据库设计的过程用户需求收集和分析设计概念模型设计逻辑模型数据模型优化设计物理模型评价设计、性能预测物理实现实验性运行使用、维护数据库不满意不满意不满意需求分析阶段概念设计阶段逻辑设计阶段物理设计阶段数据库实施阶段数据库结构设计程序结构设计数据库运行、维护1.需求分析阶段是数据库设计的第一步,也是最困难、最耗时的一步。任务:准确了解并分析用户对系统的要求,确定所要开发的应用系统的目标,重点调查用户的信息要求、处理要求、安全性与完整性要求结果:产生用户和设计者都能接受的需求说明书,做为下一步数据库概念结构设计的基础。主要包括数据流图、数据宇典、各种说明性表格、统计输出表、系统功能结构图等。系统需求说明书是以后设计、开发、测试和验收等的重要依据。需求分析主要是考虑“做什么”,而不是考虑“怎么做”。需求分析任务确认系统的设计范围,调查信息需求,收集数据。分析需求调查得到的资料,明确计算机应当处理和能够处理的范围,确定新系统应具备的功能。综合各种信息包含的数据,各种数据间的关系,数据的类型、取值范围和流向。建立需求说明文档、数据字典、数据流图。将需求调查文档化,文档既要为用户所理解,又要方便数据库的概念结构设计。需求分析的基本步骤1.分析用户活动通过与用户座谈、跟班工作,或者向专家咨询,查阅规章制度、票据等各种资料,或者采用问卷调查等方式,充分了解用户活动。目的是了解企业的业务状况、信息流程、经营方式、处理要求以及组织机构等。搞清楚用户的处理流程以后,画出“用户活动图”。需求分析的基本步骤2.确定系统范围需求分析的任务不只是为了设计数据库,而是为了设计整个数据库应用系统。通过对现行的手工系统或者已经有的计算机系统进行调查研究,确定即将建立的数据库系统的信息要求和处理要求,确定哪些由计算机系统处理,哪些由人工处理。根据画出的“用户活动图”,确定系统的边界。需求分析的基本步骤3.分析用户活动所涉及的数据数据流图是描述企业活动及来往于各处理活动之间数据流动的有力工具,被广泛应用于信息系统开发设计中,常作为最后验收系统的依据。数据流图有四种基本成分:

①数据流动――用箭头表示

②加工――用圆表示

③文件――用直线段表示

④源点和终点――用方框表示数据流图中反映的是数据流而不是控制流,这是与一般的程序流程图的最大区别。一般地说,画数据流图应遵循“由外向内,自顶而下”的原则进行。4.分析系统数据数据流图只表示出系统由哪几部分组成和各部分之间的关系,并没有说明各个成分的含义,数据字典对每个成分都给出确切定义。数据流图和数据字典结合在一起,加上必要的说明才能构成“系统说明书”。数据字典产生于数据流图,是对数据流图中的四个成分描述的产物。数据字典是对用户信息要求的整理和描述。信息需求即定义未来信息系统用到的所有信息,包括用户将向数据库中输入什么信息,从数据库中要得到什么信息,各类信息的内容和结构,信息之间的联系等。需求分析的基本步骤2.概念结构设计阶段将需求分析得到的用户需求抽象为信息结构即概念模型的过程就是概念结构设计。概念结构设计目标是对需求说明书提供的所有数据和处理要求进行抽象与综合处理,按一定的方法构造反映用户环境的数据及其相互联系的概念模型。这种概念数据模型与DBMS无关,是面向现实世界的数据模型,用户容易理解。人们提出了多种概念结构设计的表达工具,其中最常用、最有名的是E-R模型。设计概念结构通常有四类方法:自顶向下自底向上逐步扩张混合策略实际应用中这些策略井没有严格的限定,根据具体业务的特点选择。在概念结构设计阶段,首先要对需求分析阶段收集到的数据进行分类、组织,形成实体、实体的属性,标识实体的码,确定实体之间的联系类型(1:1,1:n,m:n),针对各个局部应用设计局部视图(如分E-R图)。合并局部视图,通过消除各局部视图的属性冲突、命名冲突、结构冲突、数据冗余等,最终集成为一个全局视图(如整体的E-R图)。概念模型是数据库逻辑设计的依据,是整个数据库设计的关键。3.逻辑结构设计阶段任务:将概念结构进一步转化为某一DBMS支持的数据模型。包括数据库模式和外模式。首先需要将概念结构转化为一般的关系、网状、层次模型;然后将转化后的关系、网状、层次模型向特定DBMS支持下的数据模型转换,转换的主要依据是所选用的DBMS的功能及限制,没有通用规则。对于关系模型来说,这种转换通常都比较简单;最后对数据模型进行优化。逻辑结构设计阶段可能还需要设计用户子模式(外模式),即用户可直接访问的数据模式。同一系统中,不同用户可以有不同的外模式。定义用户外模式时应该更注重考虑用户的习惯与方便,主要包括以下三个方面:(1)使用更符合用户习惯的别名。(2)针对不同级别的用户定义不同的外模式,以满足系统对安全性的要求。(3)如果某些局部应用中经常要使用某些很复杂的查询,为了方便用户,可以将这些复杂查询定义为外模式(视图),以简化用户对系统的使用。逻辑结构设计的步骤1.确定数据模型总体E-R图的概念模型是独立于任何一种数据模型的信息结构。首先要确定转换成哪种数据模型。目前比较流行的数据模型是关系模型。2.将E-R图转换成为指定的数据模型关系数据库逻辑设计的任务就是采取一定的策略,按照若干准则将概念模型转换为关系数据库系统所接受的一组关系模式,并利用规范化的理论和方法对这组关系模式进行处理,使之满足具体应用。3.确定完整性约束对关系进行实体完整性、参照完整性、用户定义的完整性约束;4.确定用户视图把概念模型转换为数据模型后,还应根据局部应用的要求,结合具体的DBMS,设计用户视图。视图是本身不存储数据的虚拟表。概念模型转换为一般的关系模型E-R图是由实体、属性和联系三要素构成的,而关系模型中只有惟一的结构——关系模式。1.实体向关系模式的转换将E-R图中的实体逐一转换成为一个关系模式,实体名对应关系模式的名称,实体的属性转换成关系模式的属性,实体标识符就是关系的码。2.实体向关系模式的转换1)1:1联系的E-R图到关系模式的转换2)1:n联系的E-R图到关系模式的转换3)m:n联系的E-R图到关系模式的转换概念模型转换为一般的关系模型211)1:1联系的E-R图到关系模式的转换法一:联系单独对应一关系模式(表)由联系属性、参与联系的各实体集的主码属性构成关系模式主码可选参与联系的实体集的任一方的主码BJ(班级编号,院系,专业名,人数)BZ(学号,姓名)SY(学号,班级编号)22法二:联系不单独对应一关系模式联系的属性及一方的主码加入另一方实体集对应的关系模式中。BJ(班级编号,院系,专业名,人数)BZ(学号,姓名,班级编号)或者BJ(班级编号,院系,专业名,人数,学号)BZ(学号,姓名)232)1:n联系的E-R图到关系模式的转换法一:联系单独对应一关系模式由联系的属性、参与联系的各实体集的主码属性构成关系模式n端的主码作为该关系模式的主码。BJ(班级编号,院系,专业名,人数)XS(学号,姓名,院系,性别,出生时间)SY(学号,班级编号)班级学生属于出生时间性别院系学号姓名人数专业名院系班级编号24法(二)联系不单独对应一个关系模式将联系的属性及1端的主码加入n端实体集对应的关系模式中,主码仍为n端的主码。BJ(班级编号,院系,专业名,人数)XS(学号,姓名,院系,性别,出生时间,班级编号)253)m:n联系的E-R图到关系模式的转换m:n的联系单独对应一关系模式该关系模式包括联系的属性、参与联系的各实体集的主码属性关系模式的主码由各实体集的主码属性共同组成。课程号课程名m学生选修课程n学分学号姓名性别年龄成绩4.物理结构设计阶段物理结构设计阶段的任务是把逻辑结构设计阶段得到的逻辑数据库在物理上加以实现。其主要内容是根据DBMS提供的各种手段,设计数据的存储形式和存取路径,如文件结构、索引的设计等,即设计数据库的内模式或存储模式。由于不同的数据库产品所提供的物理环境、存取方法和存储结构各不相同,供设计人员使用的设计变量、参数范围也各不相同,所以物理结构设计没有通用的设计方法可以遵循。主要考虑问题:物理数据库结构应能满足事务在数据库上运行时响应时间少、存储空间利用率高和事务吞吐率大的要求。5.数据库实施阶段完成数据库物理设计之后,设计人员就要用DBMS提供的数据定义语言和其他实用程序将数据库逻辑设计和物理设计结果严格地描述出来,成为DBMS可以接受的源代码,再经过调试产生目标模式,然后就可以组织数据入库了,这就是数据库实施阶段。(1)用DBMS提供的数据定义语言(DDL)描述数据库结构。(2)组织数据入库。

对于数据量不大的小型系统,可以用人工方式完成数据入库;对于大型系统,应该设计一个数据输入子系统由计算机辅助数据入库工作。(3)编制与调试应用程序。数据库应用程序的设计应该与数据库设计并行进行。因此,在部分数据录入到数据库中之后,就可以开始对应用程序进行调试了。(4)数据库试运行:功能测试;性能测试数据库实施主要包括以下工作:6.数据库运行和维护阶段数据库试运行结果符合设计目标后,数据库就可以投入正式运行了。数据库投入运行标志着开发任务的基本完成和维护工作的开始。由于应用环境在不断变化,数据库运行过程中物理存储会不断变化,因此,对数据库设计进行评价、调整、修改等维护工作是一个长期的任务,也是设计工作的继续和提高。在数据库运行阶段,对数据库经常性的维护工作主要是由DBA完成的。工作主要包括:(1)故障维护:定期对数据库和日志文件进行备份(2)数据库的安全性、完整性控制:根据用户的实际需要授予不同的操作权限。(3)数据库性能的监督、分析和改进。(4)数据库的重组织和重构造。数据库运行一段时间后,由于记录的不断增、删、改,会使数据库的物理存储变坏,从而降低数据库存储空间的利用率和数据的存取效率,使数据库的性能下降,因此需要对数据库进行重新组织。数据库的重组织不会改变原设计的数据逻辑结构和物理结构,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论