サーバーレス コンピュートを使用してDelta Live Tablesでフルマネージド パイプラインを作成する

注:

サーバーレス DLT パイプラインの適格性と有効化に関する情報については、 「サーバーレス コンピュートの有効化」を参照してください。

この記事では、サーバーレス コンピュートを使用したDelta Live Tablesを使用して、フルマネージド コンピュートでパイプラインの更新を実行する方法と、パイプラインのパフォーマンスを向上させるサーバーレス コンピュートの機能について詳しく説明します。

サーバーレス DLT パイプラインを使用すると、インフラストラクチャを構成および展開せずにDelta Live Tablesパイプラインを実行できます。 サーバーレス DLT パイプラインを使用すると、データの取り込みと変換の実装に集中でき、 Databricksワークロードの最適化とスケーリングを含むコンピュート リソースを効率的に管理します。 サーバーレス DLT パイプラインには次の機能が含まれています。

  • 必要なときだけ実行する、自動的に最適化されたコンピュート。

  • 信頼性が高く、フルマネージドなコンピュートリソース。

  • マテリアライズド ビューの増分更新により、データセットの更新がより効率的になります。

  • パイプライン更新を実行するコンピュートリソースの起動が高速化されます。

サーバレス DLT パイプラインには、パイプラインの処理パフォーマンスを最適化し、コンピュートリソースのより効率的な使用をサポートし、パイプラインの実行コストを削減するための次の機能もあります。

  • ストリーム パイプライン: データ取り込みなどのストリーミング データ ワークロードの使用率、スループット、レイテンシを向上させるために、マイクロバッチがパイプラインに使用されます。 つまり、標準のSpark構造化ストリーミングのようにマイクロバッチを順番に実行するのではなく、サーバレス DLT パイプラインはマイクロバッチを同時に実行し、コンピュートリソースの使用率を向上させます。 ストリーム パイプラインは、サーバーレス DLT パイプラインの デフォルト によって有効化されます。

  • 垂直オートスケール : サーバレス DLT パイプラインは、メモリ不足エラーによって失敗することなくDatabricks Delta Live Tablesパイプラインを実行できる最もコスト効率の高いインスタンス タイプを自動的に割り当てることで、 拡張オートスケール によって提供される水平オートスケールを拡張します。「垂直オートスケールとは何ですか?」を参照してください。

クラスター作成権限は必要ないため、すべてのワークスペース ユーザーはサーバーレス DLT パイプラインを使用してワークフローを実行できます。

要件

  • サーバーレス DLT パイプラインを使用するには、ワークスペースでUnity Catalogが有効になっている必要があります。

サーバーレス DLT パイプラインを使用してパイプライン更新を実行する

重要

コンピュート リソースはサーバーレス DLT パイプラインのフルマネージド サービスであるため、サーバーレス パイプラインのDelta Live Tables UI ではコンピュート設定は使用できません。 サーバーレスを有効にすると、パイプラインに対して構成したすべてのコンピュート設定が削除されます。 パイプラインを非サーバレス更新に戻す場合は、これらのコンピュート設定をパイプライン構成に再度追加する必要があります。 また、パイプラインのJSON構成の clusters オブジェクトにコンピュート設定を手動で追加することもできません。

サーバーレス DLT パイプラインを使用するパイプライン更新を実行するには、パイプライン を作成 または編集するときに 、サーバーレス チェックボックスをオンにします。

サーバーレス DLT パイプラインではマテリアライズド ビューはどのように更新されますか?

可能な場合、サーバーレス パイプライン内のマテリアライズド ビューのクエリ結果は増分的に更新されます。 増分更新を実行すると、結果は完全な再計算と同等になります。 マテリアライズド ビューを増分更新できない場合、更新プロセスでは代わりに完全更新が使用されます。 マテリアライズド ビューの更新操作を参照してください。

縦型オートスケールとは何ですか?

サーバレス DLT パイプライン オートスケールは、メモリ不足エラーによって失敗することなくDelta Live Tablesパイプラインの更新を実行するために、最もコスト効率の高い利用可能なインスタンス タイプを自動的に割り当てます。 垂直オートスケールは、パイプラインの更新を実行するために大規模なインスタンス タイプが必要な場合はスケールアップし、小規模なインスタンス タイプで更新を実行できると判断された場合はスケールダウンします。 垂直オートスケールは、ドライバー ノード、ワーカー ノード、またはドライバー ノードとワーカー ノードの両方をスケールアップまたはスケールダウンするかどうかを決定します。

垂直オートスケールは、 Databricks SQLマテリアライズド ビューおよびストリーミング テーブルで使用されるパイプラインを含む、すべてのサーバーレス DLT パイプラインに使用されます。

垂直オートスケールは、メモリ不足エラーのために失敗した パイプライン更新を検出することによって機能します。 これらの障害が検出されると、垂直オートスケールは、失敗した更新から収集されたメモリ不足データに基づいて、より大きなインスタンス タイプを割り当てます。 本番運用モードでは、新しいコンピュートリソースを使用した新しいアップデートが自動的に開始されます。 開発モードでは、手動で新しいアップデートを開始すると、新しいコンピュートリソースが使用されます。

垂直オートスケールは、割り当てられたインスタンスのメモリが一貫して十分に活用されていないことを検出すると、次の GitHub 更新で使用するインスタンス タイプをスケールダウンします。

制限事項

パイプラインで AWSPrivateLink 接続を使用するには、Delta Live Tables プレビューチャンネル を使用するようにパイプラインを設定する必要があります。