WLM 系統資料表和檢視 - Amazon Redshift

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

WLM 系統資料表和檢視

WLM 根據內部定義的WLM服務類別設定查詢佇列。Amazon Redshift 會根據這些服務類別以及WLM組態中定義的佇列來建立多個內部佇列。在系統資料表中,佇列服務類別這兩個詞通常互通使用。超級使用者佇列使用服務類別 5。使用者定義的查詢使用服務類別 6 以上。

您可以使用 WLM特定的系統資料表來檢視查詢、佇列和服務類別的狀態。查詢下列系統資料表來執行下列動作:

  • 檢視工作負載管理員正在追蹤哪些查詢及已配置什麼資源。

  • 查看已將查詢指派給哪一個佇列。

  • 檢視工作負載管理員目前追蹤之查詢的狀態。

資料表名稱 描述
STL_WLM_ERROR 包含 WLM相關錯誤事件的日誌。
STL_WLM_QUERY 列出 正在追蹤的查詢WLM。
STV_WLM_CLASSIFICATION_CONFIG 顯示 目前的分類規則WLM。
STV_WLM_QUERY_QUEUE_STATE 記錄查詢佇列的目前狀態。
STV_WLM_QUERY_STATE 提供 追蹤的查詢目前狀態的快照WLM。
STV_WLM_QUERY_TASK_STATE 包含查詢任務的目前狀態。
STV_WLM_SERVICE_CLASS_CONFIG 記錄 的服務類別組態WLM。
STV_WLM_SERVICE_CLASS_STATE 包含服務類別的目前狀態。
STL_WLM_RULE_ACTION 記錄因與使用者定義佇列相關聯的WLM查詢監控規則所產生的動作詳細資訊。
STV_WLM_QMR_CONFIG 記錄WLM查詢監控規則的組態 (QMR)。

您可以在系統資料表中使用任務 ID 來追蹤查詢。以下範例示範如何取得最近提交之使用者查詢的任務 ID:

select task from stl_wlm_query where exec_start_time =(select max(exec_start_time) from stl_wlm_query); task ------ 137 (1 row)

下列範例顯示目前正在執行或在各種服務類別 (佇列) 中等待的查詢。此查詢很適用於追蹤 Amazon Redshift 的整體並行工作負載:

select * from stv_wlm_query_state order by query; xid |task|query|service_| wlm_start_ | state |queue_ | exec_ | | |class | time | |time | time ----+----+-----+--------+-------------+---------+-------+-------- 2645| 84 | 98 | 3 | 2010-10-... |Returning| 0 | 3438369 2650| 85 | 100 | 3 | 2010-10-... |Waiting | 0 | 1645879 2660| 87 | 101 | 2 | 2010-10-... |Executing| 0 | 916046 2661| 88 | 102 | 1 | 2010-10-... |Executing| 0 | 13291 (4 rows)

WLM 服務類別 IDs

下表列出IDs指派給服務類別的 。

ID 服務類別
1–4 保留以供系統使用。
5 供超級使用者佇列使用。
6–13 由WLM組態中定義的手動WLM佇列使用。
14 供短期查詢加速使用。
15 保留給 Amazon Redshift 執行的維護活動。
100–107 auto_wlm 為 true 時,由自動WLM佇列使用。