最近AWSのGlueを使ったETLを作って実行してみました。単純なCSVをRDSにインサートするだけの処理だったので非常に軽いジョブです。何度かジョブの成功失敗を繰り返し、翌日請求ページで確認したら1000円くらいの課金になっていました。ほとんどCPUを使わないはずなのになぜ???と思い、調べたところデフォルト値が不親切だったのでそのメモです。
Glueとは
プログラミングレスでETLジョブやデータカタログを作成できるAWSのフルマネージドサービスです。CSVをそのままRDBにインサートするだけであれば、ウィザードに沿ってポチポチ押していけばできちゃいます。
Glueジョブの料金体系
ちょっと分かりにくいですが、DPUがCPUみたいなものでデフォルト10、軽いジョブを実行しても最小10分が課金対象となるので0.44USD × 10DPU × 10/60時間 = 0.733USD
どんなに軽いジョブでも1回あたり100円弱かかるということです。
Glueのデフォルト値
ジョブ作成の画面では以下のように「セキュリティ設定、スクリプトライブラリおよびジョブパラメータ (任意)」が閉じられています。
これを開くとわかりますが、最大容量が10になってます。何も知らずにウィザードを進めていくとデフォルト10になってしまいます。
対策
DPUは最小2に設定できるのでジョブ作成の時に「セキュリティ設定、スクリプトライブラリおよびジョブパラメータ (任意)」を開いて2に設定すれば1ジョブあたり20円弱に抑えられます。