virtualman2000 发表于 2007-2-13 10:29:18

讨教关于位图索引的物理实现方式

在很多材料中都说位图索引是一系列表项,给我的感觉是象是一个表一样。但是,在《Oracle Database 10g 基础教程》中,说位图索引实质上也是采用B树方式实现的。在此,我就比较疑惑了,到底位图索引是怎样实现的,有没有一个标准的官方材料能够说明呢?本人找了半天没有找到非常好的材料,还请各位能够指点一下。谢谢!
另外,在Kyte那本最新的“圣经”中说是B*树,而有的材料说是B树,我想问的是两者有什么区别,那个“ * ”代表什么?

cow977 发表于 2007-2-14 11:07:33

应该是B+树吧。

zxbyhcsdn 发表于 2007-3-9 11:31:45

Btree用在高基数(即列的数据相异度大),位图用在低基数列


BitMap索引的原理---------------------------------

state_code  bitmaps:
DE:        <111111111000000000>
NH:        <000000000111111111>

在上面的程序清单中,每一个数字代表EMPLOYEE表中的一个行。由于这里只考虑10行,
所以只有10个位映射值示出来。通过读取State_Code的位映射,前5个记录的值为“DE”(用1
表示),后5个记录的值则不为“DE”(用0表示)。对这个列可能有更多的值。在这种情况下,
对应每一个值都将有一个独立的位映射条目。
Oracle优化程序能够在查询进程中动态地将位映射索引内容转换为RowID。


[注意:]BITMAP INDEX通常用于DSS,如果你的系统是OLTP,DML操作将LOCK整个BITMAP SEGMENT,
    因此只在DSS下 考虑BITMAP INDEX

NinGoo 发表于 2007-3-10 15:02:44

http://www.itpub.net/114023.html

tony110893 发表于 2007-3-11 09:37:09

看看oracle的concepts就明白了

pengzi123 发表于 2007-3-12 05:14:20

8848

服务器名: 秋风梦幻
官方网站:www.mf286.com
游戏线路: 电信 网通双线
服务器配置: HP双核心Opteron服务器配置
在线最大人数: 1500人
服务器经验倍率: 60倍
武器打造成功率: 90%
上线等级: 1级
每级可用附加点数:10点(飞升后每级将有20点)
上线附送宝宝: 超级大熊猫 超级泡泡 (在宠
物仙子那里可以选一个)
其他内容在游戏中可以向梦幻精灵查询(随便对
她说一句话她就会告诉你服务器配置,其他问题不会
回答.因为占用资源太大)
第二步:

paulminghe 发表于 2007-3-15 22:45:32

Re: 讨教关于位图索引的物理实现方式

最初由 virtualman2000 发布
在很多材料中都说位图索引是一系列表项,给我的感觉是象是一个表一样。但是,在《Oracle Database 10g 基础教程》中,说位图索引实质上也是采用B树方式实现的。在此,我就比较疑惑了,到底位图索引是怎样实现的,有没有一个标准的官方材料能够说明呢?本人找了半天没有找到非常好的材料,还请各位能够指点一下。谢谢!
另外,在Kyte那本最新的“圣经”中说是B*树,而有的材料说是B树,我想问的是两者有什么区别,那个“ * ”代表什么?

发给您个文档,您仔细看看应该明白了。

paulminghe 发表于 2007-3-15 22:46:26

Re: 讨教关于位图索引的物理实现方式

最初由 virtualman2000 发布
在很多材料中都说位图索引是一系列表项,给我的感觉是象是一个表一样。但是,在《Oracle Database 10g 基础教程》中,说位图索引实质上也是采用B树方式实现的。在此,我就比较疑惑了,到底位图索引是怎样实现的,有没有一个标准的官方材料能够说明呢?本人找了半天没有找到非常好的材料,还请各位能够指点一下。谢谢!
另外,在Kyte那本最新的“圣经”中说是B*树,而有的材料说是B树,我想问的是两者有什么区别,那个“ * ”代表什么?

摘自《Oracle DBA 基础培训教程 - 从实践中学习Oracle DBA》,清华大学出版社出版:

mountainshu 发表于 2007-3-16 10:02:09

关注。。。

hf_klj111111 发表于 2007-4-13 11:27:19

paulminghe 的文档对btree和bitmap索引的物理实现说的很到位,不错,顶
页: [1] 2
查看完整版本: 讨教关于位图索引的物理实现方式