この記事では、サーバーレスの Lakeflow 宣言パイプラインの構成について説明します。
Databricks では、サーバーレスを使用して新しいパイプラインを開発することをお勧めします。 一部のワークロードでは、クラシック コンピューティングの構成または従来の Hive メタストアの操作が必要になる場合があります。 「 Lakeflow 宣言パイプラインのコンピューティングを構成する 」と「 従来の Hive メタストアで Lakeflow 宣言パイプラインを使用する」を参照してください。
注
- サーバーレス パイプラインでは、常に Unity カタログが使用されます。 「Lakeflow 宣言パイプラインで Unity カタログを使用する」を参照してください。
- サーバーレス コンピューティングの制限事項については、サーバーレス コンピューティングの制限を参照してください。
- サーバーレス パイプラインの JSON 構成の
clusters
オブジェクトにコンピューティング設定を手動で追加することはできません。 この操作を行おうとすると、エラーが発生します。
- サーバーレスの Lakeflow 宣言パイプラインで Azure Private Link 接続を使用する必要がある場合は、Databricks の担当者にお問い合わせください。
必要条件
- サーバーレス パイプラインを使用するには、ワークスペースで Unity カタログが有効になっている必要があります。
- ワークスペースは、サーバーレス対応リージョン内に存在する必要があります。
サーバーレス パイプラインの推奨される構成
重要
サーバーレス パイプラインを構成するためにクラスター作成アクセス許可は必要ありません。 既定では、すべてのワークスペース ユーザーはサーバーレス パイプラインを使用できます。
Azure Databricks ではすべてのインフラストラクチャが管理されるため、サーバーレス パイプラインではほとんどの構成オプションが削除されます。 サーバーレス パイプラインを構成するには、次の操作を行います。
- ワークスペースで、[ワークフロー] アイコンをクリック
サイドバーのジョブとパイプライン。
- [ 新規] の [ ETL パイプライン] をクリックします。
- 一意の Pipeline 名を指定します。
- Serverless の横にあるチェック ボックスをオンにします。
- (省略可能)
ファイル ピッカーを使用して、ノートブックとワークスペース ファイルを Source コードとして構成します。
- ソース コードを追加しない場合は、パイプライン用に新しいノートブックが作成されます。 ノートブックはユーザー ディレクトリ内の新しいディレクトリに作成され、パイプラインを作成した後、このノートブックにアクセスするためのリンクが [パイプラインの詳細] ウィンドウの [ソース コード] フィールドに表示されます。
- パイプラインを作成すると、[パイプラインの詳細] パネルの [ソース コード] フィールドの下に、このノートブックにアクセスするためのリンクが表示されます。
- [ソース コードの追加] ボタンを使用して、ソース コード資産を追加します。
- ソース コードを追加しない場合は、パイプライン用に新しいノートブックが作成されます。 ノートブックはユーザー ディレクトリ内の新しいディレクトリに作成され、パイプラインを作成した後、このノートブックにアクセスするためのリンクが [パイプラインの詳細] ウィンドウの [ソース コード] フィールドに表示されます。
- Catalog を選択してデータを発行します。
- カタログ内の Schema を選択します。 パイプラインで定義されているすべてのストリーミング テーブルと具体化されたビューは、このスキーマに作成されます。
- Create をクリックしてください。
これらの推奨される構成では、 Triggered モードと Current チャネルで実行するように構成された新しいパイプラインが作成されます。 この構成は、開発やテストを含む多くのユース ケースに推奨され、スケジュールに従って実行する運用ワークロードに適しています。 パイプラインのスケジュール設定の詳細については、 ジョブのパイプライン タスクに関するページを参照してください。
Unity カタログで構成された既存のパイプラインをサーバーレスを使用するように変換することもできます。 サーバーレスを使用するには、既存のパイプラインを変換するを参照してください。
その他の構成に関する考慮事項
サーバーレス パイプラインでは、次の構成オプションも使用できます。
- 運用環境でパイプラインを実行するときに、 Continuous パイプライン モードを使用することもできます。 トリガーされたパイプライン モードと継続的パイプライン モードを参照してください。
- 成功または失敗の条件に基づいて電子メールの更新に Notifications を追加します。 パイプライン イベント の電子メール通知の追加を参照してください。
-
Configuration フィールドを使用して、パイプラインのキーと値のペアを設定します。 これらの構成は、次の 2 つの目的に役立ちます。
- ソース コードで参照できる任意のパラメーターを設定します。 「Lakeflow 宣言パイプラインでパラメーターを使用する」を参照してください。
- パイプライン設定と Spark 構成を構成します。 「Lakeflow 宣言型パイプラインのプロパティリファレンス」を参照してください。
- プレビュー チャネルを使用して、保留中の Lakeflow 宣言型パイプラインのランタイム変更と試用版の新機能に対してパイプラインをテストします。
サーバーレス予算ポリシー
重要
この機能はパブリック プレビュー段階にあります。
サーバーレス予算ポリシーを使用すると、組織はサーバーレス使用量にカスタム タグを適用して、詳細な課金属性を設定できます。 [サーバーレス] チェック ボックスをオンにすると、パイプラインに適用するポリシーを選択できる Budget ポリシー設定が表示されます。 タグはサーバーレス予算ポリシーから継承され、ワークスペース管理者のみが編集できます。
注
サーバーレス予算ポリシーが割り当てられた後、既存のパイプラインにポリシーのタグが自動的に付けされることはありません。 ポリシーをアタッチする場合は、既存のパイプラインを手動で更新する必要があります。
サーバーレス予算ポリシーの詳細については、「サーバーレス予算ポリシー での属性の使用」を参照してください。
パフォーマンス モードを選択する
トリガーされたパイプラインの場合は、パイプライン スケジューラのパフォーマンス 最適化 設定を使用して、サーバーレス コンピューティング パフォーマンス モードを選択できます。 この設定を無効にすると、パイプラインは標準パフォーマンス モードを使用します。 Standard パフォーマンス モードは、起動待ち時間が少し長くなるワークロードのコストを削減するように設計されています。 標準パフォーマンス モードを使用するサーバーレス ワークロードは、通常、コンピューティングの可用性と最適化されたスケジュールに応じて、トリガーされてから 4 ~ 6 分以内に開始されます。
パフォーマンス最適化が有効になっている場合、パイプラインはパフォーマンス用に最適化されるため、時間の影響を受けやすいワークロードの起動と実行が高速化されます。
注
標準パフォーマンス モードは、 トリガーされる パイプライン モードでのみサポートされます。 継続的な実行はサポートされていません。
サーバーレス パイプラインの機能
サーバーレス パイプラインには、構成の簡略化に加えて、次の機能があります。
- マテリアライズドビューのインクリメンタルリフレッシュ: 可能な限り、具体化ビューの更新はインクリメンタルに実行されます。 増分更新の結果は、完全な再計算の結果と同じになります。 結果を増分的に計算できない場合、更新では完全更新が使用されます。 「具体化されたビューの増分更新」をご覧ください。
- ストリーム パイプライン処理: データ インジェストなどのストリーミング データ ワークロードの使用率、スループット、待機時間を向上させるために、マイクロバッチが "パイプライン化" されます。 言い換えると、サーバーレスの Lakeflow 宣言パイプラインは、標準の Spark 構造化ストリーミングと同様にマイクロバッチを順番に実行する代わりに、マイクロバッチを同時に実行し、コンピューティング リソースの使用率を向上させます。 サーバーレスの Lakeflow 宣言パイプラインでは、ストリームパイプラインが既定で有効になっています。
- 垂直方向の自動スケーリング: サーバーレスの Lakeflow 宣言型パイプラインは、Databricks によって提供される水平自動スケーリングに追加されます。これは、メモリ不足エラーのために失敗することなくパイプラインを実行できる最もコスト効率の高いインスタンスの種類を自動的に割り当てることによって、自動スケーリングを強化しました。 「垂直自動スケールとは?」を参照してください。
サーバーレスを使用するように既存のパイプラインを変換する
Unity カタログで構成された既存のパイプラインをサーバーレス パイプラインに変換できます。 次の手順を実行します :
- Azure Databricks ワークスペースのサイドバーで、
ジョブ & パイプライン をクリックします。 - パイプラインの 名前 をクリックします。
- サイドバー で [パイプライン ] をクリックします。
- 一覧で目的のパイプラインの名前をクリックします。
- [設定] をクリックします。
- Serverless の横にあるチェック ボックスをオンにします。
- [ 保存して開始] をクリックします。
重要
サーバーレスを有効にすると、パイプライン用に構成したすべてのコンピューティング設定が削除されます。 パイプラインをサーバーレス以外の更新プログラムに戻す場合は、必要なコンピューティング設定をパイプライン構成に再構成する必要があります。
サーバーレス パイプラインの DBU の使用状況を確認するにはどうすればよいでしょうか。
Azure Databricks システム テーブルの一部である課金対象の使用状況テーブルに対してクエリを実行することで、サーバーレス Lakeflow 宣言パイプラインの DBU 使用率を確認できます。 サーバーレス パイプラインの DBU 使用量を参照してください。