■ はじめに
AWS Glue の CloudWatch Metrics(メトリクス) について、 徐々にメモする。
目次
【1】公式ドキュメント 【2】関連用語 1)ステージ(Stages) 2)タスク(Tasks) 3)ドライバ(Driver) 4)エグゼキュタ(Executors) 【3】メトリクスの構成 1)ETL Data Movement 2)Data shuffle across executors 3)Memory profile: Driver and Executors 4)CPU Load: Driver and Executors 5)Job Execution: Active Executors, Completed Stages & Maximum Needed Executors
【1】公式ドキュメント
要求の厳しいステージとストラグラータスクのデバッグ
https://docs.aws.amazon.com/ja_jp/glue/latest/dg/monitor-profile-debug-straggler.html
DPU の容量計画のモニタリング
https://docs.aws.amazon.com/ja_jp/glue/latest/dg/monitor-debug-capacity.html
【2】関連用語
https://qiita.com/uryyyyyyy/items/ba2dceb709f8701715f7
https://qiita.com/yoshii0110/items/5b2263a0cbd2afe0ec20
を一読しておくといいかも。
1)ステージ(Stages)
* Sparkは 全体の処理を ステージ と呼ばれる単位で分割して扱う
2)タスク(Tasks)
* ステージを更に分割した処理単位(分散処理における最小処理単位) * Task数 = Partition数 * Stage数
3)ドライバ(Driver)
* 処理全体を統括しているプロセス
4)エグゼキュタ(Executors)
* 分散処理(Task)を実際に実行するプロセス
【3】メトリクスの構成
以下で構成されている。 1)ETL Data Movement 2)Data shuffle across executors 3)Memory profile: Driver and Executors 4)CPU Load: Driver and Executors 5)Job Execution: Active Executors, Completed Stages & Maximum Needed Executors
1)ETL Data Movement
* ETL データ移動 => 実行しているETLの データの読み込み(Read)と書き込み(Writtern)の推移をグラフ表示
2)Data shuffle across executors
* エグゼキュタ間のデータシャッフル
3)Memory profile: Driver and Executors
* メモリプロファイル:ドライバとエグゼキュタ
グラフの読み取りについて
* メモリ使用率が全体的に高い・低すぎる場合 => NumberOfWorkers / Worker typeの変更を検討する
https://docs.aws.amazon.com/ja_jp/glue/latest/dg/aws-glue-api-jobs-job.html
NumberOfWorkers 数値 (整数)。– ジョブの実行時に割り当てられた、定義済みの workerType ワーカー数。 WorkerType – UTF-8 文字列 (有効な値: Standard="" | G.1X="" | G.2X="")。
4)CPU Load: Driver and Executors
* CPUロード:ドライバとエグゼキュタ
グラフの読み取りについて
* CPU使用率が全体的に高い・低すぎる場合 => 「3)Memory profile: Driver and Executors」と同様に NumberOfWorkers / Worker typeの変更を検討する
5)Job Execution: Active Executors, Completed Stages & Maximum Needed Executors
* ジョブ実行:アクティブなエクゼキュータ、完了したステージ、必要なエクゼキュータの最大数
グラフの読み取りについて
* Max Allocated Executors を超えている場合 => DPU数を増やせば、処理速度の改善が期待できる * Max Allocated Executors より著しく少ない場合 => DPU数を減らせば、コスト削減できる可能性がある
参考文献
https://buildersbox.corp-sansan.com/entry/2021/02/04/110000
https://dev.classmethod.jp/articles/20180717-aws-glue-support-etl-job-metrics/
https://qiita.com/pioho07/items/4b97b61f2ec098afb695
関連記事
AWS Glue ~ 入門編 ~
https://dk521123.hatenablog.com/entry/2019/10/01/221926