全局分区索引和分区索引区别?

创建分区表后,创建分区索引有大致两种方式,一种是全局索引(包括分区索引和普通非分区索引),另一种是在每个分区创建索引,而不是在分区表的父表创建索引。请问:全局分区索引和每个分区创建普通索引有什么性能区别,能否详细对比一下?分别包括写入和检索的性能,或者还有其它不同。...显示全部

创建分区表后,创建分区索引有大致两种方式,一种是全局索引(包括分区索引和普通非分区索引),另一种是在每个分区创建索引,而不是在分区表的父表创建索引。

请问:全局分区索引和每个分区创建普通索引有什么性能区别,能否详细对比一下?分别包括写入和检索的性能,或者还有其它不同。

收起
参与5

返回匿名用户的回答

匿名用户匿名用户

这个应该网上一搜一大把的,简单来说,全局就是索引键值贯穿表的所有索引字段数据,分区索引则是索引上只包含对应分区的索引字段数据,所以很明显,如果通过where条件可以直接定位到某个或某些分区上,那么分区索引就可以帮助你在这个分区中快速查找数据,但如果没办法通过where定位分区,那么需要遍历全表所有分区来定位数据,此时分区索引无法起作用,那就必须全局索引了。所以是否要用全局索引一个最基本的判断,就是where条件和分区字段的匹配。
另外,当分区维护的时候,全局索引会失效,必须重建才行,这将会影响到表的事务操作,所以oltp的事务性表,尽量不要用全局索引。

IT咨询服务 · 2019-07-31
浏览1805
  • 在网上,全局分区索引和分区索引更多的是从功能或概念区别谈论,本问题是从性能角度求问。
    2019-08-05

回答状态

  • 发布时间:2019-07-31
  • 关注会员:2 人
  • 回答浏览:1805
  • X社区推广