注: 以下の翻訳の正確性は検証されていません。AIPを利用して英語版の原文から機械的に翻訳されたものです。
このページでは、Pipeline Builder で使用できるバッチおよびストリーミングパイプラインのパフォーマンスを調整するためのビルド設定について説明します。
パイプラインの ビルド設定 は、画面右上の Deploy の横にある設定アイコンを選択することで編集できます。
ビルド設定 で選択できる以下のバッチコンピュートプロファイルがあります。
プロファイル | ドライバーコア | ドライバーメモリ | 動的最小エグゼキューター | 動的最大エグゼキューター | エグゼキューターコア | エグゼキューターメモリ | エグゼキューターオフヒープメモリ |
---|---|---|---|---|---|---|---|
Extra Small | 1 | 4GB | N/A | N/A | N/A | N/A | N/A |
Small | 1 | 2GB | 1 | 2 | 1 | 3GB | N/A |
Medium | 1 | 6GB | 2 | 16 | 2 | 6GB | N/A |
Large | 1 | 13GB | 2 | 32 | 2 | 6GB | N/A |
Extra Large | 1 | 27GB | 2 | 128 | 2 | 6GB | N/A |
Natively Accelerated Small | 1 | 2GB | 1 | 2 | 1 | 600MB | 2400MB |
Natively Accelerated Medium | 1 | 6GB | 2 | 16 | 2 | 1200MB | 4800MB |
Natively Accelerated Large | 1 | 13GB | 2 | 32 | 2 | 1200MB | 4800MB |
Natively Accelerated Extra Large | 1 | 27GB | 2 | 128 | 2 | 1200MB | 4800MB |
Velox ↗ を使用して、Pipeline Builder 内のバッチパイプラインのネイティブアクセラレーションを有効にすることでパフォーマンスを向上させることができます。
Foundry におけるネイティブアクセラレーションについてさらに読む。
パイプラインのビルド設定は、Deploy の横にある設定アイコンを選択することで編集できます。ネイティブアクセラレーションの設定には、小、中、大のコンピュートサイズのための事前設定されたプロファイルが含まれています。これらは総メモリフットプリントに基づくデフォルトの小、中、大のサイズと一致しています(ローカルモードはありません)。初めてネイティブアクセラレーションでパイプラインを実行しようとする場合、これらの事前設定されたプロファイルがおすすめです。
また、高度な構成を持つネイティブアクセラレートプロファイルもあり、ヒープメモリとオフヒープメモリの比率、その他すべてのリソースおよびコンピュートに影響を与える構成を完全に指定できます。
ほとんどの場合、事前設定されたネイティブアクセラレーションプロファイルを選択するだけでパイプラインを高速化できます。非ネイティブアクセラレーションビルドでは発生しない OOM やパフォーマンスの低下が発生する場合、メモリの構成が最適でない可能性があります。多くの場合、高度なプロファイルを採用し、オフヒープに割り当てられるメモリの割合を減らすことで問題が解決することがあります。問題が続く場合、パイプラインはネイティブアクセラレーションに適していない可能性が高く、デフォルトの実行プロファイルを使用し続けるべきです。
Foundry でネイティブアクセラレーションを使用して Spark を実行するには、通常のバッチパイプラインとはわずかに異なる構成が必要です。Spark は オフヒープメモリ ↗ を使用して一部の操作を実行することをサポートしています。オフヒープメモリは JVM によって管理されないメモリであり、GC オーバーヘッドを削減し、パフォーマンスを向上させます。Foundry では、パイプラインに追加のメンテナンスコストをもたらす可能性があるため、デフォルトでオフヒープメモリを有効にしていません。オフヒープメモリを有効にすることは、Velox によって変更された DataFrame がネイティブプロセスでアクセス可能であるために必要です。Foundry は、Velox データトランスフォーム以外のすべてのもの(たとえば、オーケストレーション、スケジューリング、ビルド管理コードは依然として JVM で実行されます)のために十分なオンヒープメモリを必要としますが、理想的にはほとんどの作業がオフヒープで行われるようになります。ネイティブアクセラレーションを使用するようにパイプラインを構成することは、オンヒープとオフヒープメモリのバランスを取るための追加のメンテナンスコストをもたらします。Pipeline Builder はこれを支援する管理されたプロファイルを提供しますが、カスタム構成が必要になる場合もあります。
ビルド設定 で選択できる以下のコンピュートプロファイルがあります。
プロファイル | ジョブマネージャーメモリ | 並列度 | タスクマネージャーメモリ |
---|---|---|---|
Extra Extra Small | 1GB | 1 | 1GB |
Extra Small | 1GB | 1 | 1GB |
Small | 1GB | 2 | 4GB |
Medium | 1GB | 3 | 6GB |
Large | 2GB | 4 | 8GB |
XLarge | 2GB | 8 | 12GB |