ITPub博客

首页 > Linux操作系统 > Linux操作系统 > oracle 索引分类

oracle 索引分类

原创 Linux操作系统 作者:552119618 时间:2011-03-10 15:43:04 0 删除 编辑

B-TREE INDEX,B树索引:在创建索引时他是默认的索引类型,B树索引可以使单一列(简单)的索引,也可以是多个列(组合/复合)的索引。最多可以包括32列。适合:1,访问表中占很小比例的行,这样就可以使用索引快速定位。 2,根本不访问表,所需查询的数据全部在索引中,比如查询的列就是索引,这样直接访问索引就可以得到结果。,多使用在OLTP系统中。

BITMAP-INDEX,位图索引:是在列的值重复的非常多的情况下使用。当大多数条目比不会向位图添加新的值时,位图索引在加载表时比B树索引做的好。由于位图索引最大的用处就是当列值有很多重复的时候,所以他不能被声明成唯一索引。当使用alter table修改有位图索引的列的时候,位图索引失效,需重建索引。位图索引里是101010这类的,所以是不包含任何列数据的。

反转建索引:当载入一些有序索引的时候,索引集中分布,如果数据使用的索引集中在一个数据块则会发生争用,这是可以将索引反转,reverse。

hash索引:使用hash索引必须使用hash集群。建立cluster的同时也建立了hash索引。

function index ,基于函数的索引:当查询的列上使用了函数之后就不能使用原来的索引了,但是可以建立函数索引,使建立在函数上的索引可以使用。在优化器中,必须将参数QUERY_REWRITE_ENABLED设为true。

分区索引:本地分区索引,全局分区索引。

本地分区索引:可以使用与表相同的分区键和范围界限来对本地索引分区。每个本地索引的分区只包含了他所关联的表分区的键和rowid。本地分区索引又分为有前缀索引和无前缀索引。有前缀索引:包含了来自分区键的键,并把它们作为索引的前导,相当于索引的分区都使用表相同范围的界限来创建的。没有包含在where子句中的值的分区是不会被访问到的,这样也提高了子句的性能。  无后缀索引:可以在表的任何一列建立无前缀的索引,但是索引的每个分区只包含表的相应分区的兼职。

全局分区索引是在一个索引分区包含来自多个表分区的键。在建立全局分区索引的时候,必须定义分区键的范围。只能是B树索引。如果一个分区被截取,增加,分割,删除等,就必须重建索引。全局有前缀索引没经过对等分区。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/25155154/viewspace-689023/,如需转载,请注明出处,否则将追究法律责任。

上一篇: oracle 表连接
请登录后发表评论 登录
全部评论

注册时间:2011-02-25

  • 博文量
    8
  • 访问量
    4689