エンジンメモリと同時実行数の設定 - Cloud

Talend Remote Engine Gen2クイックスタートガイド

author
Talend Documentation Team
EnrichVersion
Cloud
EnrichProdName
Talend Cloud
task
インストールとアップグレード
デプロイメント > デプロイ中 > パイプラインの実行
EnrichPlatform
Talend Management Console
Talend Pipeline Designer
Remote Engine Gen2は、8GBのメモリが割り当てられた状態で動作するよう設定されています。これは、エンジンで同時に発生しうるパイプラインやプレパレーションの実行数に影響します。

実行エラー

あまりにも多くの実行要求数を受信したエンジンでは、多くのパイプライン実行が受け入れられる一方、最後のいくつかがリジェクトされることがあります。その場合は次のエラーが表示されます:
Cannot submit pipeline <PIPELINE_NAME>, too many Livy sessions are used. 

<PIPELINE_NAME>はお使いのパイプラインの名前です。

安全上の理由から同時パイプライン実行数は制限されていますが、この制限数はRemote Engine Gen2で設定できます。

同時実行数を設定する

実行数を設定する場合は、エンジンのインストールディレクトリーで.envファイルを開き、次の行をチェックします。
LIVY_SERVER_SESSION_MAX_CREATION=<NB_SLOTS>
お使いのエンジンが稼働しているマシンで利用できるリソースに応じてこの値を変更します。この値は次の式に相当し、特定の量のメモリのみがパイプラインの実行専用となり、残りはエンジンの他のサービスで使用されるようになります。
LIVY_SERVER_SESSION_MAX_CREATION=(memory - 4)/spark.driver.memory

ここでmemoryはエンジンに割り当てられたメモリに、4はエンジンの他のサービスに必要な4GBのメモリに、spark.driver.memoryは各パイプラインの実行に割り当てられたメモリ(デフォルトでは1GB)にそれぞれ相当します。

spark.driver.memoryのデフォルト値は、Talend Cloud Management Console[Add run profile] (実行プロファイルの追加)フォームの[Advanced configuration] (詳細設定)セクションにパラメーターと値を追加すれば変更できます。

例:

8GBのメモリを持つDocker環境にエンジンをインストールしたら、sparkドライバーのメモリに4GBを割り当てて式が(8-4)/4=1になるようにします:
LIVY_SERVER_SESSION_MAX_CREATION=1