Glue JobでWorkerTypeが選べるようになりました
公式ドキュメントはこちら
設定箇所
"ジョブの追加"をクリック
ジョブプロパティで"セキュリティ設定...."をクリック
"Standard"、"G.1X"、"G2.X" から選ぶことができます。
- Standard:4vCPU, 16GBメモリ, 2Executor(ようは今までの)
- G.1X:4vCPU, 16GBメモリ, 1Executor, 64GBディスク(ようはExecutor1にしたよ)
- G.2X:8vCPU, 32GBメモリ, 1Executor, 128GBディスク(ようは2DPU)
上限(多分ソフトリミット)
- Standard DPU:100
- G.1X Worker数:299(Maximum capacity=300)
- G.2X Worker数:149(Maximum capacity=299)
Standardで実行したログ
core=4 なのでvCPU4
spark.executor.memory=5g なので1Executorあたり5GB
spark.dynamicAllocation.enabled=true なので(最大メモリが以下のように12GBで、1Exeあたり5.5GB(以下のmemory overhead足して))最大2Executor起動する(5.5GB*2 = 11GB <12GB でこれ以上はExecutor起動できない)
maximum memory capability (12288MB) なので最大12GB
512MB overhead なのでメモリ512MB上乗せ
G.1Xで実行したログ
core=8 なのでvCPU8?
spark.executor.memory=10g なので1Executorあたり10GB
spark.dynamicAllocation.enabled=true なので(最大メモリが以下のように12GBで、1Exeあたり11GB(以下のmemory overhead足して))最大1Executor起動する(11GB*1 < 12GB でこれ以上はExecutor起動できない)
spark.yarn.executor.memoryOverhead=2g なのでメモリ2GB上乗せ
maximum memory capability (12288MB) なので最大12GB
1024MB overhead なのでメモリ1024MB上乗せ(多分こっちで上書かれる)
G.2Xで実行したログ
core=16 なのでvCPU16?
spark.executor.memory=20g なので1Executorあたり20GB
spark.dynamicAllocation.enabled=true なので(最大メモリが以下のように24GBで、1Exeあたり2GB(以下のmemory overhead足して))最大1Executor起動する(22GB*1 < 24GB でこれ以上はExecutor起動できない)
spark.yarn.executor.memoryOverhead=4g なのでメモリ4GB上乗せ
maximum memory capability (24576MB) なので最大24GB
2048MB overhead なのでメモリ2048MB上乗せ(多分こっちで上書かれる)
こちらも是非
Glueの使い方まとめ
https://qiita.com/pioho07/items/32f76a16cbf49f9f712f