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