Oracle 索引的分类

看到 itpub 论坛上的一个帖子,对 Oracle 的索引分类总结得言简意赅,于是收藏过来。又补充了一点RAC用到的反向索引的东西。

逻辑上:  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有值; 反向 B-tree:  适用于 OPS 或 RAC 环境; 反转了索引码中每列的字节,降低索引叶块的争用; 参考 http://www.stcore.com/oracle/2006-06-15/1150309026d27150.html

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

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏xingoo, 一个梦想做发明家的程序员

oracle数据结构

 数据类型: 1 字符数据:CHAR VARCHAR NCHAR NVARCHAR2 LONG CLOB NCLOB  2 数字数据类型:NUMBER 唯一用来...

1906
来自专栏Linyb极客之路

数据库优化面试题

在 DB2 数据库中索引采用的是 B+ 树的结构,索引的叶子节点上包含索引键的值和一个指向数据地址的指针。DB2 先查询索引,然后通过索引里记录的指针,直接访问...

492
来自专栏Java学习之路

Hibernate学习---单表查询

我们都知道SQL是非常强大的,为什么这么说呢?相信学过数据库原理的同学们都深有体会,SQL语句变化无穷,好毫不夸张的说可以实现任意符合我们需要的数据库操作,既然...

2507
来自专栏杨建荣的学习笔记

怎样突破表名30个字符的限制(r2笔记51天)

根据oracle的规范,对象的长度最大为30位,也就是说,在平时的使用中如果碰到表名长度大于30位,首先oracle是不答应的,它会提示idnetifier t...

2526
来自专栏Kevin-ZhangCG

SQL优化总结之一

1905
来自专栏james大数据架构

你真的会玩SQL吗?表表达式,排名函数

你真的会玩SQL吗?系列目录 你真的会玩SQL吗?之逻辑查询处理阶段 你真的会玩SQL吗?和平大使 内连接、外连接 你真的会玩SQL吗?三范式、数据完整性 你真...

1949
来自专栏AhDung

【SQL】分配函数一枚[AllotToTable]

像这种分配法我估计在多种场景都有在用,它应该有个名堂的,只是我不知道,还请知道的猿友告知,谢谢。

751
来自专栏王小雷

SAS进阶《深入解析SAS》之Base SAS基础、读取外部数据到SAS数据集

SAS进阶《深入解析SAS》之Base SAS基础、读取外部数据到SAS数据集 前言:在学习完《SAS编程与商业案例》后,虽然能够接手公司的基本工作,但是为了更...

1837
来自专栏圣杰的专栏

SQL递归查询知多少

最近工作中遇到了一个问题,需要根据保存的流程数据,构建流程图。数据库中保存的流程数据是树形结构的,表结构及数据如下图: ? 仔细观察表结构,会发现其树形结构的特...

2678
来自专栏影子

PostgreSQL>窗口函数的用法

转载请注明出处:https://www.cnblogs.com/funnyzpc/p/9311281.html

811

扫码关注云+社区