首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> DB2 資料庫 >> DB2 教學

DB2 資料庫效能調優必掌握的六大核心策略(進階版)

     編輯:DB2 教學

策略一:索引建立時機抉擇

插入前建索引:索引隨資料同步更新,需大量日誌空間,速度較慢,可採用 NOT LOGGED INITIALLY 載入。
插入後建索引:統計資訊未更新導致執行計畫不走索引,需跑 RUNSTATS ON TABLE ... AND INDEXES ALL 更新統計後方能用上索引,速度最快。

策略二:大表置於多節點表空間並建好索引

單節點表空間 (如 DIM) 受限於 2 CPU/4 GB 記憶體。大表應建立分區鍵置於多節點表空間,32 節點並行檢索再匯總至節點 0,速度極快。並行之外再建好索引,速度更快。

策略三:採用 NOT LOGGED INITIALLY 大量載入

預設 DML 記日誌保一致性與可回滾。高併發/大操作易導致日誌爭用變慢。NOT LOGGED INITIALLY 日誌用量極少,但失敗無法回滾,只能刪表重建。

策略四:表級鎖減少鎖資源消耗

DB 鎖數量有上限,每鎖佔記憶體。鎖過多導致資源緊張。設定表級鎖可大幅減少鎖數量。

策略五:臨時表精簡化

程式常為提速將資料先放入臨時表,但常塞入大量未用資料導致臨時表膨脹。盡量只插入必要資料並善用索引,大幅提速。

策略六:左連接條件下推

ON 條件中僅寫關聯條件與對左表的限制,主表限制勿寫在 ON 裡。寫在裡面不但極慢,還可能產生莫名結果。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved