Oracle索引和分区

时间:2018-10-17 11:54:13

标签: oracle partitioning

我想确认是否对Oracle数据分区进行分区也会对减少用于索引的空间总量有影响。

我发现如果涉及到更多的表空间,则应该减少用于处理该数据的索引数据的大小,从而导致索引大小的减少大于数据大小的减少。

但是,我找不到任何可以验证的东西。现在,我没有分区许可证,并且希望将其用作成本合理性的一小部分(尽管性能是最大的)。

2 个答案:

答案 0 :(得分:2)

分区索引的总大小可以小于整个索引的大小,因为索引的B树可能级别较低。

如果N是行数,p是分区数,则消耗的索引空间可以近似为:

未分区:N * [log N]

已分区:p * N / p * [log N / p] = N * [log N / p]

[]舍入到最接近的整数

答案 1 :(得分:0)

索引值包含实际值和始终为10个字节的ROWID。

我看不出分区表上的索引可能小于普通表上的索引的任何原因-除非您使用Partial Indexes for Partitioned Tables