每日一练(4)

多选题

如何选择局部索引还是全局索引,以下说法正确的是

A如果全局索引的分区规则和主表的分区规则相同并且分区数相同,这时推荐创建一个局部索引。一方面是因为全局索引的维护代价更大;另一方面是因为全局索引无法保证和主表分区的物理位置相同,除非将其和主表指定在一个表组中

B如果查询条件里”包含完整的分区键”,使用本地索引是最高效的

C如果数据量较大,或者容易出现索引热点,可考虑创建全局分区索引

D通常来说,全局索引能为高频且精准命中的查询(比如单记录查询)提速并减少IO;对范围查询则不一定哪种索引效果更好

E不能忽视全局索引在DML语句中引入的额外开销:数据更新时带来的跨机分布式事务,事务的数据量越大则分布式事务越复杂

如何选择局部索引还是全局索引,以下说法正确的是

A: 如果全局索引的分区规则和主表的分区规则相同并且分区数相同,这时推荐创建一个局部索引。 一方面是因为全局索引的维护代价更大;另一方面是因为全局索引无法保证和主表分区的物理位置相同,除非将其和主表指定在一个表组中

B: 如果查询条件里“包含完整的分区键”,使用本地索引是最高效的

C: 如果数据量较大,或者容易出现索引热点,可考虑创建全局分区索引

D: 通常来说,全局索引能为高频且精准命中的查询(比如单记录查询)提速并减少IO;对范围查询则不一定哪种索引效果更好

E: 不能忽视全局索引在DML语句中引入的额外开销:数据更新时带来的跨机分布式事务,事务的数据量越大则分布式事务越复杂

正确选项: A, B, C, D, E

答案解析: 官方文档第四章SQL调优。

如果查询条件里“包含完整的分区键”,使用本地索引是最高效的。

如果数据量较大,或者容易出现索引热点,可考虑创建全局分区索引。

通常来说,全局索引能为高频且精准命中的查询(比如单记录查询)提速并减少10;对范围查询则不一定哪种索引效果更好。

不能忽视全局索引在DML语句中引入的额外开销:数据更新时带来的跨机分布式事务,事务的数据量越大则分布式事务越复杂。

如果全局索引的分区规则和主表的分区规则相同并且分区数相同,这时推荐创建一个局部索引。 一方面是因为全局索引的维护代价更大;另一方面是因为全局索引无法保证和主表分区的物理位置相同,除非将其和主表指定在一个表组中。

2 个赞

ABCDE

1 个赞