收藏 分销(赏)

构建索引的战略方案.pptx

上传人:丰**** 文档编号:4215044 上传时间:2024-08-26 格式:PPTX 页数:17 大小:2.39MB 下载积分:8 金币
下载 相关 举报
构建索引的战略方案.pptx_第1页
第1页 / 共17页
构建索引的战略方案.pptx_第2页
第2页 / 共17页


点击查看更多>>
资源描述
1构建索引的战略方案1.索引的选定准则索引的选定准则2.决定聚簇类型的准则决定聚簇类型的准则1.索引的选定准则l基于某个列所创建的新索引并不是只会影响某个特定的查询语句,而是将影响到所有使用到该列的查询语句。l在索引构建中,我们追求的不是多而是精。l就像通过革新可以为组织注入新的活力一样,在RDBMS中,通过索引的革新往往就可以获得惊人的执行速度惊人的执行速度。l茫然推测或者为了特定要求而随意创建索引的行为应当被坚决禁止茫然推测或者为了特定要求而随意创建索引的行为应当被坚决禁止。通过实事求是的原则,对实际信息【搜集的数据读取类型,读取频度,查询范围,离散度,表的大小等】全面分析来构建综合性的战略性索引才是成功之道。21.索引的选定准则 不同类型表的索引应用准则l拥有数据量较小的小型表如果从单一的小型表中读取数据,那么索引的有无不会对执行速度有任何关系。但是在该小型表以不同方式与其他表执行连接的情况下,索引的有无将会对执行速度有非常大的影响。不妨用索引组织表来存储这种类型的表。l主要起参考作用的大中型表这种类型的表一般以小范围扫描为主,处于内循环并且通过主键来执行表连接。在这种类型的表中,主要为各个索引分配合理的任务【也就是创建了战略性索引】,即使需要创建大量的索引也应当果断作出决定。这种表的数据量变更的可能性非常小,不是特殊情况下不需要执行重构操作。31.索引的选定准则 不同类型表的索引应用准则l管理具体业务行为的大中型表这种类型的表在查询时经常处于循坏的外侧,并且随着时间的推移数据量不断增加。构建战略性索引需要遵循的准则:1.搜集正在使用的所有数据读取类型;2.寻找能够满足所有读取要求的比较理想的索引组合。l存储用的大型表这种类型的表主要用来存储和管理日志性数据。数据量大且不断增加;只有INSERT和SELECT两种操作类型;SELECT次数不多,并多是范围查询;PCTFREE可以设置为0;可以不设置主键,以减小INSERT的开销;可以为表创建分区【一般以时间列创建】41.索引的选定准则离散度和损益分界点l创建索引的目的是快速从整体集合中选择性地读取满足条件的一小部分集合。l在查询条件中既有对缩减查询范围起主要作用的驱动查询条件,也有单纯起检验作用的过滤查询条件。我们我们所追求的目标是创建全表扫描所无法比拟的有效所追求的目标是创建全表扫描所无法比拟的有效索引索引l如果各个列的离散度都不够好,那么可以将这些列进行有效的组合,通过合力的有效使用可以达到意想不到的效果【组合索引】。l另外,这里的损益分界点都是在利用索引读取满足条件的全部数据的情况下分析的,如果只读取部分数据【局部范围扫描】,则高于损益点也可以使用索引。51.索引的选定准则索引合并和组合索引的比较l为了实现以最少的索引满足对某个表的多样化的数据读取要求,应当为每个索引分配合理的任务,基本思路:对离散度较好的列创建单列索引;对离散度不好的多个列创建足额和索引;l索引合并的举例61.索引的选定准则索引合并和组合索引的比较l索引合并分析:只有当合并的索引具有相似的离散度时索引合并才比较有效,当索引的离散度相差比较大时使用索引合并的方法反倒容易影响执行效率【不如采用离散度大的索引做驱动查询条件,另一个条件只做过滤】。l组合索引是指为多列所创建的索引l组合索引和索引合并的比较如图所示l只有在查询条件中对索引列使用了等值比较时组合索引才能够有突出的表现。71.索引的选定准则组合索引的特征l离散度和列序之间的关系l由上面可以看出,离散度的好坏在组合索引中并不是很重要,重要的是是否使用了“=”查询条件。81.索引的选定准则组合索引的特征l等值比较对列的组合顺序的影响l在没有为组合索引的第一列赋予使用“=”比较查询条件时,即使为后面的列赋予了使用“=”查询条件也不会缩减数据的查询范围91.索引的选定准则组合索引的特征lIN的垫脚石作用l从概念上讲,Between或者Like类似于“线段“的概念,IN类似于”点“的概念。从逻辑上讲,由于线段是由无穷多个点组成的,所以无法确保可以将BETWEEN或者LIKE转换成IN,也即无法确保始终可以将具有线段概念的查询条件转换为”=“查询条件。l使用IN可以将其他查询转化为等值查询。101.索引的选定准则组合索引的特征l对查询范围不构成直接影响的列的添加准则l补:还如果查询的列都在组合索引中,则只需要索引扫描,不需要查表。111.索引的选定准则组合索引中列序的决定准则l决定组合索引列序的各个要素的优先级列举如下:1.是否经常被使用;2.是否经常为列使用“=”比较查询条件;3.哪个列具有更好的离散度;4.经常按照何种顺序进行排序;5.何种列将作为附加列被添加。121.索引的选定准则索引选定步骤l索引选定步骤1.全面搜集表的读取类型2.选定索引列并调查其离散度3.为特殊读取类型选定索引4.检查聚簇5.组合索引的构成及索引列序的决定6.试验和测试7.调查和修改相关应用程序8.统一应用1314构建索引的战略方案1.索引的选定准则索引的选定准则2.决定聚簇类型的准则决定聚簇类型的准则2.决定聚簇类型的准则全局性聚簇l回顾:为了提高大范围数据处理的执行速度而使用单表聚簇,为了提高多个表之间的连接效率而使用复合表聚簇。l全局性聚簇全局性聚簇并不是指两个表之间的聚簇,而是在一个聚簇中结合两个以上表的情况下所使用的称呼。152.决定聚簇类型的准则局部性聚簇l局部性聚簇尽可能保持表本身的独立性仅为结合度非常高的表创建局部性聚簇l只为需要经常进行大范围数据处理的表创建聚簇,尽量确保不需要进行大范围数据处理的表具有较强的独立性162.决定聚簇类型的准则确保聚簇被使用的措施为了提高表连接的效率,在为经常执行表连接的表创建聚簇时,基本上都是把连接列作为聚簇键来使用。不要以聚簇键列作为先导列来创建组合索引,因为大部分情况下,使用组合索引所获得的执行速度没有使用聚簇所获得执行速度好。l确保聚簇被使用的措施17
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服