2022年5月30日 星期一

SQL Server Query Performance Tuning

 SQL Server Query Performance Tuning

  1. 執行過久的SQL Query

甲、分析方法與工具

    SSMS,SQL Server Profiler

    分析執行計畫

乙、優化方法

  • 移除不必要的JOIN
  • 不必要的欄位,只留下需要的欄位

  1. 分析執行很久的SQL Query是否真的有使用到INDEX

甲、修改資料型態

  1. 分析執行很久的SQL Query是否可以拆解成多個SQL Query分次執行或將資料取回程式端運算
  2. 分析執行很久的SQL Query增修INDEX
  3. 分析索引是否有破碎,近期重建或重組嚴重破碎的INDEX
  4. 縮減資料量,針對執行很久的SQL Query所使用到的TABLE的資料執行定期的封存作業,例如: 每個月底對訂單TABLE,搬移一年前的資料到訂單歷史TABLE,然後在訂單TABLE刪除這些資料。
  5. 實體架構調整:

甲、  資料表重新匯入到多個實體檔的檔案群組

  1. 評估建置Partition Table
  2. 分析執行當下是否CPU滿載,分析DMVPerformance counter,判斷是否需要增加CPU
  3. 分析執行當下Performance counter,判斷是否需要增加記憶體


沒有留言:

SQL Server Planning, Pricing and License

  Server-CALs授權模式 1.需購買的量應該是所有終端用戶的電腦 例如:一台Data warehouse主機 與 一台Web報表主機,但公司有50人或電腦會連進Web報表主機開啟報表,則應該每一台用戶端電腦都需要有CALs授權,Data warehouse主機購買Ser...