サーバーレス パイプラインを構成する

サーバーレス パイプラインは、Azure Databricksマネージド コンピューティングで実行され、ほとんどのインフラストラクチャ構成が削除されます。

Databricks では、サーバーレスを使用して新しいパイプラインを開発することをお勧めします。 一部のワークロードでは、クラシック コンピューティングの構成または従来の Hive メタストアの操作が必要になる場合があります。 2つの計算タイプの比較については、 パイプラインに関するServerlessとclassic計算の比較を参照してください。 また 、パイプラインのクラシックコンピュートの設定 や、 レガシーのHiveメタストアでLakeflowパイプラインを使うことも参照してください。

Requirements

Important

サーバーレス パイプラインを構成するためにクラスター作成アクセス許可は必要ありません。 既定では、すべてのワークスペース ユーザーはサーバーレス パイプラインを使用できます。

サーバーレス パイプラインでは、Azure Databricks がすべてのインフラストラクチャを管理するため、ほとんどの構成オプションが除外されます。 新しいパイプラインを作成する場合、既定ではサーバーレスが使用されます。 サーバーレス パイプラインを構成する方法については、「パイプラインの 構成」を参照してください。

Unity カタログで構成された既存のパイプラインをサーバーレスを使用するように変換することもできます。 サーバーレスを使用するには、既存のパイプラインを変換するを参照してください。

その他の構成に関する考慮事項

サーバーレス パイプラインでは、次の構成オプションも使用できます。

サーバーレス Lakeflow パイプラインとのAzure Private Link接続を使用する必要がある場合は、Databricks の担当者にお問い合わせください。

サーバーレス使用ポリシー

Important

この機能は パブリック プレビュー段階です。

サーバーレス使用ポリシーを使用すると、組織は、詳細な課金属性のために、サーバーレスの使用状況にカスタム タグを適用できます。 [サーバーレス] チェック ボックスをオンにすると、[使用状況ポリシー] 設定が表示され、パイプラインに適用するポリシーを選択できます。 タグはサーバーレス使用ポリシーから継承され、ワークスペース管理者のみが編集できます。

注

サーバーレス使用ポリシーが割り当てられた後、既存のパイプラインにポリシーのタグが自動的に付けされることはありません。 ポリシーをアタッチする場合は、既存のパイプラインを手動で更新する必要があります。

サーバーレス使用ポリシーの詳細については、「サーバーレス使用ポリシー での属性の使用」を参照してください。

パフォーマンス モードを選択する

トリガーされたパイプラインの場合は、パイプライン スケジューラのパフォーマンス 最適化 設定を使用して、サーバーレス コンピューティング パフォーマンス モードを選択できます。 この設定を無効にすると、パイプラインは標準パフォーマンス モードを使用します。 Standard パフォーマンス モードは、起動待ち時間が少し長くなるワークロードのコストを削減するように設計されています。 標準パフォーマンス モードを使用するサーバーレス ワークロードは、通常、コンピューティングの可用性と最適化されたスケジュールに応じて、トリガーされてから 4 ~ 6 分以内に開始されます。

パフォーマンス最適化が有効になっている場合、パイプラインはパフォーマンス用に最適化されるため、時間の影響を受けやすいワークロードの起動と実行が高速化されます。

どちらのモードも同じ SKU を使用しますが、Standard パフォーマンス モードでは使用する DBU が少なく、コンピューティング使用量が少なくなります。

注

標準パフォーマンスモードを連続パイプラインで使用するには、連続ジョブでパイプラインを実行し、スケジュールの 性能最適化 チェックボックスをクリアします。 継続的ジョブで継続的パイプラインを実行するおよびパイプライン UI を使用してパイプラインをスケジュールするを参照してください。

サーバーレス パイプラインの機能

サーバーレス パイプラインには、構成の簡略化に加えて、次の機能があります。

  • マテリアライズドビューのインクリメンタルリフレッシュ: 可能な限り、具体化ビューの更新はインクリメンタルに実行されます。 増分更新の結果は、完全な再計算の結果と同じになります。 結果を増分的に計算できない場合、更新では完全更新が使用されます。 「具体化されたビューの増分更新」をご覧ください。
  • ストリーム パイプライン処理: データ インジェストなどのストリーミング データ ワークロードの使用率、スループット、待機時間を向上させるために、マイクロバッチが "パイプライン化" されます。 つまり、サーバーレスの Lakeflow パイプラインは、標準の Spark Structured Streaming のようにマイクロバッチを順番に実行する代わりに、マイクロバッチを同時に実行し、コンピューティング リソースの使用率を向上させます。 サーバーレス パイプラインでは、ストリーム パイプラインは既定で有効になっています。
  • 垂直方向の自動スケーリング: サーバーレスの Lakeflow パイプラインは、Databricks によって提供される水平自動スケーリングに追加されます。これは、メモリ不足エラーのために失敗することなくパイプラインを実行できる最もコスト効率の高いインスタンスの種類を自動的に割り当てることによって、自動スケーリングを強化しました。 「垂直自動スケールとは?」を参照してください。

サーバーレスを使用するように既存のパイプラインを変換する

Unity カタログで構成された既存のパイプラインをサーバーレス パイプラインに変換できます。 次の手順を実行します :

  1. Azure Databricksワークスペースのサイドバーで、ジョブ & パイプラインをクリックします。
  2. パイプラインの 名前 をクリックします。
  3. [設定]をクリックします。
  4. 右側のサイドバーの [ コンピューティング] で、[ 鉛筆アイコン] をクリックします。
  5. Serverless の横にあるチェック ボックスをオンにします。
  6. [保存] をクリックします。

Important

サーバーレスを有効にすると、パイプライン用に構成したすべてのコンピューティング設定が削除されます。 パイプラインをサーバーレス以外の更新プログラムに戻す場合は、必要なコンピューティング設定をパイプライン構成に再構成する必要があります。

サーバーレス パイプラインの DBU 使用法を見つける

サーバーレスの Lakeflow パイプラインの DBU 使用量は、Azure Databricks システム テーブルの一部である課金対象の使用状況テーブルに対してクエリを実行することで確認できます。 サーバーレス パイプラインの DBU 使用量を参照してください。

Limitations

  • サーバーレス コンピューティングの制限事項については、サーバーレス コンピューティングの制限を参照してください。 そこで説明されている Structured Streaming トリガーの制限は、パイプライン モードには適用されません。 サーバーレス パイプラインでは、トリガーモード、継続的モード、リアルタイム モードがサポートされます。 トリガーされたパイプライン モードと継続的パイプライン モードを参照してください。
  • サーバーレス パイプラインの JSON 構成の clusters オブジェクトにコンピューティング設定を手動で追加することはできません。 この操作を行おうとすると、エラーが発生します。
  • Python プロセス (dbutils.library.restartPython()) を手動で再起動することはサポートされていないため、実行時に依存関係をインストールまたは再読み込みすることはできません。 パイプラインの Python 依存関係の管理に関するページを参照してください。