メインコンテンツまでスキップ

ワークスペースでのバンドルの作成

備考

プレビュー

ワークスペース内の Databricks アセット バンドルは パブリック プレビュー段階です。

Databricks アセット バンドルは、ワークスペースで直接作成および変更できます。

ワークスペースでバンドルを使用するための要件については、 ワークスペースでのDatabricks アセット バンドルの要件を参照してください。

バンドルの詳細については、Databricks アセットバンドルとはを参照してください。

バンドルを作成する

Databricks ワークスペースにバンドルを作成するには:

  1. バンドルを作成するGitフォルダに移動します。

  2. 作成 ボタンをクリックし、 アセットバンドル をクリックします。または、ワークスペースツリーで Git フォルダまたはそれに関連するケバブを右クリックし、 作成 > アセットバンドル をクリックします。

    アセットバンドルを作成

  3. [ アセットバンドルの作成 ] ダイアログで、アセットバンドルに名前を付けます ( 例: totally-awesome-bundle )。バンドル名には、文字、数字、ダッシュ、アンダースコアのみを含めることができます。

  4. [ テンプレート] で、空のバンドル、サンプル Python ノートブックを実行するバンドル、または SQL を実行するバンドルのどれを作成するかを選択します。LakeFlow Pipelines エディターが有効になっている場合は、ETL パイプライン プロジェクトを作成するオプションも表示されます。

    「新規アセットバンドルの作成」ダイアログ

  5. 一部のテンプレートには追加の設定が必要です。[ 次へ ] をクリックして、プロジェクトの構成を完了します。

テンプレート

構成オプション

Lakeflow 宣言型パイプライン

  • 初期カタログ - パイプライン データに使用するカタログ
  • 個人用スキーマを使用 - このバンドルでコラボレーションする各ユーザーに個人用スキーマを使用するかどうか
  • 開発中の初期スキーマ - 使用するスキーマ
  • このプロジェクトの初期言語 - パイプライン内のコード ファイルの言語

デフォルトのPython

  • サンプル ノートブックを含める
  • サンプル パイプラインを含める
  • サンプル Python パッケージを含める
  • サーバレス コンピュートを使用する

デフォルト SQL

  • SQLウェアハウスパス

  • 初期カタログ

  • 個人用スキーマを使用する

  • 開発中の初期スキーマ

  1. [ 作成とデプロイ ] をクリックします。

これにより、選択したプロジェクト テンプレートのファイル、 .gitignore Git 構成ファイル、および必要な Databricks アセット バンドル databricks.yml ファイルを含む初期バンドルが Git フォルダーに作成されます。databricks.ymlファイルには、バンドルのメイン構成が含まれています。詳細については、「 Databricks 資産バンドルの構成」を参照してください。

🆕

バンドル内のファイルに加えられた変更は、Git フォルダに関連付けられたリモートリポジトリと同期できます。Git フォルダーには、多数のバンドルを含めることができます。

バンドルに新しいファイルを追加する

バンドルには、デプロイメントとワークスペースの構成を定義する databricks.yml ファイル、ソース・ファイル (ノートブック、 Python ・ファイル、テスト・ファイルなど)、 Databricks リソースの定義と設定 ( Lakeflow ジョブや宣言型パイプラインなど) が含まれます Lakeflow 。 他のワークスペースフォルダと同様に、バンドルに新しいファイルを追加できます。

ヒント

バンドル ビューの新しいタブを開いてバンドル ファイルを変更するには、ワークスペース内のバンドル フォルダーに移動し、バンドル名の右側にある エディターで開く をクリックします。

ソースコードファイルの追加

ワークスペース UI で新しいノートブックまたはその他のファイルをバンドルに追加するには、バンドル フォルダーに移動し、次の操作を行います。

  • 右上の 作成 をクリックし、バンドルに追加するファイル タイプとして [ノートブック]、[ファイル]、[クエリ]、[ダッシュボード] のいずれかを選択します。
  • または、[ 共有 ] の左側にあるケバブをクリックして、ファイルをインポートします。
注記

ファイルをバンドル デプロイメントの一部にするには、バンドル フォルダにファイルを追加した後、そのファイルを databricks.yml バンドル設定に追加するか、そのファイルを含むジョブまたはパイプライン定義ファイルを作成する必要があります。バンドルへの既存のリソースの追加を参照してください。

ジョブ定義を追加する

バンドルには、デプロイに含めるジョブやパイプラインなどのリソースの定義が含まれています。これらの定義は YAML または Python で指定され、UI で直接これらの構成を作成および編集できます。

ジョブを定義するバンドル設定ファイルを作成するには、次のようにします。

  1. 新しいジョブを定義するワークスペース内のバンドルフォルダーに移動します。
ヒント

以前にワークスペースのエディターでバンドルを開いたことがある場合は、ワークスペース・ブラウザーのオーサリング・コンテキスト・リストを使用して、バンドル・フォルダーにナビゲートできます。オー サリングコンテキストを参照してください。

  1. バンドル名の右側にある「 エディターで開く 」をクリックして、バンドル・エディター・ビューに移動します。

  2. バンドルのデプロイメント・アイコンをクリックして、 デプロイメント パネルに切り替えます。

    デプロイパネルのアイコン

  3. 「バンドル・リソース 」で、「 作成 」をクリックし、「 新規ジョブ定義の作成 」をクリックします。

    ジョブ定義を作成

  4. ジョブ定義の作成 ダイアログの ジョブ名 フィールドにジョブの名前を入力します。 作成 をクリックします。

  5. 作成したジョブ定義ファイルに YAML を追加します。次の YAML の例は、ノートブックを実行するジョブを定義しています。

    YAML
    resources:
    jobs:
    run_notebook:
    name: run-notebook
    queue:
    enabled: true
    tasks:
    - task_key: my-notebook-task
    notebook_task:
    notebook_path: ../helloworld.ipynb

YAML でのジョブの定義の詳細については、「 ジョブ」を参照してください。 サポートされている他のジョブ タスク タイプの YAML 構文については、「Databricks Asset Bundles のジョブにタスクを追加する」を参照してください。

パイプラインを追加する

パイプラインをバンドルに追加するには:

  1. 新しいパイプラインを定義するワークスペース内のバンドル フォルダーに移動します。
ヒント

以前にワークスペースのエディターでバンドルを開いたことがある場合は、ワークスペース・ブラウザーのオーサリング・コンテキスト・メニューを使用して、バンドル・フォルダーにナビゲートできます。オー サリングコンテキストを参照してください。

  1. バンドル名の右側にある「 エディターで開く 」をクリックして、バンドル・エディター・ビューに移動します。

  2. バンドルのデプロイメント・アイコンをクリックして、 デプロイメント パネルに切り替えます。

    デプロイパネルのアイコン

  3. [ リソースをバンドル ] で、[ 作成 ] をクリックし、[ 新しいパイプライン定義を作成 ] または [新しい ETLパイプラインを作成 ] をクリックします (ワークスペースでLakeFlow Pipelinesエディターを有効にしている場合)。パイプライン作成エクスペリエンスは、これら 2 つのオプションで異なります。

パイプライン定義の作成

バンドル・リソース作成メニューから「 新しいパイプライン定義の作成 」を選択した場合は、次に次の操作を行います。

  1. パイプライン定義の作成 ダイアログの パイプライン名 フィールドに、パイプラインの名前を入力します。
  2. ソース コード フィールドの右側にあるフォルダー アイコンをクリックし、このパイプラインで実行するコードを選択します。 作成 をクリックします。

ノートブックを実行する名前の test_pipeline のパイプラインの場合、次のYAMLは次のファイル test_pipeline.pipeline.yml作成されます。

YAML
resources:
pipelines:
test_pipeline:
name: test_pipeline
libraries:
- notebook:
path: ../helloworld.ipynb
serverless: true
catalog: main
target: test_pipeline_${bundle.environment}

YAML でのパイプラインの定義の詳細については、「 パイプライン」を参照してください。

ETL パイプラインの作成

バンドルリソース作成メニューから [ 新しい ETL パイプラインを作成 ] を選択した場合は、次に次の操作を行います。

  1. パイプライン の作成ダイアログ の 名前 フィールド にパイプラインの名前を入力します。名前はワークスペース内で一意である必要があります。
  2. 個人スキーマの使用 フィールドで、開発シナリオの場合は はい を選択し、本番運用シナリオの場合は いいえ を選択します。
  3. パイプラインの デフォルトカタログデフォルトスキーマ を選択します。
  4. パイプラインソースコードの言語を選択します。
  5. [ 作成とデプロイ ] をクリックします。

ETL パイプライン ダイアログの作成

ETL パイプラインは、探索テーブルと変換テーブルの例を使用して作成されます。

ワークスペース内のバンドル内の ETL パイプライン

名前が rad_pipelineのパイプラインの場合、次の YAML がファイル rad_pipeline.pipeline.ymlに作成されます。このパイプラインは、サーバレス コンピュートで実行するように設定されています。

YAML
resources:
pipelines:
rad_pipeline:
name: rad_pipeline
libraries:
- glob:
include: transformations/**
serverless: true
catalog: main
schema: ${workspace.current_user.short_name}
root_path: .

既存のリソースをバンドルに追加する

パイプラインなどの既存のリソースや、ノートブックやその他のソース ファイルなどのアセットをバンドルに追加できます。ただし、バンドルデプロイメントに含めるには、バンドル設定で定義する必要があります。次の例では、既存のパイプラインをバンドルに追加します。

共有ワークスペースで taxifilter.ipynb ノートブックを実行する taxifilter という名前のパイプラインがあるとします。

  1. Databricks ワークスペースのサイドバーで、[ ジョブとパイプライン] をクリックします。

  2. 必要に応じて、 [パイプライン ] フィルターと [自分が所有 ] フィルターを選択します。

  3. 既存の taxifilter パイプラインを選択します。

  4. パイプライン ページで、 開発 、デプロイメントモードボタンの左側にあるケバブをクリックします。次に、[ 設定 YAML の表示 ] をクリックします。

  5. コピーアイコンをクリックして、パイプラインのバンドル設定をコピーします。

  6. ワークスペース でバンドルに移動します。

  7. バンドルのデプロイメント・アイコンをクリックして、 デプロイメント パネルに切り替えます。

  8. バンドル リソース で、 作成 をクリックし、 新しいパイプライン定義の作成 をクリックします。

  9. パイプライン定義の作成 ダイアログの パイプライン名 フィールドに「taxifilter」と入力します。 作成 をクリックします。

  10. 既存のパイプラインの構成をファイルに貼り付けます。このパイプライン例は、 taxifilter ノートブックを実行するように定義されています。

    YAML
    resources:
    pipelines:
    taxifilter:
    name: taxifilter
    catalog: main
    libraries:
    - notebook:
    path: /Workspace/Shared/taxifilter.ipynb
    target: taxifilter_${bundle.environment}

これで、バンドルをデプロイし、UI を使用してパイプライン リソースを実行できます。