跳转到内容

Oracle 和 DB2,比较和兼容性/存储模型/索引/Oracle

来自 Wikibooks,开放世界中的开放书籍

在 Oracle 中,索引存储在他们自己的段中,与他们索引的表分开,并且他们通过指向块头中的 rowid 来识别表行。索引由优化器使用和维护。

从之前关于 Oracle 的物理存储部分,可以对表和集群建立索引。集群索引不同于表索引,因为索引必须在将数据插入表之前存在,并且不能在没有集群索引的情况下访问集群数据。由于集群的优势在于一个块获取可以检索一组逻辑相关(因此物理相邻)的数据,因此集群索引指向一个块(而不是一行)。

位图索引

[编辑 | 编辑源代码]

位图索引(在 Oracle 7 中引入)在数据仓库应用程序中特别有用,在这些应用程序中,数据通常是根据广泛的标准检索的,例如“去年来自加州的订单有多少”。位图索引可以与标准表索引、集群索引和哈希集群一起使用。位图索引在空间和性能方面比其他索引有显著优势。位图索引使用位数组(位图)。虽然常规索引通常会唯一地标识一行,但当要查找所有相同列索引值的列时,可以使用位图。例如,如果在“California”上创建了一个位图索引,则将使用与该位图的逻辑位比较来快速识别“California”的所有出现情况,而不是字符串比较。位图索引由 DBMS 在插入、删除和修改时维护。

华夏公益教科书