Oracle索引总结(四)
发布时间:2016-10-03 00:00:12
位图索引1.1 位图索引概述位图索引通过位图向量,表示索引键值在表中的分布。适用于没有大量更新操作的对象,如:OLAP数据库。对于存在大量更新操作的索引列,不适用位图索引。因此对于OLTP并不适用。更新位图向量时,相应位图涉及的所有数据行会被锁定,无法针对这些数据行的该索引列进行 ...
位图索引
1.1 位图索引概述
- 位图索引通过位图向量,表示索引键值在表中的分布。
- 适用于没有大量更新操作的对象,如:OLAP数据库。
- 对于存在大量更新操作的索引列,不适用位图索引。因此对于OLTP并不适用。
- 更新位图向量时,相应位图涉及的所有数据行会被锁定,无法针对这些数据行的该索引列进行DML操作。
1.2 位图索引结构的说明
与B-tree索引的联系及区别如下:
- 与B-tree索引的联系:位图索引使用B-tree形式组成。
- 与B-tree索引的区别:位图索引的一个索引键值对应一个叶子节点。(B-tree的叶节点包含多个索引键值)
- 与B-tree索引的区别:位图索引使用位图向量标识键值对应的数据行分布情况。(B-tree采用rowid定位数据行)
此外:
- 位图索引创建时,不需要进行排序,因此速度较快;而B-tree索引创建时,需要排序等操作,因此慢很多。
- 位图索引允许键值为NULL,因此进行NULL条件查询时,可以使用索引。而B-tree索引不记录NULL(组合索引除外),因此会使用全表扫描。
- 对于表的访问效率很高
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们:
admin#shaoqun.com
(#换成@)。