2023年7月27日发(作者:)
数据库设计之物理结构设计数据库在物理设备上的存储结构与存取⽅法称为数据库的物理结构,它依赖于选定的数据库管理系统。为⼀个给定的逻辑数据模型选取⼀个最适合应⽤要求的物理结构的过程,就是数据库的物理设计。⼀、数据库的物理设计1. 确定数据库的物理结构,在关系数据库中主要指存取⽅法和存储结构。2. 对物理结构进⾏评价,评价的重点是时间和空间效率。
如果评价结构满⾜原设计要求,则可进⼊到物理实施阶段,否则,就需要重新设计或修改物理结构,有时甚⾄要返回逻辑设计阶段修改数据模型。⼆、数据库物理设计的内容和⽅法不同的数据库产品所提供的物理环境、存取⽅法和存储结构有很⼤差别,能供设计⼈员使⽤的设计变量、参数范围也很不相同,隐藏没有通⽤的物理设计⽅法可遵循,只能给出⼀般的设计内容和原则。
数据库上运⾏的各种事务响应时间⼩、存储空间利⽤率⾼、事务吞吐率⼤,⾸先对要进⾏的事务进⾏详细分析,获得选择物理数据库设计所需要的参数;其次,要充分了解所⽤关系数据库管理系统的内部特征,特别是系统所提供的存取⽅法和存取结构。
以下是确定关系的存取⽅法的依据:
1. 对于数据库查询事务,需要得到:查询的关系,查询条件所涉及的属性,连接条件所涉及的属性,查询的投影属性。
2. 对于数据更新事务,需要得到:被更新的关系,每个关系上的更新操作条件所涉及的属性,修改操作要改变的属性值。
3. 除此之外,还需要制定每个事务在各关系上运⾏的频率和性能要求。
通常关系数据库物理设计的内容主要包括为关系模式选择存取⽅法,以及设计关系、索引等数据库⽂件的物理存储结构。三、关系模式存取⽅法选择数据库系统是多⽤户共享的系统,对同⼀个关系要简历多条存取路径才能满⾜多⽤户的多种应⽤要求。物理结构设计的任务之⼀是根据关系数据库管理系统⽀持的存取⽅法确定选择哪些存取⽅法。
存取⽅法是快速存取数据库中数据的技术。数据库管理系统⼀般提供索引⽅法和聚簇⽅法。1. B+树索引和hash索引1. B+树索引存取⽅法的选择
所谓选择索引存取⽅法,实际上就是根据应⽤要求确定对关系的那些属性列建⽴索引、哪些属性列建⽴组合索引、哪些索引要设计唯⼀索引。
1)如果⼀个(或⼀组)属性经常在查询条件中出现,则考虑在这个(或这组)属性上建⽴索引(或组合索引)。
2)如果⼀个属性经常作为最⼤值和最⼩值等聚集函数的参数,则考虑在这个属性上建⽴索引。
3)如果⼀个(或⼀组)属性经常在连接操作的连接条件中出现,则考虑在这个(或这组)属性上建⽴索引。2. hash索引存取⽅法的选择
选择hash存取⽅法的规则:如果⼀个关系的属性主要出现在等值连接条件中或主要出现在等值⽐较选择条件中,⽽且满⾜下列两个条件之⼀,则此关系可以选择hash存取⽅法。
1)⼀个关系的⼤⼩可预知,⽽且不变。
2)关系的⼤⼩动态改变,但数据库管理系统提供了动态hash存取⽅法。2. 聚簇存取⽅法的选择为了提⾼某个属性(或属性组)的查询速度,把这个或这些属性上具有相同值的元组集中存放在连续的物理块中称为聚簇。该属性(或属性组)称为聚簇码。
聚簇功能可以⼤⼤提⾼按聚簇码进⾏查询的效率。
聚簇功能不单适⽤于单个关系,也适⽤于经常进⾏连接操作的多个关系。即把多个连接关系的元组按连接属性值聚集存放。这就相当于把多个关系按“预连接”的形式存放,从⽽⼤⼤提⾼连接操作的效率。
⼀个数据库可以连接多个聚簇,⼀个关系只能加⼊⼀个聚簇。这样聚簇存取⽅法,即确定要建⽴多少个聚簇,每个聚簇中包括哪些关系。⾸先设计候选聚簇,⼀般来说:1. 对经常在⼀起进⾏连接操作的关系可以建⽴聚簇。2. 如果⼀个关系的⼀组属性经常出现在相等⽐较条件中,则该单个关系可建⽴聚簇。3. 如果⼀个关系的⼀个(或⼀组)属性上的值重复率很⾼,则此单个关系可建⽴聚簇。即对应每个聚簇码值的平均元组数不能太少,太少则聚簇的效果不明显。然后检查候选聚簇中的关系,取消其中不必要的关系1. 从聚簇中删除经常进⾏全表扫描的关系。2. 从聚簇中删除更新操作远多于连接操作的关系。3. 不同的聚簇中可能包含相同的关系,⼀个关系可以在某⼀个聚簇中,但不能同时加⼊多个聚簇。要从这多个聚簇⽅案(包括不建⽴聚簇)中选择⼀个较优的,即在这个聚簇上运⾏各种事务的总代价最⼩。聚簇只能提⾼某些应⽤的性能,⽽且能建⽴与维护聚簇的开销是相当⼤的。对已有关系简历聚簇将导致关系中元组移动其物理存储位置,并使此关系上原来建⽴的所有索引⽆效,必须重建。当⼀个元组的聚簇码值改变时,该元组的存储位置也要做相应的移动,聚簇码值要相对稳定,以减少修改聚簇码值所引起的维护开销。
当通过聚簇码进⾏访问或连接是该关系的主要应⽤,与聚簇码⽆关的其他访问很少或者是西药的,这时可以使⽤聚簇。尤其当SQL语句中包含有与聚簇码有关的ORDER BY、GROUP BY、UNION、DISTINCT等⼦句或短语时,使⽤聚簇特别有利,可以省去对结果集的排序操作。三、确定数据库的存储结构确定数据库物理结构主要指确定数据的存放位置和存储结构,包括确定关系、索引、聚簇、⽇志、备份等的存储安排和存储结构,确定系统配置等。
确定数据的存放位置和存储结构要综合考虑存取时间、存储空间利⽤率和维护代价三⽅⾯的因素。这三个⽅⾯常常是相互⽭盾的,因此需要进⾏权衡选择⼀个折中⽅案。1. 确定数据的存放位置为了提⾼系统性能,应根据应⽤情况将数据的易变部分与稳定部分、经常存取部分和存取频率较低部分分开存放。2. 确定系统配置关系数据库管理系统产品⼀般都提供了⼀些系统配置变量和存储分配参数,供设计⼈员和数据库管理员对数据库进⾏物理优化。四、评价物理结构数据库物理设计过程中需要对时间效、空间效率、维护代价和各种⽤户要求进⾏权衡,其结果可以产⽣多种⽅案。评价物理数据库的⽅法完全依赖于所选⽤的关系数据库管理系统,主要是从定量估算各种⽅案的存储空间、存取时间和维护代价⼊⼿,对估算结果进⾏权衡、⽐较,选择出⼀个较优的、合理的物理结构。
发布者:admin,转转请注明出处:http://www.yc00.com/xiaochengxu/1690434134a349261.html
评论列表(0条)