View a markdown version of this page

EMR Serverless でのアプリケーションの動作について - Amazon EMR

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

EMR Serverless でのアプリケーションの動作について

このセクションでは、ジョブを送信する際の動作、スケーリングの容量設定、EMR Serverless のワーカー設定について説明します。

アプリケーションのデフォルトの動作

自動起動 — デフォルトでは、アプリケーションはジョブの送信時に自動起動するように設定されています。この機能はオフにできます。

自動停止 — アプリケーションは、デフォルトで 15 分間アイドル状態になると自動停止するように設定されています。アプリケーションが STOPPED 状態に変わると、設定された事前初期化済みの容量が解放されます。アプリケーションが自動停止するまでのアイドル時間を変更できます。または、この機能をオフにすることもできます。

最大容量

アプリケーションがスケールアップ可能な最大容量を設定できます。CPU、メモリ (GB)、ディスク (GB) について最大容量を指定できます。

注記

ワーカー数にそれらのサイズを乗じることで、サポートされるワーカーサイズに比例するように最大容量を設定することがベストプラクティスです。例えば、アプリケーションを 2 vCPU、16 GB メモリ、20 GB のディスクを備えた 50 個のワーカーに制限する必要がある場合は、最大容量を 100 vCPU、800 GB メモリ、1,000 GB のディスクに設定します。

サポートされているワーカーの設定

次の表は、EMR Serverless に指定できるサポート対象のワーカーの設定とサイズを一覧示しています。ワークロードの必要性に応じて、ドライバーとエグゼキュターにさまざまなサイズを設定します。

ワーカーの設定とサイズ
CPU メモリ デフォルトのエフェメラルストレージ

1 vCPU

最小 2 GB、最大 8 GB、1 GB 単位

20 GB~200 GB

2 vCPU

最小 4 GB、最大 16 GB、1 GB 単位

20 GB~200 GB

4 vCPU

最小 8 GB、最大 30 GB、1 GB 単位

20 GB~200 GB

8 vCPU

最小 16 GB、最大 60 GB、4 GB 単位

20 GB~200 GB

16 vCPU

最小 32 GB、最大 120 GB、8 GB 単位

20 GB~200 GB

32 vCPU

3 つの個別の値: 60 GB、120 GB、または 244 GB

20 GB~200 GB

CPU — 各ワーカーは 1、2、4、8、16、または 32 vCPUs を持つことができます。

メモリ — 各ワーカーには、前の表に記載されている制限内で GB 単位で指定されたメモリが搭載されています。Spark ジョブにはメモリオーバーヘッドがあります。つまり、使用するメモリが指定されたコンテナサイズを超えています。このオーバーヘッドは、プロパティ spark.driver.memoryOverheadspark.executor.memoryOverhead で指定されます。オーバーヘッドのデフォルト値はコンテナメモリの 10% であり、最小値は 384 MB です。ワーカーサイズを選択する際は、このオーバーヘッドを考慮する必要があります。

例えば、ワーカーインスタンスに 4 個の vCPU を選択し、事前に初期化されたストレージ容量が 30 GB である場合は、Spark ジョブのエグゼキュターメモリとして約 27 GB の値を設定します。これにより、事前初期化された容量を最大限に活用できます。使用可能なメモリは 27 GB で、合計はこれに 27 GB の 10% (2.7 GB) を加えた 29.7 GB です。

32 個の vCPUs を持つワーカーの場合、ワーカーメモリは 60 GB、120 GB、または 244 GB の 3 つの個別の設定のいずれかと一致する必要があります。EMR Serverless は、合計メモリリクエスト (スパーク設定メモリとメモリオーバーヘッド) を検証し、合計が 3 つの設定のいずれにも当てはまらないジョブを拒否します。 spark.executor.memoryとメモリオーバーヘッド (デフォルトは 10%) は、サポートされているワーカーメモリ設定の 8 GB 以内である必要があります。例えば、100 GB にspark.executor.memory設定された 32 個の vCPU ワーカーをリクエストする Spark ジョブは拒否されます。これは、合計 110 GB (デフォルトの 10% オーバーヘッドを追加した後) が 、サポートされている 120 GB ワーカーサイズの 8 GB 以内ではないためです。この場合、102 GB から 109 GB spark.executor.memoryの範囲内で受け入れられます。

ディスク — 各ワーカーには、最小サイズが 20 GB、最大サイズが 200 GB の一時ストレージディスクを設定できます。ワーカーごとに設定する 20 GB を超える追加ストレージに対してのみ料金が発生します。