全局索引

本地索引

如果查询总是在整个表范围内查询那么全局索引好 ,如果查询条件中有分区列,并且限制在一个分区内查询那么本地索引比全局索引好.因为本地索引是很多个小的索引树组成的一个森林,如果查询条件不能限制分区,那么就会访问所有树,这个代价会比较高。特别是分区特别特别多的时候。举个例子,如果有90万数据,分成30个分区,如果遍历一个本地索引需要耗时5,遍历一个全局索引需要耗时10(不跟数据量成正比),那么三种查法耗时是不一样的:
1.全局索引,需要10时间。
2.本地索引,不指定分区,需要150时间。
3.本地索引,指定分区,需要5时间。
结论:
考虑到效率,要么指定查询分区,要么查询条件就是分区条件,要么干脆使用全局索引。对于多分区(几十个)不指定分区可能带来性能的大幅下降。
全局索引适用于全表范围查询,而本地索引在有明确分区条件的查询中更优,因为遍历本地索引的所有分区可能带来高成本。当分区数量大时,未指定分区的本地索引查询可能会显著降低性能。最佳实践是根据查询条件指定分区或使用全局索引。
411

被折叠的 条评论
为什么被折叠?



