新人来报道00

新人来报道00 OceanBase 全局索引相比本地索引,会带来哪些开销()
A. DML 操作维护全局索引,跨分区分布式事务开销
B. 占用更多磁盘存储空间
C. 分区裁剪失效场景更多
D. 全局索引副本不参与 Paxos 复制,减少网络开销

答案:ABC

解析

选项 A :heavy_check_mark:正确

全局索引索引键和分区键不一致,执行 INSERT/UPDATE/DELETE 等 DML 时,数据行与索引记录可能位于不同分区节点,需要跨分区分布式事务来维护索引一致性,产生分布式事务开销。本地索引和数据在同一个分区,DML 只操作本分区,没有跨分区事务开销。

选项 B :heavy_check_mark:正确

全局索引是独立的索引结构,需要额外存储索引数据;同时全局索引也会保存多副本,相比本地索引会消耗更多磁盘存储空间。

选项 C :heavy_check_mark:正确

分区裁剪依赖表的分区键过滤。全局索引的分区依据是索引自身的分区规则,不是表数据的分区键。很多查询场景下无法对基表做分区裁剪,分区裁剪失效场景比本地索引更多。

选项 D :x:错误

OceanBase 全局索引同样是普通表,副本同样参与 Paxos 复制,会带来网络开销;该选项描述本身错误。