DLT パイプラインを構成する
この記事では、ワークスペース UI を使用した DLT パイプラインの基本的な構成について説明します。
この記事の構成手順では、Unity Catalog を使用します。 従来のHive metastoreでパイプラインを設定する手順については、「従来のHive metastoreでの DLT パイプラインの使用」を参照してください。
この記事では、パイプラインの現在のデフォルト発行モードの機能について説明します。 2025 年 2 月 5 日より前に作成されたパイプラインでは、従来の発行モードと LIVE
仮想スキーマが使用される場合があります。 LIVE スキーマ (レガシー)を参照してください。
UI には、JSON で設定を表示および編集するオプションがあります。 ほとんどの設定は、UI または JSON 仕様のいずれかで構成できます。 一部の詳細オプションは、JSON 構成を使用してのみ使用できます。
JSON 設定ファイルは、パイプラインを新しい環境にデプロイする場合や、CLI または REST API を使用する場合にも役立ちます。
DLT JSON 構成設定の完全なリファレンスについては、「 DLT パイプライン構成」を参照してください。
新しい DLT パイプラインを構成する
新しい DLT パイプラインを設定するには、次の手順を実行します。
-
サイドバーの 「DLT 」をクリックします。
-
パイプラインの作成 をクリックします。
-
一意の パイプライン名 を指定します。
-
(オプション)
ファイル ピッカーを使用して、ノートブックとワークスペース ファイルを ソース コード として構成します。
-
ソース コードを追加しない場合は、パイプラインの新しいノートブックが作成されます。 ノートブックはユーザーディレクトリの新しいディレクトリに作成され、パイプラインの作成後に、このノートブックにアクセスするためのリンクが パイプラインの詳細 ペインの ソースコード フィールドに表示されます。
- このノートブックには、パイプライン を作成すると、パイプラインの詳細 パネルの ソース コード フィールドの下に表示される URL からアクセスできます。
-
ソースコードを追加 ボタンを使用して、ソースコードアセットを追加します。
-
-
ストレージ オプション で Unity Catalog を選択します。
-
カタログ を選択します。この設定は、デフォルト カタログとパイプライン メタデータの格納場所を制御します。
-
カタログで スキーマ を選択します。 デフォルトでは、パイプラインで定義されたストリーミングテーブルとマテリアライズドビューは、このスキーマで作成されます。
-
コンピュート セクションで、 Use Å Å AccelerationPhoton 横のボックスにチェックを入れます。コンピュート構成に関するその他の考慮事項については、 コンピュート構成オプションを参照してください。
-
作成 をクリックします。
これらの推奨構成では、 トリガー モードで実行するように設定された新しいパイプラインを作成し、 Current チャンネルを使用します。 この構成は、開発やテストなど、多くのユースケースに推奨され、スケジュールに従って実行する必要がある本番運用ワークロードに適しています。 パイプラインのスケジューリングの詳細については、「 ジョブの DLT パイプライン タスク」を参照してください。
コンピュート コンフィギュレーション オプション
Databricksでは常に 強化 オートスケール を使用することをお勧めします。 他のコンピュート構成のデフォルト値は、多くのパイプラインで適切に機能します。
次の設定を使用して、コンピュート構成をカスタマイズします。
-
ワークスペース 管理者は、 クラスターポリシー を構成できます。 コンピュート ポリシーを使用すると、管理者はユーザーが使用できるコンピュート オプションを制御できます。 「クラスターポリシーの選択」を参照してください。
-
オプションで、 クラスタリングモード を 固定サイズ または レガシーオートスケール で実行するように構成できます。 拡張オートスケールによる DLT パイプラインのクラスタリング利用の最適化を参照してください。
-
オートスケールが有効になっているワークロードの場合は、 Min ワーカー と Max ワーカー を設定して、スケーリング動作の制限を設定します。 DLT パイプラインのコンピュートの設定を参照してください。
-
オプションでPhotonアクセラレーションをオフにすることができます。 Photonとはを参照してください。
-
クラスタータグ を使用して、DLT パイプラインに関連するコストをモニタリングします。「クラスタータグの構成」を参照してください。
-
[インスタンスタイプ ] を設定して、パイプラインの実行に使用する仮想マシンのタイプを指定します。「 パイプラインを実行するためのインスタンスタイプを選択する」を参照してください。
- パイプラインで構成されたワークロードに最適化された ワーカータイプ を選択します。
- オプションで、ワーカータイプとは異なる ドライバータイプ を選択できます。 これは、ワーカーの種類が大きく、ドライバーのコンピュート使用率が低いパイプラインのコストを削減したり、小さなワーカーが多いワークロードでメモリ不足の問題を回避するために大きなドライバーの種類を選択したりする場合に便利です。
その他の構成に関する考慮事項
パイプラインでは、次の設定オプションも使用できます。
-
Advanced 製品エディションでは、すべてのDLT機能にアクセスできます。必要に応じて、 Pro または Core 製品エディションを使用してパイプラインを実行できます。 「製品エディションの選択」を参照してください。
-
本番運用でパイプラインを実行する場合は、 Continuous パイプライン モードを使用することを選択できます。 「トリガー パイプライン モードと継続的パイプライン モード」を参照してください。
-
ワークスペースがUnity Catalog用に設定されていない場合、またはワークロードでレガシーHive metastoreを使用する必要がある場合は、「レガシーHive metastoreでの DLT パイプラインの使用」を参照してください。
-
成功または失敗の条件に基づくEメール更新の 通知 を追加します。 「パイプラインイベントのEメール通知の追加」を参照してください。
-
Configuration フィールドを使用して、パイプラインのキーと値のペアを設定します。これらの構成には、次の 2 つの目的があります。
- ソース コードで参照できる任意のパラメーターを設定します。 「DLT パイプラインでのパラメーターの使用」を参照してください。
- パイプライン設定と Spark 設定を構成します。 DLT プロパティのリファレンスを参照してください。
-
Preview チャンネルを使用して、保留中の DLT ランタイムの変更に対してパイプラインをテストし、新機能を試用します。
製品エディションを選択する
パイプライン要件に最適な機能を備えたDLT製品版をお選びください。 次の製品エディションが利用可能です。
Core
を使用して、ストリーミング取り込みワークロードを実行します。パイプラインがチェンジデータキャプチャ (CDC) や DLT 期待値などの高度な機能を必要としない場合は、Core
エディションを選択します。Pro
ストリーミング取り込みと CDC ワークロードを実行します。Pro
製品エディションは、すべてのCore
機能に加えて、ソース データの変更に基づいてテーブルを更新する必要があるワークロードをサポートします。Advanced
ストリーミング取り込みワークロード、CDC ワークロード、および期待値が必要なワークロードを実行します。Advanced
製品エディションは、Core
エディションとPro
エディションの機能をサポートし、DLT の期待値に対するデータ品質制約が含まれています。
製品エディションは、パイプラインを作成または編集するときに選択できます。パイプラインごとに異なるエディションを選択できます。DLT製品のページをご覧ください。
注: パイプラインに、エクスペクテーションなど、選択した製品エディションでサポートされていない機能が含まれている場合は、エラーの理由を説明するエラー メッセージが表示されます。 その後、パイプラインを編集して適切なエディションを選択できます。
ソースコードの設定
DLT UI のファイル セレクターを使用して、パイプラインを定義するソース コードを構成できます。パイプラインのソースコードは、Databricks ノートブック、またはワークスペースファイルに格納された SQL または Python スクリプトで定義されます。 パイプラインを作成または編集するときに、1 つ以上のノートブックまたはワークスペース ファイル、またはノートブックとワークスペース ファイルの組み合わせを追加できます。
DLT はデータセットの依存関係を自動的に分析してパイプラインの処理グラフを構築するため、ソース コード資産を任意の順序で追加できます。
JSON ファイルを変更して、SQL で定義された DLT ソースコードと、ワークスペースファイルに格納された Python スクリプトを含めることができます。次の例には、ノートブックとワークスペース ファイルが含まれています。
{
"name": "Example pipeline 3",
"storage": "dbfs:/pipeline-examples/storage-location/example3",
"libraries": [
{ "notebook": { "path": "/example-notebook_1" } },
{ "notebook": { "path": "/example-notebook_2" } },
{ "file": { "path": "/Workspace/Users/<user-name>@databricks.com/Apply_Changes_Into/apply_changes_into.sql" } },
{ "file": { "path": "/Workspace/Users/<user-name>@databricks.com/Apply_Changes_Into/apply_changes_into.py" } }
]
}
Python を使用するパイプラインの外部依存関係を管理する
DLT では、Python パッケージやライブラリなど、パイプラインでの外部依存関係の使用がサポートされています。依存関係の使用に関するオプションと推奨事項については、「 DLT パイプラインの Python 依存関係の管理」を参照してください。
Databricks ワークスペースに格納されている Python モジュールを使用する
Python コードを Databricks ノートブックに実装するだけでなく、Databricks Git フォルダーまたはワークスペース ファイルを使用して、コードを Python モジュールとして保存できます。 コードを Python モジュールとして格納すると、同じパイプライン内の複数のパイプラインまたはノートブックで使用する共通の機能がある場合に特に便利です。 パイプラインで Python モジュールを使用する方法については、「 Git フォルダーまたはワークスペース ファイルから Python モジュールをインポートする」を参照してください。