欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Oracle 索引之——位图索引

程序员文章站 2022-06-06 10:13:13
...

当用于低基数列时,位图索引比 B 树索引更紧凑。
由于位图使用位图段级锁定,所以位图索引中的键列的更新成本较高;而在 B 树索引中,锁位于与表中单个行相对应的项上。
位图索引可用于执行位图布尔等操作。Oracle 服务器可以使用两个位图段执行逐位布尔操作并得到一个结果位图。这将允许在使用布尔谓词的查询中更有效地使用位图。
总之,B 树索引更适合索引动态表的 OLTP 环境,而位图索引更适合在大型静态表上使用复杂查询的数据仓库环境。

 

例如,表 CML_ONLINE_CASHIER中有一个EXP_STATUS字段,该字段只会出现('P','R','O','E','C')五种值,因此可以考虑在该字段上建位图索引。

CREATE BITMAP INDEX IDX_1000008_201 ON CML_ONLINE_CASHIER(EXP_STATUS) TABLESPACE CISTS_IDX_01;