社区
Oracle 高级技术
帖子详情
oracle中的多属性索引是如何实现的?
panppl
2004-11-29 11:39:44
其实oracle中的单属性索引的数据结构也不是很清楚,但我想可能是B树之类的吧,多属性索引用的是什么树结构呢?查询和插入的效率如何?
...全文
323
10
打赏
收藏
oracle中的多属性索引是如何实现的?
其实oracle中的单属性索引的数据结构也不是很清楚,但我想可能是B树之类的吧,多属性索引用的是什么树结构呢?查询和插入的效率如何?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
hippie1024
2004-12-07
打赏
举报
回复
OTN网站
OCP的教材
ITPUB论坛一些朋友自己dump测试。
其实有些太internal的内容看起来挺枯燥,
一般是dump结果加数据结构去看问题。
理解到一定程度,使你可以清楚的去使用索引,可以对索引增长对性能的影响基本心里有数,就差不多了。毕竟还是为了应用么。
daydayupliq
2004-12-06
打赏
举报
回复
多个字段建立索引,应该不会是合并的~
应该要注意建立索引时字段的前后顺序,以及SQL调用时字段的前后顺序,以利于迅速定位记录~
panppl
2004-12-06
打赏
举报
回复
hippie1024(痞子) :
你是在什么文档中看到这些的?能不能告诉我?谢谢。
hippie1024
2004-12-06
打赏
举报
回复
关于B-Tree索引:
首先ORACLE会对所有索引列依次排序(就象wxdsun(森)说的那样),
然后根据前导列(第一列)构建B_tree(这也说明了为什么复合索引中只使用非前导列时无法使用索引范围扫描).
一般是ROOT-->branch-->leaf.(具体构建过程可以参考数据结构的书中B_树的部分).
索引具体的值(所有索引的列和ROWID)会有序的放在leaf中,leaf之间维护着一个双向链表。
当我们做index range扫描时,只要搜索到起点,再根据链表顺序遍历到终点即可。
panppl
2004-12-05
打赏
举报
回复
wxdsun(森) :
你是说b-tree的键值此时就是由“部门”和“时间”合并而成的一个数值,然后再根据这个数值建立b-tree?么?
wxdsun
2004-12-04
打赏
举报
回复
b-tree index 特点是排好顺序了, 如果是多个键值索引,排序的方式就是先排第一个,在排第二个
部门(asc) 时间(asc)
1 2004-11-1
1 2004-11-2
2 2004-10-1
2 2004-11-1
如果查询某个时间的所有部门的情况,这种索引能够提高效率,因为 index 是排好顺序的,
而且index一般要比表小,扫描起来快.你可以看看执行计划,访问这个index 应该是 index Full Scan
但是索引在处理 一个部门下所有时间情况 要比上面的要快,因为此时访问这个index 应该是 index range Scan 或者 index Unique Scan .
panppl
2004-12-03
打赏
举报
回复
b-tree怎么对多个键值建立索引?例如:索引为两列:(部门,时间),如果查询某个时间的所有部门的情况,这种索引能够提高查询效率么?
lwj_dxy
2004-11-30
打赏
举报
回复
up
老码猿
2004-11-29
打赏
举报
回复
看oracle 的代码吧,哈哈,还是看Berkerly DB的代码吧.
daydayupliq
2004-11-29
打赏
举报
回复
普通的复合索引还是b-tree索引的~
一般来讲:
OLTP联机事务处理模式多采用B-TREE索引;
OLAP数据决策/数据仓库多采用bit-map索引;
呵呵,还要再研究研究!
SQL(
oracle
)教程(PPT版)
Oracle
SQL是
Oracle
数据库系统所使用的特定版本,它提供了更高级的功能,如PL/SQL编程,
索引
优化,分区等,使得在
Oracle
环境
中
进行数据操作更为高效和灵活。 **SQL基础** 1. **数据类型**:SQL
中
的基本数据类型...
oracle
经典教程 免费)
- 如何在
Oracle
中
实现
面向对象的功能。 #### 第二十八章 其他数据库 - 介绍几种常见的非
Oracle
数据库系统。 - 各种数据库之间的差异及其适用场景。 以上知识点涵盖了
Oracle
数据库管理和开发
中
的核心概念和技术要点...
Oracle
中
索引
的原理
索引
是一种数据库结构,能够就数据库
中
的某列提供快速查询,而不用检索整个表格(官方的不行)。 在
Oracle
数据库
中
,存储的每一行数据都有一个 rowID 来标识。当
Oracle
中
存储着大量的数据时,意味着有大量的 ...
Oracle
索引
之Btree
索引
Oracle
中
常见有BTREE
索引
,位图
索引
和函数
索引
。 我们今天就先介绍一下这个BTREE
索引
吧。既然叫BTREE
索引
,那就从它的树结构说起: 建BTREE
索引
其实是先拿出所有数据排序,将有序的
索引
列的值和rowid存进
Oracle
的...
oracle
索引
概述,
索引
类型,
索引
监控以及限制
索引
使用的情况
oracle
索引
概述,
索引
类型,
索引
监控以及限制
索引
使用的情况
Oracle 高级技术
3,497
社区成员
18,709
社区内容
发帖
与我相关
我的任务
Oracle 高级技术
Oracle 高级技术相关讨论专区
复制链接
扫一扫
分享
社区描述
Oracle 高级技术相关讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章