oracle 普通索引分区索引,在Oracle中,分区索引分为哪几类?

♣答案部分

索引按照是否分区可以分为分区索引(Partitioned Indexes)和非分区索引(NonPartitioned Indexes),如下图所示:

oracle 普通索引分区索引,在Oracle中,分区索引分为哪几类?_第1张图片

图3-12分区索引

与分区表类似,分区索引被分解成更小、更易于管理的索引片断。分区索引提高了可管理性、可用性、和可扩展性。分区索引根据索引列是否包含分区键及分区键是否是索引的引导列可以分为有前缀的分区索引和无前缀的分区索引。有前缀的分区索引指的是包含了分区键,并且将其作为引导列的索引。无前缀的分区索引的列不是以分区键开头,或者不包含分区键列。

分区索引就是简单地把一个索引分成多个片断。通过把一个索引分成多个片断,可以访问更小的片断(也更快),并且可以把这些片断分别存放在不同的磁盘上,从而避免I/O问题。B-Tree和位图索引都可以被分区,而HASH索引不可以被分区。可以有好几种分区方法:表被分区而索引未被分区;表未被分区而索引被分区;表和索引都被分区。不管采用哪种方法,都必须使用基于成本的优化器。有两种类型的分区索引:本地分区索引和全局分区索引。每个类型都有两个子类型,有前缀索引和无前缀索引。表各列上的索引可以有各种类型索引的组合。如果使用了位图索引,那么就必须是本地索引。索引分区最主要的原因是可以减少所需读取的索引的大小,另外把分区放在不同的表空间中可以提高分区的可用性和可靠性。在使用分区后的表和索引时,Oracle还支持并行查询和并行DML。这样就可以同时执行多个进程,从而加快处理SQL语句。

你可能感兴趣的:(oracle,普通索引分区索引)