天天看點

oracle的适用範圍,ORACLE三大索引适用範圍

B樹索引(B-Tree index)

适用範圍:1)OLTP系統中

2)主鍵、唯一性限制

3)重複度非常低的字段

不适用範圍:重複度非常高的字段

特性:1)執行效率非常高

2)查詢時間基本不受資料量的影響

3)如果重複度非常高,使用B-Tree索引還沒有全盤掃描效率高

位圖索引(Bitmap index)

适用範圍:1)OLAP系統中

2)主要是重複資料導緻的查詢性能低的問題,用來彌補B-Tree性能低的問題

3)使用OR\AND這類邏輯操作

不适用範圍:大量DML操作、重複率較低的字段

特性:1)适合在索引字段間進行OR\AND這類邏輯運算

2)位圖索引占用的空間比BTree索引用的少的多

3)位圖索引不适用于大量的DML操作(除select外),因為每個DML操作對應的位圖索引鍵值對應多條資料,修改時鍵值會被上鎖,如果此時其他使用者需要更改資料,就會造成阻塞。

全文索引(Text index)

适用範圍:1)模糊查詢

2)資料庫空間種族,因為全文索引比較占用空間

3)語言文字範疇

不适用範圍:全文索引占用大量的空間,不适合在硬碟資源緊張的庫中(原資料的1.5倍)

BUG比較多,維護困難

特性:1)适用于不變的資料,因為DML的新資料,不會在全文索引中包含

2)由于全文索引不是基于事物的,一旦有DML,就需要重新建構這個全文索引:alter index t_idx rebuild parmeters('sync');