Oracle的索引类型

12月 31st, 2009 | Posted by | Filed under 数据库

本文内容遵从CC版权协议, 可以随意转载, 但必须以超链接形式标明文章原始出处和作者信息及版权声明
网址: http://www.penglixun.com/tech/database/oracle_index_type.html

荣耀属于:Tomas Zhang

逻辑上:

  • 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有值;
标签: ,
目前还没有任何评论.