修改 WLM 組態 - Amazon Redshift

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

修改 WLM 組態

修改 WLM 組態最簡單的方式是使用 Amazon Redshift 主控台。您也可以使用AWS CLI或 Amazon Redshift API。

在自動和手動 WLM 之間切換叢集時,您旳叢集會進入 pending reboot 狀態。變更要在下次叢集重新啟動後才會生效。

如需修改 WLM 組態的詳細資訊,請參設定工作負載管理中的Amazon Redshift 叢集管理指南。

從手動 WLM 遷移至自動 WLM

若要最大化系統輸送量並最有效地使用資源,我們建議您為佇列設定自動 WLM。請考慮採用以下方法來設定從手動 WLM 順暢過渡到自動 WLM。

若要從手動 WLM 遷移到自動 WLM 並使用查詢優先順序,我們建議您建立新的參數群組,然後將該參數群組附加到叢集。如需詳細資訊,請參閱「」Amazon Redshift 參數組中的Amazon Redshift 叢集管理指南。

重要

若要變更參數群組或從手動切換到自動 WLM,需要重新啟動叢集。如需詳細資訊,請參閱 WLM 動態和靜態組態屬性

我們使用一個範例,其中有三個手動 WLM 佇列。一個用於 ETL 工作負載、一個用於分析工作負載,一個用於資料科學工作負載。ETL 工作負載每 6 小時執行一次,分析工作負載全天執行,資料科學工作負載可能隨時激增。使用手動 WLM,您可以根據對於每個工作負載對業務重要性的理解,來指定每個工作負載佇列可取得的記憶體和並行。指定記憶體和並行不僅很難釐清,也會導致叢集資源被靜態分割,因而在僅執行一部分工作負載時造成浪費。

您可以將自動 WLM 搭配查詢優先順序一起使用,來指示工作負載的相對優先順序,以避免上述問題。對於這個範例,請依照下列步驟進行:

  • 建立一個新參數群組並切換到 Auto WLM (自動 WLM) 模式。

  • 為三個工作負載各別新增隊列:ETL 工作負載、分析工作負載和資料科學工作負載。針對與 Manual WLM (手動 WLM) 模式搭配使用的每一個工作負載使用相同的使用者群組。

  • 將 ETL 工作負載的優先順序指定為 High、分析工作負載的優先順序指定為 Normal、資料科學的優先順序指定為 Low。這些優先順序反映了不同工作負載或使用者群組的業務優先順序。

  • 或者,您也可以為分析或資料科學佇列啟用並行擴展,以便在即使 ETL 工作負載每 6 小時執行一次時,這些佇列中的查詢仍能獲得一致的效能。

運用查詢優先順序,當只有分析工作負載在叢集上執行時,它可取得整個系統,產生高輸送量和最佳的系統使用率。不過,當 ETL 工作負載啟動時,它會獲得正確的權限,因為它具有更高的優先順序。做為 ETL 工作負載執行的查詢,除了在被核准之後可獲得優先資源分配,也能優先獲得許可。因此,無論系統上有哪些其他項目正在執行,ETL 工作負載都能如預期地執行。高優先順序工作負載能獲得可預測的效能,代價是其他較低優先順序工作負載的執行時間更久,因為它們的查詢要等候較重要的查詢先完成;或者,當它們與較高優先順序的查詢同時執行時,所獲得的資源較少。Amazon Redshift 使用的排程演算法可確保較低優先順序的查詢不會面臨資源匱乏,而是繼續取得進展,儘管速度較慢而已。

注意
  • 逾時欄位不適用於自動 WLM。請改用 QMR 規則 query_execution_time。如需詳細資訊,請參閱 WLM 查詢監控規則

  • QMR 動作 HOP 不適用於自動 WLM。請改用 change priority 動作。如需詳細資訊,請參閱 WLM 查詢監控規則

  • 在參數群組中,避免混合使用自動 WLM 佇列和手動 WLM 佇列。而是在遷移到自動 WLM 時建立新的參數群組。