欢迎来到天天文库
浏览记录
ID:62137510
大小:732.50 KB
页数:38页
时间:2021-04-18
《最新数据库原理与应用数据库设计2教学讲义PPT课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、数据库原理与应用数据库设计2学习目标掌握逻辑结构设计的任务和方法(重点+难点)掌握数据库物理设计的任务和方法(重点)理解数据库实施和维护的任务和方法7.4逻辑结构设计逻辑结构设计的任务:概念结构是独立于任何一种数据模型的信息结构。逻辑结构设计的任务就是把概念结构设计得到的基本ER图转换为与DBMS所支持的逻辑数据模型。逻辑结构设计的步骤将概念结构转化为一般的关系模型。将关系模型转换为选定RDBMS所支持的数据模型。对数据模型进行优化。注意:1:1联系可以与任意一端对应的关系模式合并,究竟应该与哪端的关系模式合并需要依应用的具体情况而定,一般应以尽量减少连接操作为目标。例如,如果经常要查询
2、负责某个产品的职工姓名,则将负责联系与职工关系合并更好些。一个1:n联系可以转换为一个独立的关系模式,也可与n端对应的关系模式合并:若转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均为关系的属性,关系的码为n端实体的码;若与n端对应的关系模式合并,则合并后关系的属性是在n端关系中加入1端关系的码和联系本身的属性,合并后关系的码不变。第二种方法可以减少系统中的关系个数,一般情况下更倾向于采用这种方法。如(部门与职工间的)属于联系为1:n联系,将其转换为关系模式有两种方法:转换为一个独立的关系模式:属于(职工号,部门号)与职工关系模式合并:职工(职工号,姓名,年龄,职
3、称,部门号)一个m:n联系转换为一个关系模式:与该联系相连的各实体的码以及联系本身的属性均是关系的属性,各实体码的组合为关系的码。如(仓库与零件间的)库存联系是一个m:n联系,可以将它转换为关系模式:库存(仓库号,零件号,库存量)三个或三个以上实体间的一个多元联系转换为一个关系模式:与该多元联系相连的各实体的码以及联系本身的属性均是关系的属性,各实体码的组合是关系的码。如(供应商、产品与零件间的)供应联系是一个三元联系,可以将它转换为如下关系模式:供应(供应商号,产品号,零件号,供应量)具有相同码的关系模式可以合并。目的是减少系统中的关系个数,合并方法是将其中一个关系模式的全部属性加入到
4、另一关系模式中,然后去掉其中的同义属性。数据模型的优化:数据库逻辑设计的结果不是唯一的,得到初步数据模型后,还应修改和调整数据模型的结构,这就是数据模型的优化。优化通常以规范化理论为指导,方法是:确定数据依赖:按需求分析阶段得到的语义,分别写出每个关系模式内部各属性之间的数据依赖以及不同关系模式属性之间数据依赖。对各关系模式中的数据依赖进行极小化处理,消除冗余联系。确定各关系模式分别属于第几范式。按照需求分析的数据处理要求,分析对于这样的应用环境这些模式是否合适,确定是否要对它们进行合并或分解。并不是规范化程度越高的关系就越优:当一个应用的查询经常涉及到两个或多个关系模式的属性时,系统必
5、须经常地进行联接运算,而联系运算的代价是相当高的。对关系模式进行必要的分解或合并,以提高数据操作的效率和存储空间的利用率。常用分解方法是:水平分解:把关系的元组分为若干子集合,定义每个子集合为一个子关系,以提高系统的效率。根据“80/20原则”,一个大关系中,经常被使用的数据只是关系的20%,将这些数据分解出来形成一个子关系,可以减少查询的数据量。垂直分解:把关系模式R的属性分解为若干子集合,形成若干子关系模式。分解原则是将经常在一起使用的属性形成一个子模式,确保无损连接性和保持函数依赖。设计用户子模式:将概念模型转换为全局逻辑模型后,还应根据局部应用需求,结合具体DBMS特点,设计用户
6、的外模式。使用更符合用户习惯的别名:用View机制在设计用户View时可以重新定义某些属性名,使其与用户习惯一致。对不同级别的用户定义不同的View,以保证系统的安全性。简化用户对系统的使用:若某些局部应用中经常使用某些很复杂的查询,可将这些复杂查询定义为视图。7.5数据库的物理设计数据库物理设计的概念:数据库的物理设计就是为一个给定的逻辑数据模型选取一个最适合应用环境的物理结构。数据库物理设计的步骤确定数据库的物理结构,主要指存取方法和存储结构。对物理结构进行评价,评价的重点是时间和空间效率。数据库物理设计的内容为关系模式选择存取方法。设计各个数据库文件的物理存储结构。关系模式存取方法
7、选择:数据库系统是多用户共享的系统,对同一个关系要建立多条存取路径才能满足多用户的多种应用要求。物理设计的第一个任务就是要确定选择哪些存取方法,即建立哪些存取路径。DBMS常用的存取方法有:索引(主要是B+树索引)存取:最普遍的存取方法,规则是:若一个(或一组)属性经常在查询条件中出现,则考虑在这个(或这组)属性上建立索引(或组合索引)。若一个属性经常作为最大值和最小值等聚集函数的参数,则考虑在这个属性上建立索引。若一个(或一组)属
此文档下载收益归作者所有