2022年数据库的存储结构终版 .pdf

上传人:Q****o 文档编号:25942205 上传时间:2022-07-14 格式:PDF 页数:15 大小:466.64KB
返回 下载 相关 举报
2022年数据库的存储结构终版 .pdf_第1页
第1页 / 共15页
2022年数据库的存储结构终版 .pdf_第2页
第2页 / 共15页
点击查看更多>>
资源描述

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

1、第五章数据库的存储结构在 SQL 标准中,数据库按三级模式构建,它们是:视图(子模式 ) 、基本表( 模式) 、存放数据的操作系统文件(存储模式 ) 。这一章我们重点讨论:“ DBMS 如何把基本表、索引等数据存储到磁盘文件中,以及如何提高查询速度等问题” ,学习这些知识的目的是:更好地设计你的数据库及配置你的数据库参数,使系统效率更高。5.1 数据库的物理存储介质一个数据库最终要存储到计算机的存储设备中。因此,我们首先介绍一下数据库系统所涉及到的计算机存储设备。5.1.1 存储介质层次一个数据库在运行过程中,涉及多种存储设备。我们按存储器中数据被DBMS 使用的顺序,把存储器分为三级。内存作

2、为一级存储器,存放DBMS 当前正在使用或正要使用的数据库数据;硬磁盘作为二级存储器,存放整个数据库,这些数据可能随时被DBMS 调入内存;磁盘、磁带、光盘等作为三级存储器,存放数据库的备份,当磁盘中的数据库遭到破坏时,用数据库的备份来恢复。如图所示:内存5.1.2 内存内存中存放系统正在使用或正要使用的指令 和数据 。内存由操作系统来管理。操作系统为数据库在内存中开辟一块区域,用来存放数据库数据。如图所示:DBMS 磁盘中的数据库备份介质中的数据库DBMS 数据缓存区CPU CPU 高速缓存(Cahe)内存数据库数据名师资料总结 - - -精品资料欢迎下载 - - - - - - - - -

3、 - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 15 页 - - - - - - - - - 数据库系统所关心的内存技术指标主要是:1、读写速度, 2、存储容量5.1.3 硬磁盘一、硬盘的内部结构与技术指标1、内部结构硬盘又称温切斯特盘(Winchester) ,它是将存储体 (盘片)与驱动器全部密封在一个无尘的封闭体中,形成一个头盘组合件(HDA ) ,与外界环境隔绝,避免了灰尘的污染。如图所示磁道磁头扇区(扇段或盘块)柱面盘片 :一个硬盘由一组两面涂有磁粉的盘片 组成。磁道 :为了在盘片上存储信息,必须把盘片分成若干个同心圆,然后在其上存储信

4、息我们把这些同心圆称为磁道。扇区(扇段或盘块) :为了读取信息方便,我们用扇形把磁道等分成若干段,我们称它们为扇段(扇区或盘块)。磁盘上的所有扇段(不论扇段的长短)都存储相同容量的信息,盘块大小与操作系统有关,一般是512KB 。盘块是 OS 寻址的最小单位,既OS 向磁盘读写数据的最小单位。柱面 :我们把由所有盘面上相同磁道所够成的哪一部分存储空间,称为一个柱面。磁盘容量 :盘片总数 2每个盘面的磁道数磁道的盘块数每个盘块的字节数在磁盘上定位数据:操作系统通过(柱面号,磁头号,盘块号)三个参数来定位磁盘上的数据。 OS 对整个盘的盘块进行统一编址,编址的方法是:假如磁盘有20 个盘面,每面上

5、有200 个磁道。每个磁道上有17 个扇段。柱面编号:由内向外依此编为0、1、2 199。磁道编号:磁道编号按柱面号顺序进行编号。0 柱面 的 20 个盘面上的磁道从上到下编为: 0、 1、2、 、19,1 柱面 的 20 个盘面上的磁道从上到下编为:20、21、 、39,依此类推。盘块编号: 盘块编号按磁道号顺序编写。0 号磁道 上的 17 个扇段依此编为0、1 2、 、16,1 号磁道 上的 17 个扇段编为17、18、 、33,依此类推。2、硬盘的主要技术指标容量 :存取时间 :数据传输速度 :可靠性 :读写控制器名师资料总结 - - -精品资料欢迎下载 - - - - - - - -

6、- - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 15 页 - - - - - - - - - 二、磁盘冗余阵列(RAID )目前, 数据库中的数据量越来越大,数据的安全性要求越来越高。用单块磁盘存储数据库数据已不满足要求。1987 年 Patterson,Gibson 和 Katz 在加洲大学伯克利分校发表文章,首先提出了“磁盘阵列”概念。独立冗余磁盘阵列最初叫做廉价冗余磁盘阵列(Redundant Array of Inexpensive Disks ) ,它是由多个类型、容量、接口,甚至品牌一致的小容量、独立的硬盘组成的阵列,而阵列综合的性

7、能可以超过单一昂贵大容量硬盘(SLED)的性能。由于是对多个磁盘并行操作,所以 RAID 磁盘子系统与单一磁盘相比它的输入输出性能得到了提高。服务器会把RAID 阵列看成一个单一的存储单元,并对几个磁盘同时访问,所以提高了输入输出的速率。RAID 技术主要包含RAID 0RAID 7 等数个规范,它们的侧重点各不相同,常见的规范有如下几种:1、RAID 0 :RAID 0 连续以位或字节为单位分割数据,并行读/写于多个磁盘上,因此具有很高的数据传输率,但它没有数据冗余,因此并不能算是真正的RAID 结构。 RAID 0 只是单纯地提高性能, 并没有为数据的可靠性 提供保证, 而且其中的一个磁盘

8、失效将影响到所有数据。因此, RAID 0 不能应用于数据安全性要求高的场合。2、RAID 1:它是通过磁盘数据镜像实现数据冗余,在成对的独立磁盘上产生互为备份的数据。 当原始数据繁忙时,可直接从镜像拷贝中读取数据,因此 RAID 1 可以提高读取性能。RAID 1 是磁盘阵列中单位成本最高的,但提供了很高的数据安全性和可用性。当一个磁盘失效时,系统可以自动切换到镜像磁盘上读写,而不需要重组失效的数据。1010001101011010物理盘 A 10100011阵列控制器物理盘 B 01011010 1010001101011010物理盘 A 1010001101011010 阵列控制器物理盘

9、 B 1010001101011010 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 15 页 - - - - - - - - - 3、RAID 5 :3、RAID 0+1 这种模式其实是RAID 0 和 RAID 1 的组合,它至少需要四块盘。先由两块盘够成RAID 0阵列,再把两个RAID 0 阵列构成 RAID 1 阵列。优点是:既可提高数据的可靠性,又可适当提高读写速度。1010001101011010物理盘 A 10100011阵列控制器物理盘 B 01011

10、010 物理盘 C 10100011物理盘 D 01011010 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 15 页 - - - - - - - - - 5.1.3 第三级存储器一、磁带与磁带库磁带是所有存储媒体中单位存储信息成本最低、容量最大、 标准化程度最高的常用存储介质之一。 它互换性好、 易于保存, 近年来, 由于采用了具有高纠错能力的编码技术和即写即读的通道技术,大大提高了磁带存储的可靠性和读写速度。根据读写磁带的工作原理,磁带机可以分为六种规格。其中两种

11、采用螺旋扫描读写方式的是面向工作组级的DAT(4mm)磁带机和面向部门级的8mm 磁带机,另外四种则是选用数据流存储技术设计的设备,它们分别是采用单磁头读写方式、磁带宽度为1/4 英寸、面向低端应用的Travan 和 DC 系列, 以及采用多磁头读写方式、磁带宽度均为1/2 英寸、 面向高端应用的 DLT 和 IBM 的 3480/3490/3590 系列等。磁带库是基于磁带的备份系统,它能够提供同样的基本自动备份和数据恢复功能,但同时具有更先进的技术特点。它的存储容量可达到数百PB,可以实现连续备份、自动搜索磁带,也可以在驱动管理软件控制下实现智能恢复、实时监控和统计,整个数据存储备份过程完

12、全摆脱了人工干涉。磁带库不仅数据存储量大得多,而且在备份效率和人工占用方面拥有无可比拟的优势。在网络系统中,磁带库通过SAN (Storage Area Network ,存储区域网络)系统可形成网络存储系统, 为企业存储提供有力保障,很容易完成远程数据访问、数据存储备份或通过磁带镜像技术实现多磁带库备份,无疑是数据仓库、ERP 等大型网络应用的良好存储设备。二、光盘、光盘库、光盘塔光盘 是利用关学原理来存储数据的存储设备。光盘主要分为只读型光盘和读写型光盘。只读型指光盘上的内容是固定的,不能写入、修改, 只能读取其中的内容。读写型则允许人们对光盘内容进行修改,可以抹去原来的内容,写入新的内容

13、。 用于微型计算机的光盘主要有 CD-ROM 、CD-R/W 和 DVD-ROM等几种。光盘库 实际上是一种可存放几十张或几百张光盘并带有机械臂和一个光盘驱动器的光盘柜。光盘库也叫自动换盘机,它利用机械手从机柜中选出一张光盘送到驱动器进行读写。它的库容量极大, 机柜中可放几十片甚至上百片光盘片,这种有巨大联机容量的设备非常适用于图书馆一类的信息检索中心,尤其是交互式光盘系统、数字化图书馆系统、实时资料档案中心系统、卡拉OK 自动点播系统等。光盘库的特点是:安装简单、使用方便,并支持几乎所有的常见网络操作系统及各种常用通讯协议。由于光盘库普遍使用的是标准EIDE 光驱(或标准5 片式换片机) ,

14、所以维护更换与管理非常容易,同时还降低了成本和价格。又因光盘库普遍内置有高性能处理器、高速缓存器、快速闪存、动态存取内存、网络控制器等智能部件,使得其信息处理能力更强。光盘塔 由几台或十几台CD-ROM 驱动器并联构成,可通过软件来控制某台光驱的读写名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 15 页 - - - - - - - - - 操作。光盘塔可以同时支持几十个到几百个用户访问信息。三、 USB 移动硬盘5.2 数据库的存储结构设计数据库最终要存储到计算机的磁盘

15、中。而磁盘是由操作系统的文件管理子系统来管理的,大家知道操作系统对存储在磁盘中的数据是以文件形式来管理的。因此DBMS 对数据库的存储结构设计必须符合操作系统的文件技术规范。本节将介绍DBMS 的 “基本表”是如何映射成OS 的逻辑文件。5.2.1 操作系统文件管理简介为了使同学们更好地理解“DBMS 如何把“基本表”存储成操作系统的文件”,我们先来学习一下操作系统的文件管理。一、相关概念1、操作系统逻辑文件操作系统逻辑文件是指用户、应用程序所感知道的文件组织形式。从结构上 可分成两大类:字符流式无结构文件和记录式有结构文件,而记录式有结构文件又可进一步分为:连续结构、多重结构、转置结构、顺序

16、结构四种。从存取方法上 可分为:顺序存取、随机存取、按键存取三种。DBMS 使用的是记录式有结构文件,从存取方法上DBMS 要求顺序存取、随机存取、按键存取三种。2、操作系统物理文件操作系统物理文件是指操作系统逻辑文件在存储设备(磁盘) 上的存放形式。 从文件的存储结构上可分成:连续文件、串连(链表)文件、索引文件三种。二、逻辑文件与物理文件的对应关系名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 15 页 - - - - - - - - - :盘块, OS 内外存之间交

17、换数据的最小单位,一般为512Byte。:OS 文件的记录,结构体。一般来说,记录的大小是盘块的整数倍。5.2.2 文件组织数据库在磁盘中是以文件形式存在的,而文件是由一系列记录(结构体)构成的。要把基本表的数据(元组)存储到OS 文件中,这些数据就必须符合OS 逻辑文件的“记录”格式。然而, 数据库中各种数据的结构不相同,那么,我们应如何设计存储数据的文件的记录结构,才能使数据库的各种数据都能存储在文件中呢?这里面临的问题是:存储数据的文件的记录是采用定长结构还是变长结构,这就是文件组织问题。一、定长记录所谓定长记录结构就是存储数据的文件记录采用统一的长度。定长记录结构的文件如图所示:文件“

18、学生”表“选课”表二、变长记录所谓变长记录结构就是存储数据的文件记录不采用统一的长度。变长记录结构的文件如图所示:文件头记录号记录内容指针1 2 3 4 5 6 文件尾学号姓名民族性别生日200519001 TY 蒙古族女1987-2-3 200519002 LN 汉女200519003 WJ 回族男学号课号班级号成绩200519001 190001 01 78 200519002 190001 01 76 200519003 190001 01 89 文件头名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - -

19、- - - - - 第 7 页,共 15 页 - - - - - - - - - 5.2.3 文件的结构在数据库中,基本表的元组之间,基本表之间是有联系的、有顺序的。那么如何在存储文件中体现这写联系和顺序呢?显然,应该通过文件的“记录 ”之间联系、顺序来体现。这就是文件的结构问题。常见的文件结构有以下四种:一、堆文件在这种组织中, 记录可以放在文件的任何位置,一般以输入顺序为序。记录的存储顺序与关键字无关,插入记录总是在文件尾部。二、顺序文件在这种组织中,记录是按查找键值升序或降序顺序存储。三、散列文件按记录的某个属性值通过散列函数求出一个值,然后把此值作为记录的存储地址。四、聚类文件在这种组

20、织中,一个文件可以存储多个关系的记录。5.2.4 SQL Server 的数据库存储结构介绍从磁盘文件的角度看,一个SQL Server 数据库由两部分内容构成:数据文件和日志文件。数据文件用来存储数据库的各种对象的具体数据(例如:表、索引、存储过程等)。日志文件用来记录各事务对数据库的更新操作。数据文件由页构成,如图所示:文件( ID :01)1、页文件头. . . 文件尾页号:01:0001 页号:01: 0002 页号:01:0003 页号:01: 0022 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 -

21、 - - - - - - 第 8 页,共 15 页 - - - - - - - - - SQL Server 用 8KB 的连续磁盘空间块(称为页)存储数据页是SQL Server 与磁盘传输数据的最小I/O 单位。每页的开始部分是96 字节的页首,用于存储系统信息,如:页的类型、页的可用空间量、拥有页的对象的对象ID 等。在SQL Server 中,基本表的 行不能跨页存储。在 SQL Server 2000 中,一行内最多包含的数据量是8060 字节,不包括text、 ntext 和 image 数据。基本表每行字符个数不能超过8096 字节。数据页8060B 8KB 2、页组(扩展盘区)

22、为了减少内部操作和增加I/O 效率,SQL Server 在向表和索引分配存储空间时是按页组分配的。 一个页组等于8 个连续页, 即 64KB 。为了使空间分配更有效,SQL Server 2000 对只含少量数据的表不分配完整的扩展盘区。SQL Server 2000 有两种类型的扩展盘区:统一扩展盘区由单个对象所有,扩展盘区中的所有八页只能由拥有该盘区的对象使用。混合扩展盘区最多可由8 个对象共享。通常从混合扩展盘区中向新表或新索引分配页。当表或索引增长到8 页时,就变成统一扩展盘区。如果在现有表上创建索引,并且该表包含的行足以在索引中生成8 页,则对该索引的所有分配都在统一扩展盘区内进行

23、。5.3 索引技术概述5.3.1 索引概念一、问题提出表中的元组在磁盘中只能有一个物理存储顺序,而用户每次查找元组时,所要的元组顺序(逻辑顺序)经常与元组的存储顺序(物理顺序)不一致,如果每次DBMS 都按元组的存储顺序去扫描元组,查找速度可能会很慢。这很像去图书馆借书。书在书库有个存放顺序页首 (页类型、可用空间、拥有该的对象ID、页号、指向上页的指针、指向上页的指针)数据行 1 数据行 2 数据行 3 可用空间名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 15 页

24、- - - - - - - - - (物理顺序) ,如果你按这个顺序去找书,最好情况是一次就找到了你所要的书,最坏情况是把书库中的书整个查找一遍,最后才找到你所要的书,总之,平均速度很慢。那么,图书馆是怎么解决这个问题的呢?图书馆是为每本书建立一些卡片,在卡片中记录书的基本信息及其所在位置,然后按某种逻辑顺序(例如:出版业,作者,书所属的学科)将卡片放在一起,这便构成了书的各种逻辑顺序。他们称此为“图书目录”或“图书索引”。我们在数据库中也可以使用此方法。二、索引概念对“基本表”的元组,按某种逻辑顺序建立一个目录文件,此文件结构如图所示,此目录文件按逻辑顺序排列元组,并记录元组的存储位置。我们

25、把这种目录文件称为索引。1、索引键创建索引的列(属性) 。2、索引顺序在索引文件中,索引键的顺序。索引文件(按姓名顺序)主文件索引文件(按姓名顺序)主文件ALT BCX CLJ EJB ZS YYJ 200118001 BCX 男200118002 ALT 678 200118003 ZS 890 200118004 EJB 888 200118005 YYJ 654 200118006 CLJ 456 200118007 BCX 567 200118008 ZS 700 200118009 YYJ 800 ALT BCX CLJ EJB ZS YYJ 200118001 BCX 男20011

26、8002 ALT 678 200118003 ZS 890 200118004 EJB 888 200118005 YYJ 654 200118006 CLJ 456 200118007 BCX 567 200118008 ZS 700 200118009 YYJ 800 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 10 页,共 15 页 - - - - - - - - - 5.3.2 索引分类稠密索引聚类索引(主索引)稀疏索引有序索引多级索引非聚类索引(辅助索引)都是稠密索引索

27、引(根据主文件中记录的某种排序顺序建立的索引)散列索引(根据记录中某个属性值,通过散列函数计算出一个“桶号”,以此“桶号”作为记录在索引中位置。依此而建立的索引)一、主索引如果索引的查找键值的顺序与主文件的物理存储顺序一致,那么我们称此种索引为“主索引” ,也称为“聚类索引” 。 (如图所示)1、稠密索引对于主文件的每一个查找键值建立一个索引记录项。 (如图所示)(注意:这里对稠密索引的定义与有些书不同)2、稀疏索引在主文件中,若干个查找键的值才建立一个索引记录项。(如图所示)3、多级索引即使采用稀疏索引,索引文件可能还是很大,以致查询效率不高。为了解决这一问题我们可以对主索引在建立一级索引,

28、这就构成了多级索引。(如图所示)二、辅助索引根据主文件的其它查找键(不是确定主文件顺序的查找键)建立的索引, 因而索引顺序与主文件的顺序不一致。辅助索引都是稠密索引。三、散列索引散列方法不仅可以用在文件组织上,也可以用在索引结构的创建上。散列索引构造:首先为主文件中每个查找键值建立一个索引记录,然后把这些索引记录组织成散列结构,而不是稀疏或稠密索引。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 11 页,共 15 页 - - - - - - - - - 5.3.3 索引文件维护问题

29、当对主文件进行更新()操作时,可能会引起索引的修改。一、删除记录在主文件中找到被删记录,然后将其删除。如果符合查找键值的记录在主文件中只有一个,那么肯定要修改索引文件。二、插入记录5.4.4 B+树索引文件前面提到的 索引顺序组织 的主要缺点是: “随着主文件的增长,无论是顺序查找还是索引查找,其性能都会恶化”。虽然可以通过重组文件来该善,但频繁地重组文件也会增加系统的负担。 为了改善索引结构的性能,可以采用多级索引,目前广泛流行的一种技术是“平衡树”技术。一、 m 阶“平衡树”的定义一棵 m 阶“平衡树” 或者为空,或者满足下列条件:每个结点至多有m 棵子树。根结点或为叶结点,或至少有两棵子

30、树。每个非叶结点至少有m/2 棵子树。( 表示取整)从根结点到叶结点的每一条路径都有同样的长度,即叶结点在同一层次上。平衡树又分为两类:B+树 和 B 树,而 B+树在实现上也有多种形式。下面介绍一种B+树 。二、 B+树的结构每个结点至多有m-1 个查找键值K1,K2, ,Km-1,m 个指针 P1,P2, Pm。 如图:P1K1P2Pm-1Km-1Pm叶结点的组织方式是: 每个叶结点至少有(m-1)/2 个查找键值,至多有m-1 个查找键值。叶结点中的指针(1im-1)指向主文件中的记录。如果查找键恰好是主文件的主键,那么叶结点中的指针直接指向主文件的记录;如果查找键不是主文件的主键,那么

31、叶结点中的指针指向一个桶, 桶中存放指向具有该键值的主文件记录的指针。 叶结点的最后一个指针指向下一个叶结点(按查找键顺序)如果 B+树索引是稠密索引,那么主文件的每个查找键值必须在某个叶中出现。非叶结点的组织方式是:名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 12 页,共 15 页 - - - - - - - - - B+树中的非叶结点形成了叶结点上的一个多级稀疏索引。 每个非叶结点(不包括根结点)中至少有 m/2个指针,至多有m 个指针。非叶结点指针的数目称为该结点的“扇出端

32、数”。如果非叶结点有n 个指针,则:指针 P1指向的子树中所有查找键值均小于K1。指针 Pi(1in-1)指向的子树中所有查找键值均小于Ki ,而大于等于Ki-1。指针 Pn指向的子树中所有查找键值均大于等于Kn-1。(一棵 3 阶 B+树索引如图所示)三、 B+树的查询如果用户要查找键值为K 的所有记录, 那么首先在根结点中找大于K 的最小查找键值 (假设是 Ki) ,然后沿Ki着左边的指针到达第二层的结点上,如果根结点中有n 个指针,且K Kn-1,那么就沿着Pn指针到达第二层。在第二层的结点上,用类似的方法找到下一层结点,依此类推,直到叶结点,最后找到主文件中的记录。 计算 m 阶 B+

33、树索引树的深度公式如果主文件中查找键有k 个值,那么对于m 阶 B+树而言,从根结点到叶结点的路径长度不超过 log m/2 (k) 举例:讨论B+树索引查询中查询次数与文件的块数的关系如果在 B+树索引中,每块存储一个结点,占4096 字节。查找键的长度为12 字节指针 8 字节,那么每块大约可存储200 个查找键和指针,m 约为 200。在 m=100 时,如果文件中查找键有100 万个值,那么一次查找需读索引块的数目是 log 50 (1000000) =4 。四、 B+树的更新1、不引起索引结点分裂的插入操作2、不引起索引结点合并的删除操作3、引起索引结点分裂的插入操作4、引起索引结点

34、合并的删除操作5.4.5 B 树索引文件名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 13 页,共 15 页 - - - - - - - - - 5.4.6 SQL Server 的索引机制介绍一、 SQL Server 索引种类1、聚集索引在聚集索引中,表中各行的物理顺序与键值的逻辑(索引)顺序相同。表只能包含一个聚集索引。如果不是聚集索引,表中各行的物理顺序与键值的逻辑顺序不匹配。聚集索引比非聚集索引有更快的数据访问速度。一个表只能有一个聚集索引。SQL Server 默认地用

35、表的主键创建一个聚集索引。2、非聚集索引非聚集索引的索引顺序与表中各行的物理顺序不保持一致。一个表最多可以有249 个非聚集索引。3、复合索引所谓复合索引是指用两个以上属性创建的索引。4、唯一索引唯一索引不允许两行具有相同的索引值。如果现有数据中存在重复的键值,则大多数数据库都不允许将新创建的唯一索引与表一起保存。当新数据将使表中的键值重复时,数据库也拒绝接受此数据。 例如,如果在employee 表中的职员姓氏(lname) 列上创建了唯一索引,则所有职员不能同姓。对于“学生”表,可以用“身份证号”属性创建一个唯一索引。二、创建索引1、使用“企业管理器”2、使用 CREATE INDEX 命

36、令语法语法说明示例三、索引使用准则1、索引使用总的原则对执行频度高的查询进行分析,从中找到关键的属性,进而考虑利用这些属性建立索引。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 14 页,共 15 页 - - - - - - - - - 对选择性比率高的列(属性),可考虑生成索引。属性的选择性比率=(属性的取值个数)/(表的总行数) 。对联接中使用的列,可以考虑建立索引。对于一个表来说不是索引建的越多越好。2、聚集索引使用原则对以下列可以考虑创建聚集索引:有几个重复值(有较少的唯一

37、值),要经常查找的列。经常在 ORDER BY 子句中指定的列。通常在数值范围中查找的列。连接子句中经常使用的非主键列。考虑建聚集索引的列时,可能要对相对静态(更新不频繁)的列。尽量避免对单调插入顺序键生成聚集索引。建议对表中随机分布的列创建聚集索引。3、非聚集索引使用原则选择性比率高的列,where 子句和 ORDER BY 子句中引用的列。通常在数值范围中查找的列。4、复合索引使用原则把选择性比率高的列放在前面。索引键越多越不好。四、表和索引构架名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 15 页,共 15 页 - - - - - - - - -

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

当前位置:首页 > 技术资料 > 技术总结

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

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