![表和索引体系结构_第1页](http://file4.renrendoc.com/view/2b82f75f6234e0261f632b95c4393d91/2b82f75f6234e0261f632b95c4393d911.gif)
![表和索引体系结构_第2页](http://file4.renrendoc.com/view/2b82f75f6234e0261f632b95c4393d91/2b82f75f6234e0261f632b95c4393d912.gif)
![表和索引体系结构_第3页](http://file4.renrendoc.com/view/2b82f75f6234e0261f632b95c4393d91/2b82f75f6234e0261f632b95c4393d913.gif)
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
学习散记一表和索引体系结构PS:MSDN上摘入表组织表一>一个或多个分区-->一个堆或一个聚集索引结构包含数据行一>堆页或聚集索引页在一个或多个分配单元中进行管理(具体的分配单元数取决于数据行中的列类型)表中的分区:效果:使用分区可以快速而有效地管理和访问数据子集,从而使大型表或索引更易于管理概念:已分区表和已分区索引的数据划分为分布于一个数据库中多个文件组的单元。数据是按水平方式分区的,因此多组行映射到单个的分区。对数据进行查询或更新时,表或索引将被视为单个逻辑实体。单个索引或表的所有分区都必须位于同一个数据库中。决定分区的因素:要取决于表当前的大小或将来的大小、如何使用表以及对表执行用户查询和维护操作的完善程度通常,如果某个大型表同时满足下列两个条件,则可能适于进行分区:1该表包含(或将包含)以多种不同方式使用的大量数据。2不能按预期对表执行查询或更新,或维护开销超过了预定义的维护期。 例 子例如,如果对当前月份的数据主要执行INSERT、UPDATE、DELETE和MERGE操作,而对以前月份的数据主要执行SELECT查询,则按月份对表进行分区可能会使表的管理工作更容易一些。如果对表的常规维护操作只针对一个数据子集,那么此优点尤为明显。如果该表没有分区,那么就需要对整个数据集执行这些操作,这样就会消耗大量资源。表的分类:SQLServer表使用下列两种方法之一来组织其分区中的数据页:聚集表是有聚集索引的表:据行基于聚集索引键按顺序存储。聚集索引按B树索引结构实现,B树索引结构支持基于聚集索引键值对行进行快速检索堆是没有聚集索引的表:数据行不按任何特殊的顺序存储,数据页也没有任何特殊的顺序。数据页不在链接列表内链接.表的分类详解:堆结构:堆和分区:对于堆使用的每个分区,都有index_id=0。默认情况下,一个堆有一个分区。当堆有多个分区时,每个分区有一个堆结构,其中包含该特定分区的数据。堆和分配单元:个堆中的每个分区至少有一个IN_ROW_DATA分配单元。如果堆包含大型对象(LOB)列,则该堆的每个分区还将有一个LOB_DATA分配单元。如果堆包含超过8,060字节行大小限制的可变长度列,则该堆的每个分区还将有一个ROW_OVERFLOW_DATA分配单元。堆和IAM页:可以通过扫描IAM页对堆进行表扫描或串行读操作来找到容纳该堆的页的扩展盘区。因为IAM按扩展盘区在数据文件内存在的顺序表示它们,所以这意味着串行堆扫描连续沿每个文件进行。使用IAM页设置扫描顺序还意味着堆中的行一般不按照插入的顺序返回。聚集索引结构:概念:索引是按B树结构进行组织的。索引B树中的每一页称为一个索引节点。B树的顶端节点称为根节点。索引中的底层节点称为叶节点。根节点与叶节点之间的任何索引级别统称为中间级。在聚集索引中,叶节点包含基础表的数据页。根节点和中间级节点包含存有索引行的索引页。每个索引行包含一个键值和一个指针,该指针指向B树上的某一中间级页或叶级索引中的某个数据行。聚集索引和分区:索引使用的每个分区的index_id=1。默认情况下,聚集索引有单个分区。当聚集索引有多个分区时,每个分区都有一个包含该特定分区相关数据的B树结构。聚集索引和分配单元:个聚集索引的每个分区中至少有一个IN_ROW_DATA分配单元。如果聚集索引包含大型对象(LOB)列,则它的每个分区中还会有一个LOB_DATA分配单元。如果聚集索引包含的变量长度列超过8,060字节的行大小限制,则它的每个分区中还会有一个ROW_OVERFLOW_DATA分配单元。聚集索引查找数据:根据键值找到键值所在的索引页-》在索引页里面找到索引行-》然后根据指针找到数据页中的数据行;非聚集索引结构:于聚集索引的差别:1) :基础表的数据行不按非聚集键的顺序排序和存储2) :非聚集索引的叶层是由索引页而不是由数据页组成。索引行的组成:包含非聚集键值和行定位符。此定位符指向聚集索引或堆中包含该键值的数据行。关于定位符:如果表是堆(意味着该表没有聚集索引),则行定位器是指向行的指针。该指针由文件标识符(ID)、页码和页上的行数生成。整个指针称为行ID(RID)。果表有聚集索引或索引视图上有聚集索引,则行定位器是行的聚集索引键。非聚集索引和分区:非聚集索引在index_id>0的sys.partitions中都有对应的一行。默认情况下,一个非聚集索引有单个分区。如果一个非聚集索引有多个分区,则每个分区都有一个包含该特定分区的索引行的B树结构。非聚集索引和分配单元:每个非聚集索引至少有一个针对每个分区的IN_ROW_DATA分配单元(存储索引B树页)。如果非聚集索引包含大型对象(LOB)歹U,则还有一个针对每个分区的LOB_DATA分配单元。此外,如果非聚集索引包含的可变长度列超过8,060字节行大小限制,则还有一个针对每个分区的ROW_OVERFLOW_DATA分配单元。非聚集索引查找数据:根据非聚集键值在索引页中找到行业索引行-》根据索引行中的行定位器找到数据页中的数据行(这里分堆和聚集表)具有包含列的索引:将非键列添加到非聚集索引的叶级,扩展非聚集索引的功能。这样的非键列具有下列优点:它们可以是不允许作为索引键列的数据类型。在计算索引键列数或索引键大小时,数据库引擎不考虑它们。当查询中的所有列都作为键列或非键列包含在索引中时,带有包含性非键列的索引可以显著提高查询性能。这样可以实现性能提升,因为查询优化器可以在索引中找到所有列值;不访问表或聚集索引数据,从而减少磁盘I/O操作。例子:表中的以下列:Titlenvarchar(50)Revisionnchar(5)FileNamenvarchar(400)建立索引这三列的索引将超出900字节的大小限制10个字节(455*2),这个时候用包含列的索引就可以做到了:CREATEINDEXIX_Document_TitleONProduction.Document(Title,Revision)INCLUDE(FileName);带有包含列的索引准则:在CREATEINDEX语句的INCLUDE子句中定义非键列。只能对表或索引视图的非聚集索引定义非键列。除text、ntext和image之外,允许所有数据类型。精确或不精确的确定性计算列都可以是包含列不能同时在INCLUDE列表和键列列表中指定列名6.INCLUDE列表中的列名不能重复修改带有包含列的表的限制:除非先删除索引,否则无法从表中删除非键列除进行下列更改外,不能对非键列进行其他更改:将列的为空性从NOTNULL改为NULL。增加varchar、nvarchar或varbinary列的长度。包含列用例:SELECTAddressLine1,AddressLine2,City,StateProvinceID,PostalCodeFROMPerson.AddressWHEREPostalCodeBETWEENN'98000'andN,99999';—对应的包含列中的非键列应该是select后面的列:AddressLine1,AddressLine2
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 《计算机应用基础 》课件-第1章
- 2025-2030全球定制基因合成行业调研及趋势分析报告
- 2025年全球及中国理财预算记账服务行业头部企业市场占有率及排名调研报告
- 2025年全球及中国智能家用洗衣机行业头部企业市场占有率及排名调研报告
- 2025-2030全球鼓式限位开关行业调研及趋势分析报告
- 2025年全球及中国伪造 GPS 定位 App行业头部企业市场占有率及排名调研报告
- 2025年全球及中国冷冻毛发研磨仪行业头部企业市场占有率及排名调研报告
- 2025年全球及中国电动汽车绿地制造行业头部企业市场占有率及排名调研报告
- 2025-2030全球速冻青豆行业调研及趋势分析报告
- 必杀04 第七单元 我们邻近的地区和国家(综合题20题)(解析版)
- 2025年南京信息职业技术学院高职单招职业技能测试近5年常考版参考题库含答案解析
- 2025-2030年中国硫酸钾行业深度调研及投资战略研究报告
- 课题申报参考:社会网络视角下村改居社区公共空间优化与“土客关系”重构研究
- 乡镇卫生院2025年工作计划
- 2024年山东省泰安市初中学业水平生物试题含答案
- 机械工程类基础知识单选题100道及答案解析
- 冠心病课件完整版本
- 2024年卫生资格(中初级)-中医外科学主治医师考试近5年真题集锦(频考类试题)带答案
- 中国大百科全书(第二版全32册)08
- 四川省宜宾市中学2025届九上数学期末统考模拟试题含解析
- 微生物组与胆汁性肝硬化
评论
0/150
提交评论