ローカル開発環境で Delta Live Tables パイプライン コードを開発する

Databricks ワークスペースでノートブックまたはファイル エディターを使用して、Delta Live Tables Python インターフェイスを使用するパイプライン コードを実装するだけでなく、ローカル開発環境でコードを開発することもできます。 たとえば、Visual Studio Code や PyCharm などのお気に入りの統合開発環境 (IDE) を使用します。 パイプライン コードをローカルに記述した後、手動で Databricks ワークスペースに移動するか、Databricks ツールを使用して、パイプラインのデプロイと実行を含むパイプラインを運用化できます。

この記事では、Python パイプラインをローカルで開発し、それらのパイプラインを Databricks ワークスペースにデプロイするために使用できるツールと方法について説明します。 また、これらのツールや方法の使用方法の詳細が記載された記事へのリンクも掲載されています。

構文チェック、オートコンプリート、型チェックをIDEで行う

Databricks には、Delta Live Tables パイプラインのコード開発を支援するために、ローカル環境にインストールできる Python モジュールが用意されています。 このモジュールには、Delta Live Tables Python インターフェイスのインターフェイスと docstring 参照があり、IDE でコードを記述するときに構文チェック、オートコンプリート、およびデータ型チェックを提供します。

このモジュールにはインターフェイスが含まれていますが、機能的な実装は含まれていません。 このライブラリを使用して、Delta Live Tables パイプラインをローカルで作成または実行することはできません。 代わりに、以下で説明するいずれかの方法を使用してコードをデプロイします。

ローカル開発用のPythonモジュールはPyPIで利用できます。 インストールと使用の手順については、「 Delta Live Tables の Python スタブ」を参照してください。

Databricks アセットバンドルを使用したパイプライン コードの検証、デプロイ、実行

Delta Live Tables パイプライン コードを実装した後、Databricks では、Databricks アセット バンドルを使用してコードを運用可能にすることをお勧めします。 Databricks アセット バンドルは、パイプライン成果物の検証、ソース コードや構成などのすべてのパイプライン成果物のパッケージ化、Databricks ワークスペースへのコードのデプロイ、パイプライン更新の開始など、パイプライン開発ライフサイクルに CI/CD 機能を提供します。

Databricks アセット バンドルを使用してパイプライン コードを管理するバンドルを作成する方法については、「 Databricks アセット バンドルを使用して Delta Live Tables パイプラインを開発する」を参照してください。

IDEでのパイプラインコードの開発と同期

開発に Visual Studio Code IDE を使用する場合は、 Python モジュール を使用してコードを開発し、Visual Studio Code 用の Databricks 拡張機能を使用して、Visual Studio Code からワークスペースにコードを直接同期できます。 「 Visual Studio Code の Databricks 拡張機能とは」を参照してください。

Visual Studio Code の Databricks 拡張機能を使用してワークスペースに同期したコードを使用してパイプラインを作成する方法については、 「Git フォルダーまたはワークスペース ファイルから Python モジュールをインポートする」を参照してください。

パイプライン コードを Databricks ワークスペースに手動で同期する

Databricks アセット バンドルまたは Visual Studio Code の Databricks 拡張機能を使用してバンドルを作成する代わりに、コードを Databricks ワークスペースに同期し、そのコードを使用してワークスペース内にパイプラインを作成できます。 これは、開発およびテストの段階で、コードをすばやく反復処理する場合に特に役立ちます。 Databricks では、ローカル環境からワークスペースにコードを移動するいくつかの方法がサポートされています。

以下のいずれかの方法でワークスペースに同期したコードを使用してパイプラインを作成する方法については、 「Git フォルダーまたはワークスペース ファイルから Python モジュールをインポートする」を参照してください。

  • ワークスペース ファイル: Databricks ワークスペース ファイルを使用して、パイプラインのソース コードを Databricks ワークスペースにアップロードし、そのコードをパイプラインにインポートできます。 ワークスペース ファイルの使用方法については、「 ワークスペース ファイルとは」を参照してください。

  • Databricks Git フォルダー: コラボレーションとバージョン管理を容易にするために、Databricks では、Databricks Git フォルダーを使用して、ローカル環境と Databricks ワークスペース間でコードを同期することをお勧めします。 Git フォルダーは Git プロバイダーと統合されており、ローカル環境からコードをプッシュし、そのコードをワークスペースのパイプラインにインポートすることができます。 Databricks Git フォルダーの使用方法については、 「Git と Databricks Git フォルダーの統合」を参照してください。

  • コードを手動でコピーする: ローカル環境からコードをコピーし、そのコードを Databricks ノートブックに貼り付け、Delta Live Tables UI を使用してノートブックで新しいパイプラインを作成できます。 UI でパイプラインを作成する方法については、「 チュートリアル: 最初の Delta Live Tables パイプラインを実行する」を参照してください。

カスタム CI/CD ワークフローを実装する

パイプラインを管理するスクリプトを記述する場合、Databricks には、一般的なプログラミング言語用の REST API、Databricks コマンド ライン インターフェイス (CLI)、ソフトウェア開発キット (SDK) が用意されています。 Databricks Terraform プロバイダーで databricks_pipeline リソースを使用することもできます。

REST API の使用方法については、「Databricks REST API リファレンス」の「 Delta Live Tables 」を参照してください。

Databricks CLI の使用方法については、「 Databricks CLI とは」を参照してください。

Databricks Python SDK の使用方法については、プロジェクトの GitHub リポジトリにある 「Databricks SDK for Python 」と 「パイプラインの例 」を参照してください。

他の言語で Databricks SDK を使用する方法については、「 Databricks で SDK を使用する」を参照してください。

Databricks Terraform プロバイダーの使用方法については、「Databricks Terraform プロバイダー」と「 パイプライン リソース 」の Terraform ドキュメントを参照してください。