暂无图片
暂无图片
1
暂无图片
暂无图片
暂无图片

【OceanBase】本地索引 & 全局索引

2502

对每一个索引数据结构来说, 里面的键( Key)只映射到自己分区中的主表数据, 不会映射到其它分区中的主表, 因此这种索引被称为本地索引。

从另一个角度来看, 这种模式下索引的数据结构也做了分区处理, 因此有时也被称为本地分区索引( Local Partitioned Index) 。

本地索引的结构如下图所示:

 

在上图中, employee 表按照 emp_id 做了范围分区, 同时也在 emp_name 上创建了本地索引。 


和分区表的本地索引相比, 分区表的全局索引不再和主表的分区保持一对一的关系, 而是将所有主表分区的数据合成一个整体来看, 索引中的一个键可能会映射到多个主表分区中的数据( 当索引键有重复值时) 。

更进一步, 全局索引可以定义自己独立的数据分布模式, 既可以选择非分区模式也可以选择分区模式; 在分区模式中, 分区的方式既可以和主表相同也可以和主表不同。


因此, 全局索引又分为以下两种形式:

  • 全局非分区索引( **Global Non-Partitioned Index**)
  • 全局分区索引( **Global Partitioned Index**) 


索引数据不做分区, 保持单一的数据结构, 和非分区表的索引类似。 但由于主表已经做了分区, 因此会出现索引中的某一个键映射到不同主表分区的情况, 即“一对多”的对应关系。

全局非分区索引的结构如下图所示:


索引数据按照指定的方式做分区处理, 比如做哈希( Hash) 分区或者范围( Range) 分区, 将索引数据分散到不同的分区中。 但索引的分区模式是完全独立的, 和主表的分区没有任何关系, 因此对于每个索引分区来说, 里面的某一个键都可能映射到不同的主表分区( 当索引键有重复值时) , 索引分区和主表分区之间是“多对多”的对应关系。

全局分区索引的结构如下图所示: 


「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论