0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Databricks Asset Bundlesメモ

Posted at

Databricks Asset Bundles(DABs) は、
Databricks 上のパイプライン、ジョブ、ノートブック、SQLクエリなどのリソースをコードとして管理・デプロイするための仕組みです。
いわば「Databricks の IaC(Infrastructure as Code)+ CI/CD 対応パッケージ」です。


1. 目的

  • Databricks の構成(Jobs、Delta Live Tables、モデル登録など)を YAML やディレクトリ構造で宣言的に定義
  • ローカルや GitHub からワークスペースに 一括デプロイ
  • 環境ごと(dev, staging, prod)に設定を切り替え
  • CI/CD パイプラインから自動デプロイ

2. 構成イメージ

プロジェクトはディレクトリ単位で「バンドル」として管理されます。

my_project/
 ├── bundle.yml          # バンドルのメタ情報(名前、環境、リソース定義ファイルの参照)
 ├── resources/          # Jobs, DLT, Models などの定義
 │    ├── job_etl.yml
 │    └── dlt_pipeline.yml
 ├── notebooks/          # 実行対象ノートブック
 │    └── etl_notebook.py
 └── sql/                 # SQLクエリやダッシュボード
      └── sales_report.sql

3. 主な機能

  • 環境変数の切り替え(dev/prod で異なる接続先やパラメータを利用)

  • 複数リソースの一括管理(ジョブ、DLTパイプライン、モデル、SQLウェアハウスなど)

  • 依存関係管理(ジョブ実行順序やリソース間リンク)

  • CLI デプロイ

    databricks bundle deploy
    databricks bundle run job_etl
    
  • GitHub Actions や Azure DevOps との統合


4. メリット

  • 再現性:全構成をコードで定義するため、同じ環境をいつでも再構築可能
  • 自動化:CI/CD でテスト・デプロイを自動化
  • 環境管理:開発環境と本番環境での設定差分を明確化
  • 共同開発:チームで同じコードベースを共有

5. 利用イメージ(例:ジョブ定義)

resources/job_etl.yml

resources:
  jobs:
    etl_job:
      name: "ETL Job"
      tasks:
        - task_key: etl_task
          notebook_task:
            notebook_path: ./notebooks/etl_notebook.py
          existing_cluster_id: 1234-567890-abcd123

bundle.yml

bundle:
  name: my_project
  targets:
    dev:
      workspace:
        host: https://adb-1234567890123456.7.azuredatabricks.net
    prod:
      workspace:
        host: https://adb-6543210987654321.3.azuredatabricks.net

💡 簡単に言うと、Databricks Asset Bundles は Databricks の設定・ジョブを「コード化して環境ごとに一括デプロイ」できる仕組みです。
Terraform や CloudFormation に似ていますが、Databricks 専用で軽量・高速に動きます。


0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?