数据库物理结构设计.ppt

上传人:wuy****n92 文档编号:64355933 上传时间:2022-11-29 格式:PPT 页数:22 大小:303.50KB
返回 下载 相关 举报
数据库物理结构设计.ppt_第1页
第1页 / 共22页
数据库物理结构设计.ppt_第2页
第2页 / 共22页
点击查看更多>>
资源描述

《数据库物理结构设计.ppt》由会员分享,可在线阅读,更多相关《数据库物理结构设计.ppt(22页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、 讲授讲授1学时学时电子教案电子教案 版本版本6.6数据库技术数据库技术 内容概述内容概述教学进程教学进程教学进程教学进程6.1 物理结构设计的内容物理结构设计的内容6.2 选取存取方法选取存取方法6.3 设计存储结构设计存储结构6.4 确定存储位置确定存储位置6.5 选取存储介质选取存储介质6.6 评价物理结构评价物理结构6.7 SQL Server 2005的索引机制的索引机制6.1 物理结构设计的内容n物理结构:指数据库在存储介质上的存取方法、存储结构和存放位置。n物理结构设计:指根据逻辑结构设计的结果,设计逻辑结构的最佳存取方法、存储结构和存放位置以及合理选择存储介质等,从而设计出适合

2、逻辑结构的最佳物理环境(即:存储模式)的过程。n物理结构设计的内容:物理结构设计的内容:选取存取方法、设计存储结构、确定存放位置以及选择存储介质等,因素包括:访问类型、访问时间、插入时间、删除时间和空间开销等。(1)存取方法:指用户存取数据库数据的方法和技术。(2)存储结构:指根据逻辑结构的指标以及DBMS支持的数据类型,所确定的数据项的存储类型和长度以及元组的存储结构等 即:数据文件及其数据项在介质上的具体存储结构。(3)存放位置:指根数据库文件和索引文件等在介质上的具体存储位置。(4)存储介质:指用于存储文件的物理存储设备。包括:磁盘、磁带、光盘、磁盘阵列、磁带库、光盘阵列等。具体包括:介

3、质的容量大小、存取速度与费用等。物理结构设计的方法:(1)选择存取方法。(2)设计存储结构。(3)确定存放位置。(4)选取存储介质。(5)评价物理结构。结论:通过存取方法、存储结构、存放位置以及存储介质的合理设计,最终为逻辑模式设计出满足应用需求的最佳存储模式。6.2 选择存取方法n实现数据库快速访问的最有效方法是使用索引机制。n索引机制是指对于数据库的数据表,根据数据表的查询需要,按照查询数据所对应的关键属性,为数据表建立相应的用于快速检索的索引文件,在执行查询操作时,先在索引文件中找到查询的元组在数据表中位置(地址),然后再根据这个地址,去数据表中直接取出元组数据。这种先查询索引文件,再从

4、数据表中取值的检索机制称为索引机制。n索引表是指把关键属性(例如:主键)的值按照升序(或者降序)排序后,与它对应的元组在数据表中的位置所组成的对照表。即:索引表是索引属性值与元组地址的对照表。n索引文件用于存储索引表的文件。n温馨提示:索引文件需要配合数据文件一起使用,才能进行快速检索,因此索引文件单独使用没有意义。6.2 选择存取方法n例如:一本字典是由字典正文和字典索引连部分组成。字典索引相当于索引表,字典正文相当于数据表。字典索引和字典正文一起配合使用实现查询字的用法。具体查询过程如下:(1)首先在字典索引中,查询字在字典中的页码。(2)然后按照页码,字典正文中找到该字的用法。n思考题1

5、:对于任意数据表,使用索引机制进行检索与不使用索引机制而直接对数据表进行检索相比,是否前者一定比后者快?n思考题2:在什么情况下,使用索引机制可以进行快速检索?n常用的存取方法括:平衡树(Balance Tree,B树)、聚簇(Cluster)和散列索引。其中:B树索引是最常用的存取方法,具体操作见数据结构。聚簇索引(了解)n聚簇:指根据索引关键属性的值直接找到数据的物理存储位置,从而达到快速检索数据的目的,提高检索的效率。n聚簇索引:指在按照关键属性对数据表建立索引时,同时按照索引顺序对数据表的相应元组的物理存储位置进行排序,使索引的顺序与数据表中相应元组的物理顺序始终保持一致的索引过程。n

6、聚簇索引与非聚簇索引的区别:1)聚簇索引的顺序与数据的物理存储顺序始终保持一致;非聚簇索引的顺序与数据物理排列顺序无关。2)聚簇索引B+树的叶节点就是数据节点;非聚簇索引B+树的叶节点仍然是索引节点,其指针指向对应的元组或者数据块。3)一个数据表只能有一个聚簇索引;非聚簇索引则可有多个。4)建立和维护非聚簇索引的开销相对较小,而聚簇索引的开销则相当大。5)聚簇索引适合于不需要更新或者更新比较少的应用,非聚簇索引则适合于更新比较多的应用。6)聚簇索引灵活性较差不建议经常适应,非聚簇索引性则相对比较灵活。聚簇索引(了解)使用聚簇索引注意:(1)经常进行连接操作的数据表建议使用聚簇索引。(2)对于属

7、性组的利用率很高或者重复率很高的关系建议使用聚簇索引。(3)需要经常进行插入、删除或修改等更新操作,不建议使用聚簇索引。(4)对于更新操作远多于连接操作的关系不建议使用聚簇索引。温馨提示:聚簇索引虽然可以提高某些应用的性能,但是会改变数据的物理存储位置,而且会导致数据表的原有索引无效,同时维护费用很大,因此需要谨慎使用。6.3 设计存储结构n存储结构设计的内容:存储的关系模式;关系模式的数据项;数据项的类型,宽度,是否主键,是否外键,是否索引键等。n【例例6.8】:如果关系R(R1,R6,R7,R20),包含20个属性,但是前6个属性的利用率非常高,而其它属性的利用率非常低,则存储时可以按照R

8、(R1,R6),S(R7,R20)两个关系进行存储(即:垂直分割),并通过逻辑模式/存储模式映像作相应的调整。n思考题:如果关系R(R1,R6,R7,R20),包含60万个元组,但是前6万个元组的利用率非常高,而其它元组的利用率非常低,则应该如何设计存储结构。温馨提示:建立两个同结构关系(即:水平分割)。6.4 确定存储位置nDBMSDBMS提供了数据库、索引文件、聚日志文件、备份文件等文件的默认文件提供了数据库、索引文件、聚日志文件、备份文件等文件的默认文件目录结构及其存储路径。为提高系统性能,需要进一步设计存放。目录结构及其存储路径。为提高系统性能,需要进一步设计存放。例如:例如:SQL

9、2005SQL 2005的数据库,可以设置数据库和日志文件的存储路径等。的数据库,可以设置数据库和日志文件的存储路径等。n存储位置设计的基本原则:存储位置设计的基本原则:1 1)同一类文件存放在同一个目录。)同一类文件存放在同一个目录。2 2)易变部分与稳定部分应该分开存放。)易变部分与稳定部分应该分开存放。3 3)存取频率高的部分和低的部分应该分别存放到快速和慢速设备。)存取频率高的部分和低的部分应该分别存放到快速和慢速设备。例如:对于多磁盘计算机系统,为了提高系统性能,可以采用如下方案:例如:对于多磁盘计算机系统,为了提高系统性能,可以采用如下方案:方案方案1 1:把数据表和索引文件放在不

10、同的磁盘上,使多磁盘并行工作。:把数据表和索引文件放在不同的磁盘上,使多磁盘并行工作。方案方案2 2:把大数据表分别放在不同的磁盘上,提高数据的存取速度。:把大数据表分别放在不同的磁盘上,提高数据的存取速度。方案方案3 3:把日志文件和数据库分别放在不同磁盘上,使多磁盘并行工作。:把日志文件和数据库分别放在不同磁盘上,使多磁盘并行工作。方案方案4 4:把数据库放在高速磁盘;把备份(即后备副本)放在磁带。:把数据库放在高速磁盘;把备份(即后备副本)放在磁带。例如:例例如:例6.86.8的的R(RR(R1 1,R R6 6)存入高速磁盘,存入高速磁盘,S(RS(R7 7,R R2020)存入光盘。

11、存入光盘。4 4)根据应用系统的文件类型和应用需求,统一设计文件目录结构。统一考虑)根据应用系统的文件类型和应用需求,统一设计文件目录结构。统一考虑存取时间、存储空间、维护费用等,对数据文件进行合里安排。存取时间、存储空间、维护费用等,对数据文件进行合里安排。6.6 评价物理结构n对设计的多种物理结构,通过评价,选择最佳的物理结构。n评价物理结构:包括评价内容、评价指标和评价方法。n评价内容:存取方法选取的正确性、存储结构设计的合理性、文件存放位置的规范性、存储介质选取的标准性。n评价指标:存储空间的利用率、存取数据的速度和维护费用等。n评价方法:根据物理结构的评价内容,统计存储空间的利用率、

12、数据的存取速度和维护费用指标n结论:通过对比各项指标,选择适合应用的合理的最佳物理结构。6.7 SQL Server 2005的索引机制建立索引修改索引删除索引1 建立索引n格式:格式:CREATE UNIQUE CLUSTER INDEX CREATE UNIQUE CLUSTER INDEX ON ON(,)n功能:对指定的数据表,按照指定的属性列以升序或者降序建立索引。功能:对指定的数据表,按照指定的属性列以升序或者降序建立索引。n说明:说明:1 1):索引的名称。索引名必须符合标识符的规则。:索引的名称。索引名必须符合标识符的规则。2 2):索引的基本表名称。:索引的基本表名称。3 3

13、)索引可以建立在该表的一列或多列上,各列名之间用逗号分隔)索引可以建立在该表的一列或多列上,各列名之间用逗号分隔4 4)指索引值的排列次序,升序:指索引值的排列次序,升序:ASCASC,降序:,降序:DESCDESC。缺省值:。缺省值:ASCASC。5 5)UNIQUEUNIQUE:索引的每一:索引的每一个索引值,只对应唯一的记录。即:唯一索引。6 6)CLUSTERCLUSTER:建立聚簇索引。对数据表建立聚簇索引后,表中数据也需要按:建立聚簇索引。对数据表建立聚簇索引后,表中数据也需要按指定的聚簇属性值的升序或降序存放。亦即:聚簇索引的索引项顺序与表指定的聚簇属性值的升序或降序存放。亦即:

14、聚簇索引的索引项顺序与表中记录的物理顺序一致。中记录的物理顺序一致。7 7)索引的维护由)索引的维护由DBMSDBMS自动完成。自动完成。8 8)索引的使用由)索引的使用由DBMSDBMS自动选择是否使用索引以及使用哪些索引。自动选择是否使用索引以及使用哪些索引。【例6.10】nStudentTestDBStudentTestDB中,给中,给StudentStudent,CourseCourse,StudentCourseStudentCourse建立索建立索引。引。(1 1)StudentStudent表按学号升序建唯一索引表按学号升序建唯一索引(2 2)CourseCourse表按课程号升

15、序建唯一索引表按课程号升序建唯一索引(3 3)StudentCourseStudentCourse表按学号升序和课程号降序建唯一索引。表按学号升序和课程号降序建唯一索引。nSQL Server 2005 SQL Server 2005 语句:语句:CREATE UNIQUE INDEXStudentSNo ON Student(SNo)CREATE UNIQUE INDEXCourseCNo ON Course(CNo)CREATE UNIQUE INDEXSCSNoCNo ON StudentCourse(SNo ASC,CNo DESC)n温馨提示:已经包含重复值的属性列,不能建立UNIQ

16、UE索引。对于建立UNIQUE索引的属性列,插入新记录时DBMS会自动检查新记录在该列上是否取了重复值。相当于给属性列增加UNIQUE约束。【例6.11】n在在StudentStudent表的表的SNameSName(姓名)列上建立一个聚簇索引,而且(姓名)列上建立一个聚簇索引,而且StudentStudent表中的记录将按照表中的记录将按照SNameSName值的升序存放。值的升序存放。SQL Server SQL Server 20052005语句如下:语句如下:nCREATE CLUSTERED INDEX StudentSName ON Student(SName)n温馨提示:在一个数

17、据表上最多只能建立一个聚簇索引。温馨提示:在一个数据表上最多只能建立一个聚簇索引。6.7.2 修改索引n格式:格式:ALTER INDEX ALTER INDEX|ALL|ALL ON ON REBUILD|DISABLE REBUILD|DISABLEn功能:修改现有的数据表索引或者视图索引。功能:修改现有的数据表索引或者视图索引。n说明:说明:(1 1):修改索引的名称。:修改索引的名称。(2 2)ALLALL指定与表或视图相关联的所有索引。指定与表或视图相关联的所有索引。(3 3):修改索引的基本表名称。:修改索引的基本表名称。(4 4)REBUILDREBUILD:重新生成索引。:重新

18、生成索引。(5 5)DISABLEDISABLE:禁用索引。任何索引均可被禁用。:禁用索引。任何索引均可被禁用。【例【例6.17】重新生成索引。重新生成索引。EmployeeEmployee中重新生成单个索引。中重新生成单个索引。nSQL Server 2005SQL Server 2005语句:语句:USE AdventureWorksALTER INDEX PK_Employee_EmployeeID ON HumanResources.Employee REBUILD【例例6.18】重新生成表的所有索引。使用重新生成表的所有索引。使用ALLALL关键字,重新生成关键字,重新生成与表相关联

19、的所有索引。与表相关联的所有索引。nSQL Server 2005SQL Server 2005语句:语句:USE AdventureWorks;ALTER INDEX ALL ON Production.Product REBUILD n【例例6.19】禁用索引。禁用禁用索引。禁用EmployeeEmployee的非聚集索引的非聚集索引IX_Employee_ManagerIDIX_Employee_ManagerID。nSQL Server 2005SQL Server 2005语句:语句:USE AdventureWorks ALTER INDEX IX_Employee_Manager

20、ID ON HumanResources.Employee DISABLE【例例6.20】启用索引。启用启用索引。启用EmployeeEmployee的非聚集索引的非聚集索引IX_Employee_ManagerIDIX_Employee_ManagerID。nSQL Server 2005SQL Server 2005语句:语句:USE AdventureWorks ALTER INDEX IX_Employee_ManagerID ON HumanResources.Employee REBUILD3 删除索引n格式:DROP INDEX.n功能:从当前数据库中删除索引。n说明:(1)用指

21、定要删除索引的名称。(2)用指定要删除索引的基本表名称。n温馨提示:删除索引时,系统会从数据字典中删去有关该索引的描述。【例例6.21】删除删除StudentStudent的的SNameSName列上的聚簇索引列上的聚簇索引StudentSNameStudentSName。n SQL Server 2005SQL Server 2005语句:语句:DROP INDEX Student.StudentSNamen【例例6.22】删除删除ProductVendorProductVendor的索引的索引IX_ProductVendor_VendorIDIX_ProductVendor_VendorI

22、D。n SQL Server 2005SQL Server 2005语句:语句:USE AdventureWorksDROP INDEX IX_ProductVendor_VendorID ON Purchasing.ProductVendor【例例6.23】删除多个索引。删除单个事务中的两个索引。删除多个索引。删除单个事务中的两个索引。nSQL Server 2005SQL Server 2005语句:语句:USE AdventureWorksDROP INDEX IX_PurchaseOrderHeader_EmployeeID ON Purchasing.PurchaseOrderHea

23、der,IX_VendorAddress_AddressID ON Purchasing.VendorAddress6.8小结n本章从选择存取方法、设计存储结构、确定存放位置、选取存储介质和评价物理结构五个方面详细介绍了物理结构设计的基本概念、基本内容和基本方法,其中重点介绍索引机制(特别是B+树)及其用法,最后利用SQL Servedr 2005提供的索引机制,详细介绍了数据库索引的建立方法、修改方法和删除方法。n主要知识点如下:主要知识点如下:(1 1)物理结构设计的基本概念、基本内容和基本方法。)物理结构设计的基本概念、基本内容和基本方法。(2 2)索引机制(特别是)索引机制(特别是B+

24、B+树)及其用法。树)及其用法。(3 3)常用的存取方法常用的存取方法。(4 4)逻辑模式的存储结构设计逻辑模式的存储结构设计。(5 5)存储位置设计的基本原则。)存储位置设计的基本原则。(6 6)常用的存储介质及其选取原则。)常用的存储介质及其选取原则。(7 7)物理结构的评价方法。)物理结构的评价方法。(8 8)索引的建立方法、修改方法)索引的建立方法、修改方法和删除方法。习题1 1什么是什么是物理结构设计?简述物理结构设计的主要内容。物理结构设计?简述物理结构设计的主要内容。2 2简述简述物理结构设计的方法步骤物理结构设计的方法步骤。3 3什么是索引机制、索引表、索引文件?简述索引机制的

25、作用。什么是索引机制、索引表、索引文件?简述索引机制的作用。1111什么是聚簇索引,简述聚簇索引与非聚簇索引的区别。什么是聚簇索引,简述聚簇索引与非聚簇索引的区别。1212简述聚簇索引的作用及其应用范围。简述聚簇索引的作用及其应用范围。2222利用利用StudentTestDB.MDFStudentTestDB.MDF,分别对三表建立默认所引、唯一,分别对三表建立默认所引、唯一索引和聚簇索引,具体要求自定。索引和聚簇索引,具体要求自定。2424利用利用StudentTestDB.MDFStudentTestDB.MDF,分别对第,分别对第2222题建立的索引进行修题建立的索引进行修改、禁用和启用操作,具体要求自定。改、禁用和启用操作,具体要求自定。2626利用利用StudentTestDB.MDFStudentTestDB.MDF,分别删除第,分别删除第2222题建立的索引。题建立的索引。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 大学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁