Oracle 和 DB2,比較和相容性/儲存模型/索引/Oracle
外觀
在 Oracle 中,索引儲存在他們自己的段中,與他們索引的表分開,並且他們透過指向塊頭中的 rowid 來識別錶行。索引由最佳化器使用和維護。
從之前關於 Oracle 的物理儲存部分,可以對錶和叢集建立索引。叢集索引不同於表索引,因為索引必須在將資料插入表之前存在,並且不能在沒有叢集索引的情況下訪問叢集資料。由於叢集的優勢在於一個塊獲取可以檢索一組邏輯相關(因此物理相鄰)的資料,因此叢集索引指向一個塊(而不是一行)。
點陣圖索引(在 Oracle 7 中引入)在資料倉庫應用程式中特別有用,在這些應用程式中,資料通常是根據廣泛的標準檢索的,例如“去年來自加州的訂單有多少”。點陣圖索引可以與標準表索引、叢集索引和雜湊叢集一起使用。點陣圖索引在空間和效能方面比其他索引有顯著優勢。點陣圖索引使用位陣列(點陣圖)。雖然常規索引通常會唯一地標識一行,但當要查詢所有相同列索引值的列時,可以使用點陣圖。例如,如果在“California”上建立了一個位圖索引,則將使用與該點陣圖的邏輯位比較來快速識別“California”的所有出現情況,而不是字串比較。點陣圖索引由 DBMS 在插入、刪除和修改時維護。