关于oracle索引的问题

likeacmlian 2009-02-25 03:47:26
各位大虾,我有几个关于索引的问题请大家指教一下:
1、索引的定义。索引就是类似于书籍目录作用、对数据库表中一个或多个列的值进行排序的数据(结构),其作用主要是为了改善查询性能,不知道理解得对不对?
2、索引分为B-树索引和位图索引,其中B-树、位图指的就是实现索引的数据结构?
3、B-树索引分为:根节点、分支节点和叶子节点三层结构。这个层次结构是语义上的,还是实际上索引的实现就是这三层结构,我的意思是分支节点会不会有多级(比如:分支节点的下级节点又是一个分支节点?),这样的话整个索引结构就>3层了?
4、索引各节点的内容我参看了资料http://space.itpub.net/9842/viewspace-312607,其中关于节点内容的描述如有不对觐请提出,非常感谢!
5、根据http://space.itpub.net/9842/viewspace-312607中的描述,实际索引的实现是不是应该就是图中的根节点块、分支节点块和叶子节点块,这三层结构,而叶子节点与行数相等,一一对应,不知道理解得对不对?而叶子节点和分支节点数量的对应关系是怎么样的?
6、在http://space.itpub.net/14075938/viewspace-509801中关于B树节点的描述图中,右侧的分支节点块有两个条目,不过下面有三个节点,是不是画错了?根据前面资料的介绍,分支节点与叶子节点块应该是一一对应的啊?

非常感谢大家!
...全文
73 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
sleepzzzzz 2009-02-26
  • 打赏
  • 举报
回复
数据结构都还给老师了,哎..最近也在看这方面的东西,不过我更关注的是oracle如何去访问和使用索引.
xiaoxiao1984 2009-02-26
  • 打赏
  • 举报
回复
1. 对
2. 对
3. 语义上的,实际上索引可能不止3层,B树的树深很大程度上决定了索引是否是高效的
4. 还没看
5. 不对
6. 没来得及看
阿三 2009-02-25
  • 打赏
  • 举报
回复
比较好的问题,我也得好好研究一下
又是违规昵称 2009-02-25
  • 打赏
  • 举报
回复
1,2正确
3.4.5.6 讨论是的索引的结构,看起来楼主好像绕进去了。
B树索引,B指balance,平衡树.
楼主回忆下大学时的数据结构,平衡树的构建,再结合oracle, 保准就理解了



oraclelogan 2009-02-25
  • 打赏
  • 举报
回复
[Quote=引用楼主 ilikeacmlian 的帖子:]
各位大虾,我有几个关于索引的问题请大家指教一下:
1、索引的定义。索引就是类似于书籍目录作用、对数据库表中一个或多个列的值进行排序的数据(结构),其作用主要是为了改善查询性能,不知道理解得对不对?
2、索引分为B-树索引和位图索引,其中B-树、位图指的就是实现索引的数据结构?
3、B-树索引分为:根节点、分支节点和叶子节点三层结构。这个层次结构是语义上的,还是实际上索引的实现就是这三层结构,我的意思是…
[/Quote]

晚上回去仔细看,研究!谢谢楼主,又多了一次索引学习的实践机会啊!
dawugui 2009-02-25
  • 打赏
  • 举报
回复
好多问题,友情帮顶.

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧