欢迎来到天天文库
浏览记录
ID:57016636
大小:110.00 KB
页数:19页
时间:2020-07-26
《数据库物理设计资料课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第六章数据库物理设计6.1.1物理设计的步骤数据库的物理设计通常分为两步:确定数据库的物理结构对物理结构进行评价,评价的重点是时间和空间效率一、确定数据库的物理结构⒈确定数据的存储结构确定数据库存储结构时要综合考虑存取时间、存储空间利用率和维护代价三方面的因素。这三个方面常常是相互矛盾的,例如消除一切冗余数据虽然能够节约存储空间,但往往会导致检索代价的增加,因此必须进行权衡,选择一个折中方案。聚簇就是为了提高查询速度,把在一个(或一组)属性上具有相同值的元组集中地存放在一个物理块中。如果存放不下,可以存放在相邻的物理块中。其中,这个(或这组)属性称为聚簇码。为
2、什么要使用聚簇呢?①使用聚簇以后,聚簇码相同的元组集中在一起了,因而聚簇值不必在每个元组中重复存储,只要在一组中存储一次即可,因此可以节省存储空间。②聚簇功能可以大大提高按聚簇码进行查询的效率。⒉设计数据的存取路径在关系数据库中,选择存取路径主要是指确定如何建立索引。例如,应把哪些域作为次码建立次索引,建立单码索引还是组合索引,建立多少个为合适,是否建立聚集索引等。3.确定数据的存放位置为了提高系统性能,数据应该根据应用情况将易变部分与稳定部分、经常存取部分和存取频率较低部分分开存放。例如,数据库数据备份、日志文件备份等由于只在故障恢复时才使用,而且数据量很大
3、,可以考虑存放在磁带上。将表和索引分别放在不同的磁盘上,在查询时,由于两个磁盘驱动器分别在工作,因而可以保证物理读写速度比较快。⒋确定系统配置DBMS产品一般都提供了一些存储分配参数,供设计人员和DBA对数据库进行物理优化。通常情况下,这些配置变量包括:同时使用数据库的用户数,同时打开的数据库对象数,使用的缓冲区长度、个数,时间片大小、数据库的大小,装填因子,锁的数目等等,这些参数值影响存取时间和存储空间的分配。6.1.2数据存储数据库管理系统一般都提供多种存取方式。常用的存取方法有三类。第一类是索引方法,目前主要是B+树索引方法;第二类是聚簇方法;第三类是H
4、ASH方法。6.1.3文件结构顺序文件组织记录根据“搜索码”的值顺序存储。堆文件组织一条记录可以放在文件中的任何地方,只要该地方有空间存放这条记录。记录是没有顺序的。一般一个关系就使用一个单独文件。散列文件组织在记录的某个属性上计算一个散列函数。散列函数的结果确定记录应放到文件的哪个块中。6.2索引与散列6.2.1索引的概念数据库系统中索引有两种基本的索引类型:顺序索引:基于值的顺序排序。散列索引:基于将值平均分布到若干散列桶中。一个值所属的散列桶是由一个函数决定的,该函数称为散列函数。6.2.2散列(HASH)的概念散列方法的主要思想是根据结点的关键码值来确
5、定其存储地址:以关键码值K为自变量,通过一定的函数关系h(K)(称为散列函数),计算出对应的函数值来,把这个值解释为结点的存储地址,将结点存入到此存储单元中。检索时,用同样的方法计算地址,然后到相应的单元里去取要找的结点。通过散列方法可以对结点进行快速检索。6.3SQL中的索引定义索引是对数据库表中一个或多个列的值进行排序的结构。数据库中的索引是由表中的一列或多列字段值以及相应的指向表中物理标识这些值的数据页的逻辑指针构成的。建立索引参照以下原则:在经常检索的列上创建索引(如经常在where子句中出现得列)。在表的主键、外键上创建索引。在经常用于表间连接的字段
6、上建立索引。一般而言,如下情况的列不考虑在其上创建索引:在查询中几乎不涉及的列。很少有唯一值的列(即包含太多重复值得列,如性别字段)。数据类型为text、ntext或image的列。只有较少行数的表没有必要创建索引。当写的性能比查询更重要时,应少建或不建索引。SQLServer2005中常用的索引类型:聚集索引非聚集索引唯一索引复合索引索引视图全文索引XML索引使用SSMS创建索引第一步:新建索引第二步:设置索引信息6.3SQL中的索引定义使用createindex命令创建索引,它的形式为createindexon7、e>()attributelist是构成索引搜索码的关系属性列表。【例】为sales数据库中的Product表创建一个唯一聚集索引,依据字段ProductID进行排序。USEsalesGOCREATEUNIQUECLUSTEREDINDEXProID_indexONProduct(ProductID)【例】为sales数据库中的Product表创建一个复合索引,依据字段CategoryID和Price进行排序。USEsalesGOCREATEINDEXC_P_indexONProduct(CategoryID,Price)6.4.8、评价物理结构数据库的物理设计过程中需要
7、e>()attributelist是构成索引搜索码的关系属性列表。【例】为sales数据库中的Product表创建一个唯一聚集索引,依据字段ProductID进行排序。USEsalesGOCREATEUNIQUECLUSTEREDINDEXProID_indexONProduct(ProductID)【例】为sales数据库中的Product表创建一个复合索引,依据字段CategoryID和Price进行排序。USEsalesGOCREATEINDEXC_P_indexONProduct(CategoryID,Price)6.4.
8、评价物理结构数据库的物理设计过程中需要
此文档下载收益归作者所有