How to, 利用Foglight找出MS SQL效能不佳的Index

How to, 利用Foglight找出MS SQL效能不佳的Index

Foglight監控資料庫有很多強大的功能,除了利用Foglight進行MS SQL資料庫效能監控之外,您也可以自訂SQL script進行其它效能資訊查詢。

本文章讓您了解如何利用Foglight PI for SQL Server的User Defined功能。


1.依下圖執行 Database | 選定Database Instance前的checkbox | Settings | Administration

2.選定如下圖的User-defined Collections

3.按下Add按鈕新增User-defined Collection。
第一次設定會出現如下圖要求設定執行User-defined Collection的連線認證,請按下Edit Credentials這個按鈕。

4.本步驟4或步驟5選其中一個執行設定資料庫連線認證步驟,這邊設定利用目前Foglight用來監控資料庫同一帳號,若您要利用其他帳號連線資料庫,請利用步驟5進行設定。



5.此步驟設定以非原本Foglight監控DB的其他帳號來執行User-defined Collection,設定完成請按OK按鈕。


6.接下來,請按Set Details按鈕設定收集資料的SQL Statement。


7.如下圖,輸入此Collection的名稱與說明及查詢的SQL Statement,設定完成後按下Verify按鈕。


8.若Verify沒問題,則顯示如下圖畫面。按下Close按鈕繼續。

9.接著要設定每個查詢欄位的Type。

10.如下圖,點選第一個欄位database_name,很明顯畫面上顯示Column Type為STRING,按下欄位Type下面的Click to select,設定Type為String,接著按下Set按鈕設定。

11. 接著點選第二個欄位table_name,設定本欄位為unique key值,Type為String,,接著按下Set按鈕設定。(請注意,若您的查詢SQL Statement欄位中有unique key值,則在此處也需手動設定) 

12. 接著點選第三個欄位index_name,設定本欄位為unique key值,Type為String,,接著按下Set按鈕設定。(請注意,若您的查詢SQL Statement欄位中有unique key值,則在此處也需手動設定)

13.下圖設定另一個查詢欄位user_seeks,可看到Column Type為Double。

14.如圖,設定Type為Double,接著按下Set按鈕設定。

15.下圖設定另一個查詢欄位lastuser_seek,可看到Column Type為Date,設定Type為Date,接著按下Set按鈕設定。

16.如下圖,接著按下Set按鈕設定。

17.下圖所有查詢的欄位都完成Type設定後,若要調整資料收集頻率,可按下下圖的Online Frequency, Offline Frequency或Real-Time Frequency上的數字直接修改設定,數字單位為秒數。

18.設定完成後,按下OK按鈕關閉視窗。

19.回到原本設定User-Defined Collections最開始的網頁,接著按下Save changes按鈕儲存設定。

20.儲存完成後,Save changes按鈕會顯示為disabled的狀態。


21.將畫面切換到查詢User-defined | Collections功能。

22.此時可看到在User-defined Collections功能畫面顯示剛剛設定的查詢Identifies underutilized indexes已顯示在左邊的Collections下方了。

若您使用了User Defined功能,卻老是覺得為何我永遠只能查出一筆資料,而不是想要的多筆資料的查詢結果,相信利用上列步驟您可能了解您的問題在哪裡,也更了解Foglight在監控資料庫方面更強的應用。

留言

這個網誌中的熱門文章

MSSQL 瘦身 : 壓縮資料庫

[SAP] 什麼是SAP? R/3 and S/4 是什麼意思? 差別在哪? (勿轉臉書)

InTrust 自動幫您蒐集 AD 帳號的登入/登出紀錄,長時間保存並保護