データ・フロー・アプリケーションのサイズ設定
データ・フロー・アプリケーションを実行するたびに、Sparkアプリケーションの実行に使用されるOCPUの数を決定するエグゼキュータのサイズおよび数を指定します。
OCPUはCPUコアに相当し、それ自体は2つのvCPUに相当します。各シェイプに含まれるOCPUの数の詳細は、コンピュート・シェイプを参照してください。
大まかな目安として、1時間にOCPU当たり10GBのデータが処理されると想定します。Parquetのような最適化されたデータ・フォーマットは、小規模なデータのサブセットのみが処理されるため、実行速度が大幅に向上しているように見えます。OCPU当たり10 GBのデータ処理時間を想定して、必要なOCPUの数を計算する式は、次のとおりです。
<Number_of_OCPUs> = <Processed_Data_in_GB> / (10 * <Desired_runtime_in_hours>)
たとえば、SLAが30分の1のデータを処理するには、約200 OCPUを使用します。
<Number_of_OCPUs> = 1024 / (10 * 0.5) = 204.8
200OCPUは、様々な方法で割り当てることができます。たとえば、VM.Standard2.8のエグゼキュータ・シェイプと合計25のエグゼキュータを選択できます(8 * 25 = 200の合計OCPU)。
この式は概算で、実行時間は異なる場合があります。アプリケーションをロードし、アプリケーション実行の履歴を表示することによって、実際のワークロードの処理率をより正確に見積もることができます。この履歴によって、使用されているOCPUの数、処理されたデータの合計および実行時間を確認でき、SLAを満たすために必要なリソースを見積ることができます。ここから、実行で処理するデータの量を見積もり、実行のサイズは適切に設定されます。
ノート
OCPUの数は、選択したVMシェイプおよび
OCPUの数は、選択したVMシェイプおよび
VM.Total
のテナンシに設定された値によって制限されます。すべてのVMシェイプで、VM.Totalの値より多くのVMを使用することはできません。たとえば、各VMシェイプが20に設定され、VM.Total
が20に設定されている場合、すべてのVMシェイプで20を超えるVMを使用することはできません。フレキシブル・シェイプでは、制限がコアまたはOCPUとして測定され、フレキシブル・シェイプの80コアは、10のVM.Standard2.8シェイプと同等です。詳細は、サービス制限を参照してください。柔軟なコンピュート・シェイプ
データ・フローでは、Sparkジョブの柔軟なコンピュート・シェイプがサポートされます。
次の柔軟なコンピュート・シェイプがサポートされています:
- VM.Standard3.Flex (Intel)
- VM.StandardE3.Flex (AMD)
- VM.StandardE4.Flex (AMD)
- VM.Standard.A1.Flex (AmpereのArmプロセッサ)
アプリケーションを作成する場合、またはアプリケーションを編集する場合は、ドライバおよびエグゼキュータのフレキシブル・シェイプを選択します。OCPUを選択するごとに、フレキシブル・メモリー・オプションを選択できます。
ノート
ドライバとエグゼキュータのシェイプは同じにする必要があります。
ドライバとエグゼキュータのシェイプは同じにする必要があります。
VM.Standard2コンピュート・シェイプからのアプリケーションの移行
既存のデータ・フロー・アプリケーションをVM.Standard2からフレキシブル・コンピュート・シェイプに移行する場合は、次のステップに従います。