专栏首页FREE SOLOOracle索引种类介绍

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集群。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • MySQL性能优化

    5、Hash索引与BTree索引区别。(MyISAM与InnoDB不支持Hash索引)

    葆宁
  • 数据库优化之(创建索引、分表、读写分离、缓存)

    索引(Index)是帮助DBMS高效获取数据的数据结构。 分类:普通索引/唯一索引/主键索引/全文索引。

    葆宁
  • SQL优化

    普通索引: 即针对数据库表创建索引; 唯一索引: 与普通索引类似,不同的就是:MySQL数据库索引列的值必须唯一,但允许有空值; 主键索引: 它是一种特殊的...

    葆宁
  • MySQL索引入门简述

    用来加快查询的技术很多,其中最重要的是索引。通常索引能够快速提高查询速度。如果不适用索引,MYSQL必须从第一条记录开始读完整个表,直到找出相关的行。表越大,花...

    wangxl
  • 图解 MySQL 索引:B-树、B+树

    看了很多关于索引的博客,讲的大同小异。但是始终没有让我明白关于索引的一些概念,如B-Tree索引,Hash索引,唯一索引....或许有很多人和我一样,没搞清楚概...

    芋道源码
  • 为什么大家都说 SELECT * 效率低?

    版权声明:本文为CSDN博主「_陈哈哈」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。原文链接:https://blog.c...

    Java技术栈
  • SELECT * 效率低,面试官:为什么

    陈小哈:“SELECT * 它好像比写指定列名多一次全表查询吧,还多查了一些无用的字段。”

    Java小咖秀
  • Mysql索引

    索引是对数据库表中的一列或多列的值进行排序的一种结构,使用索引可以提高数据库中特定数据的查询速度。

    无邪Z
  • 别再一知半解啦!索引其实就这么回事!

    索引的概念基本所有人都会遇到过,就算没有了解过数据库中的索引,在生活中也不可避免的接触到。比方说书籍的目录,字典的查询页,图书馆的科目检索等等。其实这些都是一种...

    cxuan
  • 别再一知半解啦!索引其实就这么回事!

    索引的概念基本所有人都会遇到过,就算没有了解过数据库中的索引,在生活中也不可避免的接触到。比方说书籍的目录,字典的查询页,图书馆的科目检索等等。其实这些都是一种...

    五分钟学算法

扫码关注云+社区

领取腾讯云代金券