Bitmap Index相关
来源:互联网 发布:新网互联域名证书查询 编辑:程序博客网 时间:2024/05/21 21:37
学习数据挖掘的课上,看到了这种巧妙的方法,但是没有理解透,所以搜了搜相关知识。如果有错误的地方还请指正,谢谢。
Bitmap Index
特点:
1. 在low-cardinality columns中表现很好
3. 减少index的占用空间
缺点:
1、在需要频繁更新的时候,效率没有b-tree高
创建bitmap index的时候, 必须使用 nologging 和 compute statistics.而且, bitmap index 如果有问题, 最好是直接drop 然后重建而不是去想办法维护它.
在数据仓储应用中,连接一个大的fact table和小的dimension table,如star schema,Bitmap index也是非常有效的。
对于fact table 和 dimension table, 可以在fact table中的外键上建立bitmap index.
Cardinality 基数, 集的势
每个column不同的值的个数叫基数. distinct value. bitmap index 非常适合建在基数比较小的column上, 比如说性别.而且如果说某个table里面有1000000条记录, 而某个column只有1000个不同的值, 相当于记录条数是0.1%. 这种情况下, 使用bitmap index也是不错的.与b-tree的区别
对于具有唯一约束的或者是基数比较大的column, 比如ID, 最好用普通索引, 即b-tree index.bitmap index 和 b-tree 另外一个最大的不同在于对NULL 的处理. bitmap index 可以处理null值, 而b-tree index 则无法存储NULL. 如果是bitmap index 的话, 你可以在where 字句中使用NULL, 如:
此时, oracle 会使用customer_long_name 上的bitmap_index快速得到值, 甚至不用去真正的access table 上的数据.
select count(*) from customer 的时候, oracle 会自动从NOT NULL的字段上计算总数.
在partitioned table 上, Bitmap index 只能是local index 而不能是global index.
参考:
http://blog.csdn.net/changtiger/article/details/3342538
http://en.wikipedia.org/wiki/Bitmap_index
- Bitmap Index相关
- Bitmap Index
- bitmap index
- Bitmap index AND bitmap join index
- B*Tree index & bitmap index
- bitmap index 的研究
- bitmap index 的研究
- bitmap index 的研究
- Bitmap index block concurrence
- oracle bitmap index
- ORACLE BITMAP INDEX
- bitmap join index
- oracle bitmap join index
- 位图索引 Bitmap index
- Bitmap相关
- PostgreSQL index scan,bitmap index scan区别
- 位图索引(Bitmap Index)
- 位图索引(bitmap index)
- windows 注册表操作注意点
- JDK中rt.jar、tools.jar和dt.jar作用
- POJ2389 Bull Math
- shell脚本备份数据库
- Database Patch Set Update Overlay Patches Required for Use with PSUs and Oracle E-Business Suite
- Bitmap Index相关
- ARC(Automatic Reference Counting )技术概述
- Hibernate源码解析---------hibernate.cfg.xml读取流程
- leetcode: Permutations/Permutations II
- 地图投影系列介绍(一) 地球空间模型
- 仿通讯录快速索引的实现原理(包括中间的字母图和右边的索引条),例IndexableListView
- JS中typeof与instanceof的区别
- VS工程目录中,子文件夹Debug下不同后缀文件名作用
- linux下配置jdk6