溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何創建高效索引

發布時間:2020-07-22 16:45:25 來源:網絡 閱讀:11716 作者:1016181692 欄目:關系型數據庫

索引創建指南

1、頻繁在where 從句中出現

2、頻繁在join關聯字段中

3、選擇具有高選擇性的鍵

4、別在具有很少的不同值的鍵上使用B-tree索引。這類鍵或表達式經常具有較差選擇性,所以不會是性能有更多的優化,

5、除非經常選擇的值比其他的值出現的頻次要低。要是這種情況,可有效使用位圖索引,但是如果在高并發的OLAP系統,位圖索引要是經常被改動,則不要使用位圖索引。

6、不要在常被修改到字段上建索引。

7、不要對僅出現在where從句中的函數或表達式中的字段建索引,要么就建函數索引

8、可考慮在外鍵上建索引。

9、創建一個索引時,評估該索引給查詢帶來的性能優化是否比因其而引起INSERT,UPDATE,DELETE操作的性能下降以及索引占用的空間更要值得。

10、復合索引

提高了選擇性(有時,組合的選擇性要比單個列的選擇性要高)

降低I/O(如果鎖被查詢選擇的列都在復合索引中,那Oracle可通過訪問索引來返回值而不需要訪問表。)

經常在WHERE從句中通過以AND組合出現,并且尤其是組合后比單一鍵選擇性更高,該組合上可考慮常見復合索引

如果查詢的列是組合列的子集,可考慮基于這些鍵建復合索引

索引的順序:

該索引能夠使WHERE從句可組成索引的前導列

如果WHERE從句中有幾個鍵非常高頻,可僅就這幾個列鍵建復合索引

如果所有的列出現在WHERE的頻率都一樣并且數據基于其中一列已物理排序,那么可將此列作為復合索引的第一個key。

使用非唯一性索引實現唯一性:
你可以用表的已存在的在UNIQUE約束字段或PRIMARY KEY約束字段上的非唯一性索引強制實現唯一性。這樣做的好處在于即使約束DISABLE了,

該索引仍然有效。所以,可讓一個DISABLED的UNIQUE或PRIMARY KEY重新ENABLE,不需要再重建唯一性索引。這樣可以在大數據表的ENABLE

操作中節省很多時間。


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女