本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用 Performance Insights 來檢視暫存檔使用情況
您可以使用 Performance Insights,透過開啟指標 temp_bytes 和 temp_files 來檢視暫存檔的使用情況。Performance Insights 中的檢視不會顯示產生暫存檔的特定查詢,但是,當您將 Performance Insights 與針對 pg_ls_tmpdir 顯示的查詢結合時,您可以疑難排解、分析和判斷查詢工作負載中的變更。
-
在 [績效詳情] 儀表板中選擇管理指標。
-
選擇資料庫指標,並選取 temp_bytes 和 temp_files 指標,如下方影像所示。
-
在最高 SQL索引標籤中,選擇偏好設定圖示。
-
在偏好設定視窗中,開啟最高 SQL索引標籤中顯示的下列統計資料,然後選擇繼續。
-
Temp writes/sec
-
Temp reads/sec
-
Tmp blk write/call
-
Tmp blk read/call
-
-
暫存檔在與針對
pg_ls_tmpdir顯示的查詢組合時會被劃分,如以下範例所示。
當工作負載中最常用的查詢經常建立暫存檔案時,就會發生 IO:BufFileRead 和 IO:BufFileWrite 事件。您可以使用 Performance Insights,透過檢閱「資料庫負載」和「最高 SQL」區段中的「平均作用中工作階段」(AAS),找出最常在 IO:BufFileRead 和 IO:BufFileWrite 上等待的查詢。
如需如何使用 Performance Insights 來分析各等待事件的最常用查詢和負載的詳細資訊,請參閱 最高 SQL 索引標籤概觀。您應找出並調整造成暫存檔案使用量及相關等待事件增加的查詢。如需這些等待事件和修補的詳細資訊,請參閱 IO:BufFileRead 和 IO:BufFileWrite。
注意
work_mem
最佳實務是,當您有具有多個聯結和排序的大型報表時,請使用 SET work_mem 命令在工作階段層級設定此參數。然後,變更僅套用於目前工作階段,不會全域變更該值。