跳至內容

如何監控與最佳化 AWS Glue for Apache Spark 的成本?

2 分的閱讀內容
0

我想使用 AWS Glue 監控 Spark 使用情況並最佳化成本。

解決方法

監控使用情況

若要取得 AWS Glue 作業中 Spark 使用成本的摘要,請使用 AWS Cost Explorer。

請完成下列步驟:

  1. 開啟 AWS Billing and Cost Management console (AWS 帳單與成本管理主控台)。
  2. 在導覽窗格中,選擇 Cost Explorer
  3. Cost (成本) 儀表板上,查看 AWS Glue 的每月成本。

依作業詳細資料查看使用情況

若要監控 AWS Glue 作業詳細資訊 (例如其執行狀態、執行持續時間或資料處理單元 (DPU) 使用情況),請完成下列步驟:

  1. 開啟 AWS Glue console (AWS Glue 主控台)。
  2. ETL Jobs (ETL 作業) 下,選擇 Job run monitoring (作業執行監控)。

依作業類型查看成本

若要取得特定類型的 AWS Glue 作業成本,請完成下列步驟:

  1. 開啟 AWS Billing and Cost Management console (AWS 帳單與成本管理主控台)。
  2. Cost and usage analysis (成本和使用情況分析) 下,選擇 Cost Explorer
  3. Report parameters (報表參數) 下的 Filters (篩選條件) 區段中,在 Service (服務),請選擇 Glue
  4. Usage type (使用類型) 下,選取您作業的篩選條件,並包含您的 AWS 區域:
    如果是標準作業,請使用 ETL-DPU-Hour 篩選條件。例如,如果是美國西部 (奧勒岡) 區域,請套用 USW2-ETL-DPU-Hour
    如果是彈性作業,請使用 ETL-Flex-DPU-Hour 篩選條件。例如,套用 USW2-ETL-Flex-DPU-Hour
    如果是互動式工作階段,請使用 GlueInteractiveSession-DPU-Hour。例如,套用 USW2-GlueInteractiveSession-DPU-Hour

取得特定作業的使用情況和成本

若要取得特定 AWS Glue 作業成本,請完成下列步驟:

  1. 開啟 AWS Glue console (AWS Glue 主控台)。
  2. ETL Jobs (ETL 作業) 下,選擇 Job run monitoring (作業執行監控)。
  3. 找出您用於此作業的 DPU hours (DPU 小時數)。
  4. AWS Glue pricing (AWS Glue 定價) 頁面的 ETL jobs and interactive sessions (ETL 作業和互動式工作階段) 索引標籤上,選取您的區域。
  5. 記下您作業類型中每個 DPU-HOUR 的成本。
  6. 若要計算成本,請將您的 DPU 小時數乘以每個 DPU-HOUR 的成本。

若要取得記憶體或 CPU 使用率或資料流量的 AWS Glue 作業指標,請設定 CloudWatch 警示

若要取得有關 AWS Glue 作業的通知,請參閱如何在 AWS Glue 作業狀態變更時,收到 Amazon SNS 通知?

最佳化成本

若要最佳化 AWS Glue 作業中 Spark 的使用成本,請執行下列動作:

  • 調整 AWS Glue 作業,以減少作業執行時間和所需的工作者數量。
  • 如果是非關鍵 AWS Glue 作業,請將 AWS Glue 作業執行類型定義為 Flex
  • 為您的 AWS Glue 作業啟用自動擴展
  • 建立 AWS Glue 使用情況設定檔來限制工作者類型、限制最大作業者數量,並限制作業的執行時間。
  • 為您的 Jobs API 設定適當的 AWS Glue 逾時,以便作業的執行時間不會超過預期的執行時間。
  • 使用適當的工作者類型和工作者數量
  • 若要在本機環境中測試和開發,請使用 Docker 映像檔。AWS Glue Docker 使用的是本機運算資源,而不是 AWS Glue 雲端服務。
  • 使用 AWS Glue 作業書籤功能逐步理資料。
  • 使用 CloudWatch 指標來確定最佳 DPU 容量,並根據需要調整容量
  • 當不使用互動式工作階段時,請停止或刪除它們。使用 Jupyter magic %stop_session,或在 AWS Glue 主控台的 Interactive Session (互動式工作階段) 頁面上選擇 Stop session (停止工作階段)。您也可以使用 Stop Notebook (停止筆記本) 來終止工作階段。
    **注意:**即使關閉瀏覽器索引標籤,工作階段仍然處於作用中狀態。

相關資訊

監控並最佳化 AWS Glue for Apache Spark 的成本

AWS 官方已更新 1 年前