您好,欢迎来到爱go旅游网。
搜索
您的当前位置:首页各种Oracle索引类型介绍

各种Oracle索引类型介绍

来源:爱go旅游网
各种Oracle索引类型介绍

逻辑上:

Single column 单⾏索引Concatenated 多⾏索引Unique 唯⼀索引

NonUnique ⾮唯⼀索引Function-based函数索引Domain 域索引

物理上:

Partitioned 分区索引

NonPartitioned ⾮分区索引B-tree:

Normal 正常型B树Rever Key 反转型B树 Bitmap 位图索引

索引结构:B-tree:

适合与⼤量的增、删、改(OLTP);不能⽤包含OR操作符的查询;适合⾼基数的列(唯⼀值多)典型的树状结构;每个结点都是数据块;

⼤多都是物理上⼀层、两层或三层不定,逻辑上三层;叶⼦块数据是排序的,从左向右递增;在分⽀块和根块中放的是索引的范围;Bitmap:

适合与决策⽀持系统;做UPDATE代价⾮常⾼;⾮常适合OR操作符的查询;

基数⽐较少的时候才能建位图索引;

树型结构:索引头

开始ROWID,结束ROWID(先列出索引的最⼤范围)BITMAP

每⼀个BIT对应着⼀个ROWID,它的值是1还是0,如果是1,表⽰着BIT对应的ROWID有值

1. b-tree索引

Oracle数据库中最常见的索引类型是b-tree索引,也就是B-树索引,以其同名的计算科学结构命名。CREATE INDEX语句时,默认就是在创建b-tree索引。没有特别规定可⽤于任何情况。2. 位图索引(bitmap index)

位图索引特定于该列只有⼏个枚举值的情况,⽐如性别字段,标⽰字段⽐如只有0和1的情况。3. 基于函数的索引

⽐如经常对某个字段做查询的时候是带函数操作的,那么此时建⼀个函数索引就有价值了。4. 分区索引和全局索引

这2个是⽤于分区表的时候。前者是分区内索引,后者是全表索引5. 反向索引(REVERSE)

这个索引不常见,但是特定情况特别有效,⽐如⼀个varchar(5)位字段(员⼯编号)含值(10001,10002,10033,10005,10016..)

这种情况默认索引分布过于密集,不能利⽤好服务器的并⾏

但是反向之后10001,20001,33001,50001,61001就有了⼀个很好的分布,能⾼效的利⽤好并⾏运算。6.HASH索引

HASH索引可能是访问数据库中数据的最快⽅法,但它也有⾃⾝的缺点。集群键上不同值的数⽬必须在创建HASH集群之前就要知道。需要在创建HASH集群的时候指定这个值。使⽤HASH索引必须要使⽤HASH集群。

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- igat.cn 版权所有 赣ICP备2024042791号-1

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务