Greenplum索引設計的規範

chenfeng發表於2020-11-05

1.   原則上,資料倉儲中的資料表不建立索引。只有提供給外部使用者訪問的表,才考慮按使用者訪問特性,針對常用查詢欄位建立索引;

2.   對於跑批的中間表和臨時表,不允許建立索引;

3.   對於記錄數在百萬級別以下的小表,建議不使用索引;

4.   建立組合索引時,必須將經常作為查詢條件且可選擇性最大的列設定為索引的首列;

5.   不允許建立冗餘索引和重複索引;

6.   對於區別度高的索引,應使用B-tree索引,例如賬號、合同號等等;對於區別度低的索引,應使用Bitmap索引,

例如機構、產品型別等等;

7.   建立組合索引時,建議列數不要超過5列;

8.   每張資料表的索引數,建議不超過5個;

9.   在建立和更新索引後,必須執行Analyze操作,更新索引的統計資訊;

10.  在對大表進行資料載入的時候,如果存在索引,建議先刪除索引,待資料載入完成,再重新建立索引;

11.  對頻繁更新的資料表,應定期對其執行reindex 操作,以重建索引;

12.  如果在分割槽表中使用了索引,不允許在子表上單獨建立和修改索引;通常,刪除頂級分割槽的索引,系統會自動刪除相關

子表的索引,但如果子表的索引有缺失,將不能自動刪除子表的索引,需要挨個手動刪除。

13.  確認不再使用的索引必須刪除.

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/15498/viewspace-2732341/,如需轉載,請註明出處,否則將追究法律責任。

相關文章