すべてのプロダクト
Search
ドキュメントセンター

Realtime Compute for Apache Flink:ジョブリソースの構成

最終更新日:Jan 14, 2026

ジョブの開始前にリソースを設定したり、公開後にリソースを変更したりできます。リソースモードには、基本モード (粗粒度) とエキスパートモード (詳細) の 2 種類があります。このトピックでは、ジョブリソースの設定方法と、両方のモードのパラメーター情報について説明します。

注意事項

リソースを設定した後、変更を有効にするにはジョブを再起動する必要があります。

操作手順

  1. リソース構成ページに移動します。

    1. Realtime Compute for Apache Flink コンソールにログインします。

    2. 対象のワークスペースの [操作] 列で、[コンソール] をクリックします。

    3. [オペレーションセンター] > [ジョブ O&M] ページで、対象のジョブの名前をクリックします。

    4. [デプロイメント詳細] タブの [リソース構成] セクションで、右上隅にある [編集] をクリックします。

  2. ジョブリソースの設定を変更します。

    リソース構成モードには、基本モード (粗粒度) とエキスパートモード (詳細) の 2 種類があります。

    リソースモード

    説明

    パラメーターの説明

    基本モード

    基本モードは、静的なリソース割り当て方法です。各 TaskManager の起動に必要な合計リソース (CPU と合計 JVM メモリ) を指定するだけです。システムは、TaskManager ごとのスロット数 (Flink の設定 `taskmanager.numberOfTaskSlots`) に基づいて、すべてのリソースを均等に割り当てます。ほとんどの単純なジョブでは、粗粒度モードで十分です。

    image

    基本モード (粗粒度)

    エキスパートモード

    エキスパートモードは、動的なリソース割り当て方法です。各スロット共有グループ (SSG) に必要なリソースを設定できます。Flink は、各スロットに必要なリソース仕様を計算し、利用可能なリソースプールから完全に一致する TaskManager とスロットを動的に申請します。複雑なジョブの場合、粗粒度モードではリソース使用率が低くなる可能性があります。そのため、各オペレーターのリソースを正確に制御するために詳細モードが必要となり、これによりリソース使用率が向上し、ジョブのスループット要件を満たすことができます。

    image

    説明

    SQL ジョブのみがエキスパートモードをサポートしています。

    エキスパートモード (詳細)

    TaskManager (TM)、JobManager (JM)、Task、Slot などの概念の詳細については、「Apache Flink Architecture」をご参照ください。

  3. [保存] をクリックします。

  4. ジョブを再起動します。

    リソース構成の変更を有効にするには、ジョブを再起動する必要があります。

基本モード (粗粒度)

設定項目

説明

並列度

ジョブのグローバルな並列度。

JobManager CPU

Flink のベストプラクティスによると、ジョブの安定した動作を保証するために、単一の JM には少なくとも 0.5 コアと 2 GiB のメモリが必要です。1 コアと 4 GiB を設定することを推奨します。最大値は 16 コアです。

JobManager メモリ

単位:GiB。最小値は 2 GiB、最大値は 64 GiB です。

TaskManager CPU

Flink のベストプラクティスによると、ジョブの安定した動作を保証するために、単一の TM には少なくとも 0.5 コアと 2 GiB のメモリが必要です。1 コアと 4 GiB を設定することを推奨します。最大値は 16 コアです。

TaskManager メモリ

単位:GiB。最小値は 2 GiB、最大値は 64 GiB です。

TaskManager ごとのスロット数

TM のスロット数を入力します。

次の数式を使用して計算できます:

  • ジョブに設定された CU 数 = MAX(JM と TM の合計 CPU、JM と TM の合計メモリ / 4)

  • 実際の TM 数 (設定された TM の CPU またはメモリがデフォルトの最大値以下の場合) = 設定された並列度 / 設定された TaskManager ごとのスロット数

  • 実際の TM 数 (設定された TM の CPU またはメモリがデフォルトの最大値より大きい場合) = MAX(TM の合計 CPU / 16 コア, TM の合計メモリ / 64 GiB)

    • TM の合計 CPU = 設定された並列度 / 設定された TaskManager ごとのスロット数 × TM ごとに設定された CPU

    • TM の合計メモリ = 設定された並列度 / 設定された TaskManager ごとのスロット数 × TM ごとに設定されたメモリ

    • TM ごとのデフォルトの最大 CPU は 16 コアです。

    • TM ごとのデフォルトの最大メモリは 64 GiB です。

  • TM ごとの割り当て可能な実際のスロット数 = ⌈設定された並列度 / 実際の TM 数⌉

説明
  • 計算された比率は、最も近い整数に切り上げられます。

  • デフォルトでは、最大制限を超える値を設定することはできません。TM のメモリと CPU のデフォルトの最大制限を超える値を設定するには、してください

  • また、[デプロイメント詳細] タブの [実行時パラメーター設定] セクションにある [その他の設定] フィールドで、`numberOfTaskSlots` パラメーターを設定することもできます。このパラメーターは、UI 設定の [TaskManager ごとのスロット数] と同等ですが、優先されます。

たとえば、並列度を 12、TaskManager ごとのスロット数を 4 に設定した場合、構成は次の図のようになります。

image

Flink 開発コンソールでは、実際の TM 数が 3、TaskManager ごとのスロット数が 4 であることがわかります。

image

実際の TM 数と TaskManager ごとのスロット数の計算プロセスは次のとおりです:

  1. 実際の TM 数 = [設定された並列度 / 設定された TaskManager ごとのスロット数] = [12/4] = 3

  2. TM ごとの実際のスロット数 = ⌈並列度 / 実際の TM 数⌉ = ⌈12/3⌉ = 4

エキスパートモード (詳細)

説明
  • SQL ジョブのみがエキスパートモードをサポートしています。

  • ジョブがデプロイされた後、SQL コードまたはリソース構成を変更した場合は、ジョブが正常に開始できるようにリソースプランニンググラフを再生成する必要があります。

基本リソースの構成

設定項目

説明

JobManager CPU

Flink のベストプラクティスによると、ジョブの安定した動作を保証するために、単一の JM には少なくとも 0.25 コアと 1 GiB のメモリが必要です。最大値は 16 コアです。

JobManager メモリ

単位:GiB。例:4 GiB。最小値は 1 GiB、最大値は 64 GiB です。

TaskManager ごとのスロット数

なし。

スロットリソースの構成

  1. [エキスパートモード] で、[プランを今すぐ取得] をクリックしてリソースプランニンググラフを表示します。

    image

  2. SLOT ボックスの 编辑 アイコンをクリックします。SLOT

  3. スロット構成情報を変更します。修改slot信息

    ここで設定された並列度は、このスロット共有グループ内のすべてのオペレーターに対する統一された並列度です。設定を完了すると、システムは自動的に次の操作を実行します:

    • システムは、このスロット共有グループ内のすべてのオペレーターに同じ並列度を自動的に設定します。

    • システムは、ジョブの計算ロジックに基づいて、ステートバックエンド、Python、およびオペレーターに必要なメモリを自動的に生成します。これを手動で設定する必要はありません。

    • 説明
      • Source ノードの並列度は、パーティション数に比例させることを推奨します。つまり、パーティション数は並列度で割り切れるようにする必要があります。たとえば、Kafka トピックに 16 個のパーティションがある場合、データスキューを避けるために並列度を 16、8、または 4 に設定することを推奨します。また、Source ノードの並列度を低く設定しすぎないでください。並列度が低いと、単一の Source が過剰な量のデータを読み取ることになり、入力のボトルネックを引き起こし、ジョブのスループットに影響を与える可能性があります。

      • Source ノード以外のノードについては、必要に応じて並列度を設定することを推奨します。トラフィックの多いノードには高い並列度を設定し、トラフィックの少ないノードには低い並列度を設定します。

      • ヒープメモリとオフヒープメモリのサイズは、メモリ不足 (OOM) エラーや深刻なガベージコレクション (GC) など、明確な例外や要件がある場合にのみ調整することを推奨します。これは、これらのメモリサイズを調整しても、通常の操作中にジョブのスループットが大幅に変化しないためです。

  4. [OK] をクリックします。

オペレーターリソースの構成

デフォルトでは、すべてのオペレーターは単一のスロット共有グループに配置されるため、個々のオペレーターのリソース構成を変更することはできません。個々のオペレーターのリソースを設定するには、[複数 SSG モード] を有効にします。このモードでは、各オペレーターに専用のスロットが割り当てられ、リソースを個別に設定できます。オペレーターリソースを設定する手順は次のとおりです:

  1. ジョブの [デプロイメント詳細] タブの [リソース構成] セクションで、[編集] をクリックし、[リソースモード][エキスパートモード] に設定します。

  2. (オプション) リソースプランが利用できない場合は、[プランを今すぐ取得] をクリックします。

    image

  3. [複数 SSG モード] スイッチをオンにします。次に、[再生成] をクリックします。

    共有グループ内のオペレーターは、個別のスロットに分割されます。

    image

  4. 対象のオペレーターに対応する SLOT ボックスの 编辑 アイコンをクリックし、オペレーターのリソースを変更します。

    image

  5. [OK] をクリックします。

オペレーターの並列度、チェイニング戦略、TTL の構成

説明

リアルタイムコンピューティングエンジン Ververica Runtime (VVR) 8.0.7 以降のバージョンのみが、オペレーターの TTL の設定をサポートしています。

単一のオペレーターに対して、並列度、チェイニング戦略、および状態の生存時間 (TTL) を設定できます。

  1. 対象の VERTEX ボックスの image アイコンをクリックして、頂点を展開します。

    image

    説明

    対象の VERTEX の 编辑 アイコンをクリックすると、その頂点の下にあるすべてのオペレーターの並列度を一度に設定できます。

  2. オペレーターの image アイコンをクリックします。

    image

  3. オペレーターのリソースを設定します。

    image

    パラメーターの説明は次のとおりです:

    パラメーター

    説明

    同時実行性

    対応するオペレーターの並列度。

    チェイニング戦略

    チェーンは、複数のオペレーターを接続して形成される論理的な計算チェーンです。ジョブの実行効率とパフォーマンスを向上させ、オペレーター間のデータ転送とシリアル化のオーバーヘッドを削減できます。ただし、ジョブの実行フローとパフォーマンスをより適切に制御するために、チェーンを中断する必要がある場合もあります。次の戦略がサポートされています:

    • ALWAYS (デフォルト):オペレーターは常に上流および下流のオペレーターとチェーンできます。

    • HEAD:現在のオペレーターがチェーンの先頭として機能します。上流のオペレーターとのみチェーンを中断します。下流のノードは現在のオペレーターとチェーンされたままです。

    • NEVER:現在のオペレーターは、上流または下流のどのオペレーターともチェーンされません。

    オペレーターの状態生存時間 (TTL) 設定

    有効期限を秒、分、時間、または日で設定できます。デフォルトはジョブの有効期限です。有効期限が設定されていないジョブの場合、デフォルトは 1.5 日です。ジョブの有効期限の設定の詳細については、「実行時パラメーター設定」をご参照ください。

    説明
    • リアルタイムコンピューティングエンジン VVR 8.0.7 以降のバージョンでのみサポートされています。

    • ステートフルなオペレーターのみが TTL 設定をサポートしています。

  4. [OK] をクリックします。

関連ドキュメント

  • リソース最適化技術については、「高性能 Flink SQL 最適化技術」をご参照ください。

  • 手動でリソースを調整したくない場合は、自動チューニングを使用できます。システムが自動的にリソースを調整します。詳細については、「自動チューニングの設定」をご参照ください。

  • ジョブの基本設定、実行時パラメーター設定、ログ設定の詳細については、「ジョブデプロイメント情報の設定」をご参照ください。

  • Flink Advisor ジョブインテリジェント診断サービスを使用して、ジョブの健全性を監視できます。詳細については、「ジョブインテリジェント診断」をご参照ください。