タスク > Data Integrationタスク > 詳細モードのセッションプロパティ
  

詳細モードのセッションプロパティ

詳細モードでマッピングに基づいてタスクを設定する場合は、タスクまたは詳細設定でセッションプロパティを設定できます。プロパティは、プロパティが設定されている場所に基づいて優先順位のとおりに有効になります。
次の表に、さまざまなアセットでセッションプロパティを設定できる場所を示します。
アセット
プロパティタイプ
マッピングタスク
  • - 詳細セッションプロパティ
  • - Sparkセッションプロパティ
動的マッピングタスク
  • - 詳細セッションプロパティ
詳細設定
  • - ランタイムプロパティ
注: 詳細設定の詳細については、Administratorのヘルプを参照してください。
複数のレベルで1つ以上のセッションプロパティを指定できます。例えば、セッションプロパティspark.executor.coresをマッピングタスクのSparkセッションプロパティとして指定したり、詳細設定のすべてのマッピングタスクにグローバルレベルで指定したりすることができます。
セッションプロパティを複数のレベルで指定すると、そのプロパティは、システムプロパティの優先度が最も高く、プレフィックスinfacco.jobのプロパティの優先度が最も低い順序で有効になります。
  1. 1システムプロパティ。無効なユーザー定義プロパティをオーバーライドするシステムプロパティ。例えば、サーバーレスランタイム環境にはSparkリソースに制限がある場合、セッションプロパティは事前定義された制限を超えるSparkリソースを要求できません。
  2. 2spark.custom.propertyマッピングタスクで設定するカスタムSparkセッションプロパティ。これらのプロパティには、通常、sparkやinfasparkなどのプレフィックスが付きます。
  3. 3advanced.custom.propertyマッピングタスクまたは動的マッピングタスクで設定するカスタムの詳細セッションプロパティ。
  4. 4カスタム以外のSparkセッションプロパティまたはCLAIREチューニングプロパティ。例えば、spark.driver.memoryやspark.memory.fractionなどがあります。
  5. 5infacco.job.<property>詳細設定で設定するランタイムプロパティ。これらのプロパティは、Spark処理またはマッピングのコンパイルに影響を及ぼす可能性があります。
例えば、詳細設定マッピングタスクでプロパティspark.executor.memoryを設定すると、マッピングタスクで設定された値が有効になります。

詳細モードの詳細セッションプロパティ

詳細モードでマッピングタスクまたはマッピングに基づく動的マッピングタスクを設定する場合、オプションの詳細セッションプロパティを設定できます。
次のタイプの詳細セッションプロパティを設定できます。

全般プロパティ

次の表は、全般プロパティの説明です。
詳細セッションプロパティ
説明
日付書式文字列
タスクの日時フォーマット。
秒を指定するには、MM/DD/YYYY HH24:MI:SS形式で入力します。
ミリ秒を指定するには、MM/DD/YYYY HH24:MI:SS.MS形式で入力します。
マイクロ秒を指定するには、MM/DD/YYYY HH24:MI:SS.US形式で入力します。
ナノ秒を指定するには、MM/DD/YYYY HH24:MI:SS.NS形式で入力します。
デフォルトでは、MM/DD/YYYY HH24:MI:SS.US形式でマイクロ秒を指定します。
マッピングタスクのタイムアウトをオーバーライド
ランタイム環境に関連付けられている詳細設定で設定されたマッピングタスクのタイムアウトをオーバーライドします。
トレースのオーバーライド
オブジェクトレベルで設定されたトレースレベルをオーバーライドします。

カスタムプロパティ

以下の表に、カスタムプロパティを示します。
詳細カスタムプロパティ
説明
advanced.custom.property
マッピングを実行するためのカスタムプロパティを設定します。タスクで使用されるカスタムプロパティは、ジョブが開始した後でオーバーライドできます。プロパティのオーバーライド値がセッションログにも書き込まれます。
カスタムプロパティを区切るには、&:を使用します。

Sparkセッションプロパティ

詳細モードのマッピングに基づくマッピングタスクを作成する場合、オプションのSparkセッションプロパティを設定できます。
Sparkセッションプロパティのデフォルト値は、ベストプラクティスと組織内のマッピングタスクの平均的な計算要件に基づいて設定します。デフォルト値が特定のマッピングタスクの要件に合わない場合、デフォルト値を上書きしてプロパティを再設定します。
マッピングタスクに最適な一連のSparkセッションプロパティを特定する方法は、CLAIREチューニングを参照してください。
以下の表に、Sparkセッションプロパティを示します。
Sparkセッションプロパティ
説明
infaspark.sql.forcePersist
読み取り操作の繰り返しを避けるために、データをメモリに保持するかどうかを示します。例えば、ルータートランスフォーメーションを使用すると、出力グループでの読み取り操作の繰り返しを回避できます。
デフォルトはfalseです。
spark.driver.extraJavaOptions
Sparkドライバプロセス用の追加のJVMオプション。
デフォルトは-Djava.security.egd=file:/dev/./urandom -XX:MaxMetaspaceSize=256M -XX:+UseG1GC -XX:MaxGCPauseMillis=500です。
spark.driver.maxResultSize
各Sparkアクション用のすべてのパーティションのシリアル化された結果の最大合計サイズ。
デフォルトは4Gです。
spark.driver.memory
Sparkドライバプロセス用のメモリの量。
デフォルトは4Gです。
spark.dynamicAllocation.maxExecutors
動的割り当てが有効な場合のSparkエグゼキュータの最大数。
デフォルトは1000です。値は自動的に計算されます。
spark.executor.cores
各Sparkエグゼキュータを実行するコア数。
デフォルトは2です。
spark.executor.extraJavaOptions
Sparkエグゼキュータの追加のJVMオプション。
デフォルトは-Djava.security.egd=file:/dev/./urandom -XX:MaxMetaspaceSize=256M -XX:+UseG1GC -XX:MaxGCPauseMillis=500です。
spark.executor.memory
各Sparkエグゼキュータのメモリの量。
デフォルトは6Gです。
spark.memory.fraction
Sparkエンジンに割り当てるヒープの割合。1に設定すると、Sparkエンジンは、予約された300 MBのメモリを除くヒープ領域全体を使用します。
デフォルトは0.6です。
spark.memory.storageFraction
データの処理に対して、Sparkエンジンがストレージに使用するメモリの割合。
デフォルトは0.5です。
spark.rdd.compress
シリアル化されたRDDパーティションを圧縮するかどうかを示します。
デフォルトはfalseです。
spark.reducer.maxSizeInFlight
データのシャッフル中に各削減タスクがマッピングタスクから受信できるデータの最大サイズ。このサイズは、シャッフルされたデータ用の十分なメモリを削減タスクに確保するためのネットワークバッファを表します。
デフォルトは48Mです。
spark.shuffle.file.buffer
それぞれのマッピングタスクで中間シャッフル出力を書き込むために使用するメモリ内バッファのサイズ。
デフォルトは32Kです。
spark.sql.autoBroadcastJoinThreshold
ブロードキャスト結合を使用するためのバイト単位のしきい値。Sparkエンジンがブロードキャスト結合を使用している場合、Sparkドライバは詳細クラスタで実行されているSparkエグゼキュータにデータを送信するため、シャッフルが回避され、パフォーマンスが向上します。
マッピングタスクがカラム形式や区切りファイルを処理する場合など、状況によっては、ブロードキャスト結合によってSparkドライバレベルでメモリの問題が発生する可能性があります。この問題を解決するには、ブロードキャスト参加のしきい値を10 MBに減らすか、Sparkドライバのメモリを増やすか、ブロードキャスト参加を無効にしてみてください。
デフォルトは256000000です。ブロードキャスト結合を無効にするには、値を-1に設定します。
spark.sql.broadcastTimeout
ブロードキャスト結合中に使用される秒単位のタイムアウト。
デフォルトは300です。
spark.sql.shuffle.partitions
データをシャッフルして結合または集計を処理するためにSparkが使用するパーティション数。
デフォルトは100です。
spark.custom.property
カスタムSparkセッションプロパティを設定します。カスタムプロパティを区切るには、&:を使用します。