数据库系统的设计方法_第1页
数据库系统的设计方法_第2页
数据库系统的设计方法_第3页
数据库系统的设计方法_第4页
数据库系统的设计方法_第5页
已阅读5页,还剩81页未读 继续免费阅读

下载本文档

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

文档简介

数据库系统原理及应用机械工业出版社

2023/2/3第3章

数据库系统的设计方法3.1数据库系统设计概述

3.1.1数据库系统设计的内容

3.1.2数据库系统设计应注意的问题

3.1.3数据库设计的基本方法

3.1.4数据库系统设计的基本步骤3.2系统需求分析

3.2.1需求分析的任务和方法

3.2.2数据字典及其表示3.3数据库逻辑结构的设计

3.3.1概念结构的特点及设计方法

3.3.2

数据抽象与局部视图设计

3.3.3

视图的集成

3.4数据库逻辑结构的设计

3.4.1概念模型向网状模型转换

3.4.2概念模型向关系模型的转换23.1数据库系统设计概述3.1.1数据库系统设计的内容

目标:对于给定的应用环境,建立一个性能良好的、能满足不同用户使用要求的、又能被选定的DBMS所接受的数据库系统模式。按照该模式建立的数据库系统,应当能够完整地反映现实世界中信息及信息之间的联系;能够有效地进行数据存储;能够方便地执行各种数据检索和处理操作;并且有利于进行数据维护和数据控制管理的工作。

内容:数据库的结构特性设计,数据库的行为特性设计,数据库的物理模式设计。将结构特性设计和行为特性设计结合起来,相互参照,同步进行,才能较好地达到设计目标。数据库设计是设计数据库结构特性,为特定应用环境构造出最优的数据模型;数据库应用系统设计是设计数据库的行为结构特性,建立能满足各种用户对数据库应用需求的功能模型。3

1.数据库的结构特性设计

先将现实世界中的事物、事物间的联系用E-R图表示,再将各个分E-R图汇总,得出数据库的概念结构模型,最后将概念结构模型转化为数据库的逻辑结构模型表示。2.数据库的行为特性设计

首先要将现实世界中的数据及应用情况用数据流程图和数据字典表示,并详细描述其中的数据操作要求(即操作对象、方法、频度和实时性要求),进而得出系统的功能模块结构和数据库的子模式。3.数据库的物理模式设计

根据库结构的动态特性(即数据库应用处理要求),在选定的DBMS环境下,把数据库的逻辑结构模型加以物理实现,从而得出数据库的存储模式和存取方法。4加载试验数据程序说明调试和运行企业数据分析用户业务活动分析概念模型设计逻辑模式设计物理模式设计用户子模式设计功能模型事务设计应用程序设计性能考核满意投入运行维护加载数据库不是5考虑到计算机硬件、软件和干件的实际情况三分技术,七分管理,十二分基础数据

(1)数据库系统的硬件条件

根据其数据存储设备、网络和通信设备、计算机性能等硬件条件设计数据库的规模、数据存储方式、分布结构以及数据通讯方式。

(2)DBMS和主语言系统的特点

在数据库设计前,应当选择合适的DBMS和主语言系统,使之适合数据库系统的要求。

(3)数据库用户的技术水平和管理水平

应当让DBA充分参与设计数据库的工作,使之对数据库设计过程的每个细节都了解的比较清楚。。2.使结构特性设计和行为特性设计紧密结合

数据库设计过程是一种自上而下的、逐步逼近设计目标的过程,是结构设计和行为设计分离设计、相互参照、反复探寻的过程。

3.1.2

数据库系统设计应注意的问题6数据库设计的目标数据库设计的核心问题是如何建立一个好的模型。一般而言,这个好的模型应该满足若干准则,这些准则可以分为两类:结构准则和性能准则。前者讨论如何保持数据的特性。后者则主要是考虑资源合理使用、系统使用方便和效率高的数据库。具体而言,数据库设计应该达到以下的目标:1.满足用户的信息需求和处理需求。2.准确模拟现实世界3.具有DBMS的支持4.具有良好的性能7

数据库系统设计应分6个阶段进行,这6个阶段是需求分析、概念结构设计、逻辑结构设计、物理结构设计、数据库实施和数据库运行和维护。

3.1.3数据库系统设计方法8需求分析阶段概念设计阶段逻辑设计阶段物理设计阶段数据库实施阶段数据库运行、维护阶段不满意需求收集和分析设计概念结构设计逻辑结构数据模型优化设计物理结构评价设计,性能预测物理实现试验性运行使用、维护数据库不满意应用需求(数据、处理)转换规则、DBMS要求和优化方法应用要求,DBMS详细特征和限制91.需求分析阶段:准确了解并分析用户对系统的需要和要求,弄清系统要达到的目标和实现的功能。2.概念结构设计阶段:对用户需求进行综合、归纳和抽象,形成一个独立于具体计算机和DBMS的概念模型。3.逻辑结构设计阶段:将概念结构转换为DBMS所支持的数据模型,并将其性能进行优化。4.数据库物理设计阶段:为逻辑数据模型选取一个最适合应用环境的物理结构,包括数据存储结构和存取方法。5.数据库实施阶段:运用DBMS提供的数据操作语言和宿主语言,根据数据库的逻辑设计和物理设计的结果建立数据库、编制与调试应用程序、组织数据入库并进行系统试运行。6.数据库运行和维护阶段:不断地对其结构性能进行评价、调整和修改。

3.1.4数据库设计的基本步骤10

IPO表……输入:输出:处理:Creat……Load……Main()……if……then……end分区1

分区2……概念结构设计逻辑结构设计物理设计设计阶段

设计描述数据处理需求分析

数据字典、全系统中数据项、数据流、数据存储的描述数据流图和判定表(判定树)、数据字典中处理过程的描述

概念模型(E-R图)

数据字典

系统说明书包括:

①新系统要求、方案和概图

②反映新系统信息流的数据流图

某种数据模型关系非关系

系统结构图(模块结构)

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

模块设计

IPO表实施阶段

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

程序编码、编译联结、测试运行、维护

性能监测、转储/恢复数据库重组和重构

新旧系统转换、运行、维护(修正性、适应性、改善性维护)11图3.3数据库的各级模式应用1应用3应用2概念模式概念要求概念要求概念要求应用1应用3应用2逻辑模式内模式外模式3外模式2外模式1综合转换映像映像123.2.1需求分析的任务和方法

任务:调查现实世界要处理的对象;了解原系统的概况和发展;明确用户需求;收集基础数据及其处理方法;确定新系统的功能和边界。需求分析的任务不是确定系统怎样完成它的工作,而是确定系统必须完成哪些工作,也就是通过详细调查现实世界要处理的对象,充分了解原系统工作概况,明确用户的各种需求,然后在此基础上对目标系统提出完整、准确、具体的功能要求。即:

----准确地回答“系统必须做什么?”。

3.2系统需求分析

分析用户的要求,将分析结果用数据流程图和数据字典表示。13需求分析的任务在分析软件需求和书写软件需求规格说明书的过程中,分析员和用户都起着关键的、必不可少的作用。

141.系统需求调查的内容(1)数据库中的信息内容

数据库中需存储哪些数据,包括用户将从数据库中直接获得或间接导出的信息内容和性质。

(2)数据处理内容

用户要完成什么数据处理功能;用户对数据处理响应时间的要求;数据处理的工作方式。

(3)数据安全性和完整性要求

数据的保密措施和存取控制要求;数据自身的或数据间的约束限制。15了解现实世界的组织机构情况

弄清所设计的数据库系统与哪些部门相关,这些部门以及下属各个单位的联系和职责是什么。(2)了解相关部门的业务活动情况

各部门需要输入和使用什么数据;在部门中是如何加工处理这些数据的;各部门需要输出什么信息;输出到什么部门;输出数据的格式是什么。(3)确定新系统的边界

哪些功能现在就由计算机完成;哪些功能将来准备让计算机完成;哪些功能或活动由人工完成。由计算机完成的功能就是新系统应该实现的功能。

2.系统需求的调查步骤16

(1)跟班作业:数据库设计人员亲身参加业务工作。

(2)开调查会:通过与用户座谈的方式来了解业务活动情况及用户需求。

(3)请专人介绍:请业务熟练的专家或用户介绍业务专业知识和业务活动情况,设计人员从中了解并询问相关问题。

(4)询问:对某些调查中的问题,可以找专人询问。

(5)设计调查表请用户填写:数据库设计人员可以提前设计一个合理的、详细的业务活动及数据要求调查表,并将此表发给相关的用户。

(6)查阅现实世界的数据记录:查阅与原系统有关的数据记录,包括帐本、档案或文献等。3.系统需求调查的方法174.系统需求分析方法分析和表达用户的需求的常用方法自顶向下的结构化分析方法(StructuredAnalysis,简称SA方法)SA方法从最上层的系统组织机构入手,采用逐层分解的方式分析系统,并用数据流图和数据字典描述系统。18

数据流图数据流图(DataFlowDiagram,DFD)是描述系统的重要工具,它力图从数据传递和处理的角度以图形的方式表示数据处理系统的工作状况,较好地抓住问题的本质,具有直观、容易理解的优点,便于一组人同时进行审查。19绘制数据流程图的符号数据源点或终点:指本系统之外的人或单位,他们与本系统有信息传递关系。数据存储文件:指通过数据文件、文件夹或账本等存储数据。数据处理:数据处理对进入的数据流进行特定的加工的过程,处理后将产生新的数据流

处理标识处理名称数据流:表示流动着的数据,它可以是一项数据,也可以是一组数据。数据流名称数据流图20数据流图为了很好地表达数据处理过程的数据加工情况,需要采用层次结构的数据流图。

顶层图:将整个系统作为一个数据加工项,着重描述系统与外部实体的联系。明确系统的边界。第0层图:对顶层图中的数据加工进行分解,形成系统较详细的数据流程图第一层图:对顶层图中的数据加工进一步分解,形成系统更详细的数据流程图。21

数据流图以下依然以图书管理系统为例来实现数据库设计的全过程。图书管理系统的工作流程如下:

图书管理员要为每个学生建立学生借阅账户,并给学生发放不同类别的借阅卡,账户内存储学生的个人基本信息和借阅记录信息。持有借阅卡的学生可以通过管理员(作为学生的代理人与系统交互)借阅、归还图书,不同类别的学生可借阅图书的范围、数量和期限不同。学生可通过互联网或图书馆内查询终端查询图书信息和个人借阅情况,以及进行续借图书(系统审核符合续借条件)。22数据流图借阅图书时,先输入学生的借阅卡号,系统验证借阅卡的有效性和学生是否可继续借阅图书,无效则提示其原因,有效则显示学生的基本信息(包括照片),供管理员人工核对。然后输入要借阅的书号,系统查阅图书信息数据库,显示图书的基本信息,供管理员人工核对。最后提交借阅请求,若被系统接受则存储借阅纪录,并修改可借阅图书的数量。23数据流图归还图书时,输入学生借阅卡号和图书号,系统验证是否有此借阅纪录以及是否超期借阅,无则提示,有则显示学生和图书的基本信息供管理员人工审核。如果有超期借阅或丢失情况,先转入过期罚款或图书丢失处理。然后提交还书请求,系统接受后删除借阅纪录,修改可借阅图书的数量。图书管理员定期或不定期对图书信息进行入库、修改、删除等图书信息管理以及注销(不外借),包括图书类别和出版社管理。24顶层数据流图根据之前的描述,建立了图书管理系统的顶层数据流程图。25第0层数据流图然而,顶层数据流图毕竟太抽象了,从这张图上对图书管理系统所能了解到的信息非常有限。下面再对它一步一步地分解,把基本模型细化,描述系统的主要功能。分解时要注意下层数据流必须与上层数据流图保持一致。下一层的数据流图必须有上图的所有输入/输出数据流和外部实体。

把顶层数据流图分解后得到如图所示的图书管理系统第0层图。

26第0层数据流图27第1层数据流图接下来应该对功能级数据流图中描绘的系统主要功能进一步细化。(1)图书管理28第1层数据流图。(2)学生管理29第1层数据流图(3)借阅管理30

D1在校学生D3学生学籍表学生科删除记录a

P1P2

退学通知学生学生退学处理毕业处理

c派遣证c

学生科各系D2成绩记录D4学分记录ab一个数据流程图的实例

31

数据字典是各类数据描述的集合1.数据项:数据项是不可再分的数据单位。2.数据结构:数据结构反映了数据之间的组合关系。3.数据流:据流是数据结构在系统内传输的路径。4.数据存储:数据存储是数据及其结构停留或保存的地方,也是数据流的来源和去向之一。数据存储可以是手工文档、手工凭单或计算机文档。5.处理过程:用判定表或判定树来描述。3.2.2数据字典及其表示32

数据字典(1)数据项。数据项是不可再分的数据单位。对数据项的描述通常包括以下内容:

数据项名称:借书证号别名:借书证编号数据项含义:唯一地标识学生借阅身份的号码定义:借书证号=6{数字字符}6

位置:学生信息、借阅信息33数据字典

(2)数据结构以“图书”为例 “图书”是该系统中的一个核心数据结构:数据结构:图书含义说明:是图书管理子系统的主体数据结构,定义了一本图书的有关信息组成:书号,书名,作者,出版社,类别,单价,状态,其他……

34

数据字典(3)数据流。数据流可以是数据项,也可以是数据结构,表示某一加工处理过程的输入或输出数据。对数据流的描述应该包括以下内容:数据流名称:借书信息别名:BORROW

说明:学生到图书管理员那里完成借阅图书数据流来源:图书管理员数据流去向:图书管理系统平均流量:200次/天高峰流量:280次/天数据组成:借书证号+ISBN+借书时间+应还时间35

数据字典(4)数据存储。数据存储是数据保留或保存的地方,也是数据流的来源和去向之一。它可以是手工文档或手工凭单,也可以是计算机文档。对数据存储的描述通常包括以下内容:

数据存储名:图书信息表别名:BOOK

说明:数据库存放,记录图书的详细信息编号:D2

数据组成:ISBN+书名+作者+价格+复本数+库存量数据量:350本/天存取频率:450本/天

36数据字典

(5)处理过程。处理过程说明某个具体的加工处理工作。

处理过程名:图书管理别名:Bookmanage

说明:图书管理员将图书基本信息录入系统,学生给定查询条件完成图书查找。编号:P1

触发条件:图书管理员送来图书信息,学生给出查询条件。输入:图书情况、图书查询条件输出:图书信息加工逻辑:图书管理的处理算法,此书不赘述。

373.3概念结构的设计概念结构是对现实世界的一种抽象,即对实际的人、物、事和概念进行人为处理,抽取人们关心的共同特性,忽略非本质的细节,并把这些特性用各种概念精确地加以描述。它用E-R图进行描述。38

概念结构的特点和设计方法

1.概念结构的特点(1)概念结构独立于数据库逻辑结构,也独立于支持数据库的DBMS。其主要特点如下:(2)概念模型能够充分反映现实世界:能够满足用户对数据的处理要求。(3)概念模型易于向关系、网状、层次等各种数据模型转换。(4)概念模型易于理解,便于和不熟悉计算机的用户交换意见,使用户易于参与。(5)概念模型易于更改,当现实世界需求改变时,概念结构又可以很容易地作相应调整。39概念结构的特点和设计方法

2.概念结构设计方法概念模型是数据模型的前身,它比数据模型更独立于机器、更抽象,也更加稳定。概念模型设计有4种方法。(1)自顶向下策略(top-downstrategy)

(2)自底向上策略(bottom-upstrategy)

(3)由内向外策略(inside-outstrategy)

(4)混合策略(mixedstrategy)

40概念结构的特点和设计方法

3.概念结构的设计步骤在对数据库的具体设计过程中,通常先采用自顶向下法进行需求分析,得到每一具体的应用需求,然后反过来根据每个子需求,采用自底向上方法分步设计产生每一局部的E-R模型,综合各局部E-R模型,逐层向上回到顶部,最终产生全局E-R模型。

41

概念结构的特点和设计方法需求需求1需求2需求1.1概念模式概念模式概念模式概念模式概念模式1概念模式n全局概念模式需求1.2需求n.1需求n.2…………(应用1)(应用n)图3-6

自顶向下分析需求和自底向上设计概念结构423.3概念结构的设计3.3.2数据抽象与局部视图设计1.三种数据抽象方法(1)分类:定义类概念作为现实世界中对象的类型,这些对象具有某些共同的特性和行为。在E-R模型中,实体集是该抽象。(2)聚集:定义某一类型的组成部分,它抽象了对象内部的类型和“组成部分”的语义。(3)概括:定义类型之间的一种子集联系,它抽象了类型之间的“所属”的语义。2.设计分E-R图概念结构设计是利用抽象机制对需求分析阶段收集到的数据分类、组织(聚集),形成实体集、属性和码,确定实体集之间的联系类型,进而设计分E-R图。43数据抽象和局部视图设计

3.应用举例下面,继续以“学生图书管理系统”为例,利用这些需求分析的结果进行自底向上的概念结构设计。在这个的例子中,图书管理系统的局部应用中主要涉及的实体包括学生、图书、出版社、罚款、登陆用户。那么,这些实体之间的联系又是怎样的呢?44数据抽象和局部视图设计由于一个学生可以借阅多本图书,一本图书可以被多个学生借阅;一个图书由一个出版社出版,一个出版社可以出版很多本图书;一本图书属于一种类别,一种类别可以有多本图书;因此各实体之间的关系见右图。图书属于出版社n1学生图书管理系统的分E-R图学生借阅图书mn图书属于图书类别n1学生登陆登陆用户图书过期/丢失罚款111145数据抽象和局部视图设计这些实体的属性分别为:

学生:{借书证号,姓名,专业,性别,借书数,出生年份,年龄,办证日期}图书表:{ISBN,书名,作者,价格,复本数,库存量}出版社:{出版社名称,出版社地址,出版社电话,负责人,传真,邮编,EMAIL}图书类别:{图书类别名,可借阅天数,过期罚款额}罚款:{借阅者,罚款原因,罚款日期,罚款金额}登陆用户:{登陆ID,登陆密码,用户权限,上一次登陆时间}463.3.3视图的集成1.合并分E-R图,生成初步E-R图

无论采用哪个方法集成视图,在每次集成时都要分三步进行:

(1)解决模式之间的冲突,合并分E-R图冲突的原因?由于各个局部应用所面向的问题是不同的,而且通常是由不同的设计人员进行不同局部的视图设计,所以就会导致各个分E-R图之间必定会存在许多不一致的地方,即产生冲突问题。

47全局视图设计模式间可能会发生如下的3类冲突:

①属性冲突属性域冲突:即属性值的类型、取值范围或取值集合不同。

属性取值单位冲突

例如:“职员”的性别属性,有些部门定义的类型是布尔型,取值0和1;

例如:“职员”的身高,不同部门可能分别用米或厘米来表示,这就会给数据统计造成错误。48全局视图设计②命名冲突同名异义:不同意义的对象在不同的局部应用中具有相同的名字。

异名同义(一义多名):意义相同的对象在不同的局部应用中具有不同的名字。

49全局视图设计③结构冲突

同一对象在不同应用中具有不同的抽象。

同一实体在不同局部视图中所包含的属性不完全相同,或者属性的排列次序不完全相同。

实体之间的联系在不同局部视图中呈现不同的类型。

50全局视图设计(2)修改和重构初步E-R图,使得相互一致

对一些模式进行修改,以便于其它模式相符合。重构是一个可选步骤,可能会对全局模式进行分析和重构,以删除任何冗余和不必要的内容。这一步可以解决上一步发现的冲突。

51(3)合并视图

全局视图设计通过创建单个子视图来创建全局视图。相应的概念在全局模式中只出现一次,并且要确定子视图和全局视图之间的映射关系。

52全局视图设计下面将继续以“学生图书管理系统”为例,介绍分E-R图进行合并的主要过程:第一步:确定各模式之间的对应和冲突:

各模式之间主要存在命名冲突:“登陆用户”实体的{登陆ID}对应“学生”实体的{借书证号},“罚款”实体的{借阅者}对应“学生实体”的{借书证号}。

535.3.3全局视图设计第二步:消除存在的冗余数据和冗余联系:

“学生”实体中的年龄属性可以由出生年份推算出来,属于冗余数据,应该去掉。这样不仅可以节省存储空间,而且当某个学生的出生日期有误,进行修改后,无须修改年龄,减少了产生数据不一致的机会。

54全局视图设计第三步:视图集成:集成后的学生图书管理系统的E-R如图所示:出版社1属于n图

图书管理系统的集成E-R图图书m借还n借书时间应还时间属于n1图书类别过期/丢失罚款11学生登陆登陆用户11553.4数据库逻辑结构的设计3.4.1概念模型向网状模型转换不同型实体集及其联系的转换规则

1)每个实体集转换成一个记录。

2)每个1:n的二元联系转换成一个系,系的方向由1方实体记录指向n方实体记录。

3)每个m:n的二元联系,在转换时要引入一个连结记录,并形成两个系,系的方向由实体记录方指向连结记录方。4)K(>=3)个实体型之间的多元联系,在转换时也引入一个连结记录,并将联系转换成K个实体记录型和连结记录型之间的K个系,系的方向均为实体型指向连结记录。56转换实例

部门部门-职工职工1n部门职工部门-职工系学生选课课程mn学生课程选课学生-选课课程-选课(a)1:n联系的转换实例(b)m:n联系的转换实例57多实体型之间多元联系转换实例部件工程部件-工程-供应供应mnp部件工程供应部件-工程-供应Set1Set2Set3583.4.2概念模型向关系模型的转换实体集的转换规则

一个实体集转换为关系模型中的一个关系,实体的属性就是关系的属性,实体的码就是关系的码,关系的结构是关系模式。2.实体集间联系的转换规则

(1)1:1联系的转换方法

1)将1:1联系转换为一个独立的关系:与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,且每个实体的码均是该关系的候选码。

2)将1:1联系与某一端实体集所对应的关系合并,则需要在被合并关系中增加属性,其新增的属性为联系本身的属性和与联系相关的另一个实体集的码。

59【例3-1】将图中E-R图转换为关系模型。方案1:联系形成的关系独立存在:职工(职工号,姓名,年龄);产品(产品号,产品名,价格);负责(职工号,产品号).方案2:“负责”与“职工”两关系合并:职工(职工号,姓名,年龄,产品号);产品(产品号,产品名,价格);方案3:“负责”与“产品”两关系合并:职工(职工号,姓名,年龄);产品(产品号,产品名,价格,职工号).负责1产品产品号产品名价格1职工职工号姓名年龄60(2)1:n联系的转换方法

一种方法是将联系转换为一个独立的关系,其关系的属性由与该联系相连的各实体集的码以及联系本身的属性组成,而该关系的码为n端实体集的码;另一种方法是在n端实体集中增加新属性,新属性由联系对应的1端实体集的码和联系自身的属性构成,新增属性后原关系的码不变。61【例3-2】将含有1:n联系的E-R图转换为关系模型。方案1:联系形成的关系独立存在。

仓库(仓库号,地点,面积);

产品(产品号,产品名,价格);

仓储(仓库号,产品号,数量).方案2:联系形成的关系与n端对象合并。

仓库(仓库号,地点,面积);

产品(产品号,产品名,价格,仓库号,数量).仓储n产品产品号产品名价格1仓库仓库号地点面积数量62(3)m:n联系的转换方法

在向关系模型转换时,一个m:n联系转换为一个关系。转换方法为:与该联系相连的各实体集的码以及联系本身的属性均转换为关系的属性,新关系的码为两个相连实体码的组合(该码为多属性构成的组合码)。

63【例3-4】将图中含有m:n二元联系的E-R图,转换为关系模型。

转换的关系模型为:学生(学号,姓名,年龄,性别);

课程(课程号,课程名,学时数);

选修(学号,课程号,成绩).学生学号姓名年龄性别课程课程号课程名学时数选修mn成绩64(4)三个或三个以上实体集间的多元联系的转换方法

1)对于一对多的多元联系,转换为关系模型的方法是修改1端实体集对应的关系,即将与联系相关的其他实体集的码和联系自身的属性作为新属性加入到1端实体集中。

2)对于多对多的多元联系,转换为关系模型的方法是新建一个独立的关系,该关系的属性为多元联系相连的各实体的码以及联系本身的属性,码为各实体码的组合。

65【例3-6】将图中含有多实体集间的多对多联系的E-R图转换为关系模型。

供应商(供应商号,供应商名,地址);零件(零件号,零件名,单价);产品(产品号,产品名,型号);供应(供应商号,零件号,产品号,数量).供应商供应商号供应商名地址零件零件号零件名单价产品产品号产品名型号供应nmp数量66逻辑结构的优化应用规范化理论对逻辑设计阶段产生的逻辑模式进行初步优化,以减少乃至消除关系模式中存在的各种异常,改善完整性、一致性和存储效率。规范化过程分为两个步骤:

(1)确定范式级别

(2)实施规范化处理67设计用户子模式在将概念模型转换为逻辑模型后,即生成了整个应用系统的模式后,还应该根据局部应用需求,结合具体DBMS的特点,设计用户的子模式。目前关系数据库管理系统一般都提供了视图概念,支持用户的虚拟视图。可以利用这一功能,设计更符合局部用户需要的用户子模式。

683.5

物理结构设计数据库的物理结构设计是对于给定的逻辑数据模型,选取一个最适合应用环境的物理结构。数据库的物理结构主要是指数据库在物理上的存储结构和存取方法。它依赖于给定的计算机系统。

693.5.1

存取方法的选择数据库物理设计的任务之一就是确定建立哪些存取路径和选择哪些数据存取方法

关系数据库常用的存取方法:索引方法、聚簇方法。1.索引选择索引是加到数据库内部的特殊数据结构,用于加快记录的检索,几乎所有的关系DBMS都提供建立索引的功能。

703.5.1

存取方法的选择选择索引实际上要根据应用要求确定对关系的哪些属性建立索引,哪些属性建立组合索引,哪些索引建立唯一索引等。选择索引方法的基本原则是:(1)如果经常执行插入、删除、修改操作或者记录数较少的关系,应尽量避免建立索引。(2)如果一个属性经常在查询条件中出现,则考虑在这个属性上建立索引;如果一组属性经常在查询条件中出现,则考虑在这组属性上建立组合索引。(3)如果一个属性经常作为最大值和最小值等聚集函数的参数,则考虑在这个属性上建立索引。(4)如果一个属性经常在连接操作的连接条件中出现,则考虑在这个属性上建立索引;

713.5.1

存取方法的选择2.聚簇存取方法的选择

为了提高某个属性或属性组的查询速度,把这个属性或属性组上具有相同值的元组集中存放在连续的物理块上的处理称为聚簇,这个属性或属性组称为聚簇码。一个数据库可以建立多个聚簇,但一个关系只能加入一个聚簇。选择聚簇的存取方法就是确定需要建立多少个聚簇,确定每个聚簇包括哪些关系。

723.5.2

存储结构的确定确定数据的存放位置和存储结构要综合考虑存取时间、存储空间利用率和维护代价3方面的因素。这3方面常常相互矛盾,需要进行权衡,选择一个折衷方案。

1.确定数据的存放位置

2.确定系统配置733.6

数据库实施、运行和维护数据系统设计的根本目的,是为用户提供一个能够实际运行的系统,并保证该系统的稳定和高效。要做到这点,还有两项工作,就是数据库的实施、运行和维护。743.6

数据库实施、运行和维护1.数据库的实施

数据库的实施主要是根据逻辑结构设计和物理结构设计的结果,在计算机系统上建立实际的数据库结构、导入数据并进行程序的调试。它相当于软件工程中的代码编写和程序调试的阶段。用具体的DBMS提供的数据定义语言(DDL),把数据库的逻辑结构设计和物理结构设计的结果转化为程序语句,然后经DBMS编译处理和运行后,实际的数据库便建立起来了。

753.6

数据库实施、运行和维护具体地说,建立数据库结构应包括以下几个方面:(1)数据库模式与子模式,以及数据库空间的描述。(2)数据完整性的描述。(3)数据安全性描述。(4)数据库物理存储参数的描述。763.6

数据库实施、运行和维护

2.数据库的试运行当有部分数据装入数据库以后,就可以进入数据库的试运行阶段,数据库的试运行也称为联合调试。数据库的试运行对于系统设计的性能检测和评价是十分重要的,因为某些DBMS参数的最佳值只有在试运行中才能确定。

773.6

数据库实施、运行和维护3.数据库的运行和维护数据库系统投入正式运行,意味着数据库的设计与开发阶段的基本结束,运行与维护阶段的开始。数据库的运行和维护是个长期的工作,是数据库设计工作的延续和提高。783.6

数据库实施、运行和维护数据库的运行和维护阶段的主要工作有:(1)对数据库性能的监测、分析和改善。(2)数据库的转储和恢复。(3)维持数据库的安全性和完整性。(4)数据库的重组和重构。793.6

数据库实施、运行和维护4.评价物理结构数据库物理设计过程中需要对时间

温馨提示

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

评论

0/150

提交评论