使用 Amazon Redshift Serverless 監控查詢和工作負載 - Amazon Redshift

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

使用 Amazon Redshift Serverless 監控查詢和工作負載

使用 Amazon Redshift Serverless 監控查詢和工作負載

您可以使用所提供的系統檢視來監控 Amazon Redshift Serverless 查詢和工作負載。

授予用來監控查詢的存取權

超級使用者可以為非超級使用者的使用者提供存取權,讓非超級使用者可以針對所有使用者執行查詢監控。首先,請為使用者或角色新增政策,以提供查詢監控存取權。然後,向使用者或角色授予查詢監控許可。

新增查詢監控政策
  1. 選擇https://console.aws.amazon.com/iam/

  2. Access management (存取管理) 下,請選擇 Policies (政策)。

  3. 選擇 建立政策

  4. 選擇JSON並貼上下列原則定義。

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "redshift-data:ExecuteStatement", "redshift-data:DescribeStatement", "redshift-data:GetStatementResult", "redshift-data:ListDatabases" ], "Resource": "*" }, { "Effect": "Allow", "Action": "redshift-serverless:GetCredentials", "Resource": "*" } ] }
  5. 選擇檢閱政策

  6. 對於 Name (名稱),輸入政策的名稱,例如 query-monitoring

  7. 選擇 建立政策

建立政策後,就可以授予適當許可。

若要提供存取權,請新增權限至您的使用者、群組或角色:

  • 使用者和群組位於 AWS IAM Identity Center:

    建立權限合集。請按照 AWS IAM Identity Center 使用者指南 中的 建立權限合集 說明進行操作。

  • IAM透過身分識別提供者管理的使用者:

    建立聯合身分的角色。請遵循《使用指南》中的〈為第三方身分識別提供IAM者 (同盟) 建立角色〉中的指示進行。

  • IAM使用者:

    • 建立您的使用者可擔任的角色。請按照《用戶南》中的「為IAM用戶創建角色」中的IAM說明進行操作。

    • (不建議) 將政策直接附加至使用者,或將使用者新增至使用者群組。請遵循《使用指南》中的「向使用者 (主控台) 新增權限」IAM 中的示進行。

向使用者授予查詢監控許可

具有 sys:monitor 許可的使用者可以檢視所有查詢。此外,具有 sys:operator 許可的使用者可以取消查詢、分析查詢歷史記錄,以及執行清空操作。

  1. 輸入下列命令來提供系統監控存取權,其中 user-name 是您想要為其提供存取權之使用者的名稱。

    grant role sys:monitor to "IAM:user-name";
  2. (選擇性) 輸入下列命令來提供系統操作人員存取權,其中 user-name 是您想要為其提供存取權之使用者的名稱。

    grant role sys:operator to "IAM:user-name";
向角色授予查詢監控許可

使用者若有具有 sys:monitor 許可的角色,便可以檢視所有查詢。此外,使用者若有具有 sys:operator 許可的角色,便可以取消查詢、分析查詢歷史記錄,以及執行清空操作。

  1. 輸入下列命令來提供系統監控存取權,其中 role-name 是您想要為其提供存取權之角色的名稱。

    grant role sys:monitor to "IAMR:role-name";
  2. (選擇性) 輸入下列命令來提供系統操作人員存取權,其中 role-name 是您想要為其提供存取權之角色的名稱。

    grant role sys:operator to "IAMR:role-name";

監控檢視

監控檢視是 Amazon Redshift Serverless 中用來監控查詢和工作負載用量的系統檢視。這些檢視位於 pg_catalog 結構描述中。可用的系統檢視旨在為您提供要監控 Amazon Redshift Serverless 所需的資訊,這比已佈建叢集所需的資訊簡單得多。系SYS統檢視的設計是為了與 Amazon Redshift 無伺服器搭配使用而設計。若要顯示這些檢視提供的資訊,請執行SQLSELECT陳述式。

定義系統檢視是為了支援下列監控目標。

工作負載監控

您可以監控一段時間內的查詢活動,以便執行下列操作:

  • 瞭解工作負載模式,以便瞭解什麼是正常 (基準) 以及商業服務等級協定 (SLAs) 中的內容。

  • 快速識別偏離正常的情況,這可能是短暫的問題或需要採取進一步行動的事件。

資料載入與卸載的監控

將資料移入和移出 Amazon Redshift Serverless 是一項關鍵功能。您可以使用COPY和載UNLOAD入或卸載資料,而且您必須密切監控傳輸的位元組/資料列和已完成的檔案,以追蹤對業務的依從性。SLAs這一般會透過頻繁 (即每分鐘) 執行系統資料表查詢來追蹤進度,並在偵測到重大偏差時提出調查/糾正行動的提醒。

失敗和問題診斷

在某些情況下,您必須針對查詢或執行期的失敗採取行動。開發人員依賴系統資料表來自我診斷問題並確定正確的補救措施。

效能調校

您可能需要調整從一開始就不符SLA合需求或隨時間降級的查詢。若要微調,您必須具有執行期的詳細資訊,包括執行計劃、統計資料、持續時間和資源取用。您需要有違規查詢的基準資料,以判斷偏差的原因,並指導您如何改善效能。

使用者物件事件監控

您需要監控使用者物件上的動作和活動,例如重新整理具體化視觀表、清空和分析。這包括系統管理的事件,如具體化視觀表的自動重新整理 您會想要監控使用者啟動的事件何時結束,或是系統啟動的最後一次成功執行。

帳單的用量追蹤

您可以監控一段時間內的用量趨勢,以便執行下列操作:

  • 了解預算規劃和業務擴展估算。

  • 找出潛在的成本節約機會,例如移除冷資料。

使用系SYS統檢視來監控 Amazon Redshift 無伺服器;如需SYS監視檢視的詳細資訊,請參閱SYS監視檢視