翻訳:Saki Kitaoka. - Original Blog Link
Databricksアセットバンドル(Databricks Asset Bundles)が現在パブリックプレビューで利用可能になりました!
略して「バンドル」と呼ばれるこれらは、ソースコントロール、コードレビュー、テスト、継続的インテグレーションおよびデリバリー(CI/CD)を含む、ソフトウェアエンジニアリングのベス トプラクティスの採用を容易にします。バンドルによって、データエンジニア、データサイエンティスト、およびMLエンジニアは、データ、分析、およびAIプロジェクトをソースファイルとして表現することができます。これらのソースファイルは、プロジェクトのエンドツーエンドの定義を提供し、Lakehouseにどのようにテストおよびデプロイされるべきかを含みます。この定義は、簡単に編集、テスト、およびデプロイすることができます。
テストとデプロイを自動化する
CI/CDは、現代のソフトウェア開発において本質的であり、テストとデプロイを自動化し、リリースサイクルを速め、エラーを減らすのに役立ちます。バンドルを設定して、プロジェクトのデプロイとテスト方法を記述することができます。バンドルは、複数のワークスペース、リージョン、クラウド間で自動的にデプロイすることができます。既存のCI/CDシステムを使用して、バンドルのテストとデプロイを自動化することができます。
IDEを使用して開発、テスト、デプロイを行う
バンドルは通常、ローカルIDEとともに使用され、VS CodeのDatabricks拡張機能で動作します - IDEをバンドルの設定オートコンプリートのために設定することで、バンドルの作成がより簡単になります。個人用のコピーを使用して反復的に開発し、プロダクションにデプロイされる前にジョブやDLTパイプラインなどのリソースを実行することができます。
テンプレートを使用して開発を標準化
デフォルトのテンプレートを使用するか、独自のカスタムテンプレートを作成して、開発、ステージング、プロダクションのワークスペース、パーミッション、デフォルトのライブラリ、サービスプリンシパル、デフォルトのApache Sparkの設定などを設定します。これらの設定を一度行い、コードの開発とデプロイを合理化するためにバンドルを使用して再利用することができます。
さぁ始めましょう
わずかなステップでDatabricksアセットバンドルを使用を始めることができます:
- 最新のCLIをインストール(Install the latest CLI)
- Homebrewを使用する場合:brew tap databricks/tap; brew install databricks
- 注意:近日中に他のソフトウェアパッケージマネージャーに対するサポートを追加しています。
- Homebrewを使用せずにインストールするための詳しい指示については、当社のドキュメントをご参照ください。
- Databricksに認証
- databricks configure
- 最初のバンドルを生成し、カスタマイズ
- databricks bundle init
- これにより、そのまま動作するREADMEを持つバンドルが生成されます。デフォルトの設定をカスタマイズするには、お好きなデフォルトを更新してください。
- プロジェクトを開発ワークスペースにデプロイ
- databricks bundle deploy
Databricksアセットバンドルは、Terraformおよびdbxとどのように関連していますか?
バンドルは、データ、分析、およびAIプロジェクトの開発にCI/CDを適用するために推奨されます。バンドルとDatabricks Terraform providerは、一緒にうまく機能します:バンドルはlakehouseアセットを定義するために使用することができ、一方でTerraformはワークスペース、サービスプリンシパル、クラウドアセットなどのインフラストラクチャのために使用することができます。Databricks Labsプロジェクトのdbxは、ローンチ以来"実験的"なリリース状態にあり、バンドルへの移行をお勧めします。
(encourage migrating to bundles instead)
次に何がありますか
Databricksアセットバンドルは現在パブリックプレビュー(public preview)にあり、これはプロダクション使用の準備が整っていることを意味します。今後数ヶ月間で、ソースファイルとしてダッシュボードを含めるサポートなど、追加の機能を楽しみにすることができます。バンドルはすでにDatabricksワークフロージョブ、デルタライブテーブルパイプライン、ML実験、ML登録モデル、およびモデル提供エンドポイントと一緒に機能します。ML Ops Stack(現在プライベートプレビュー中)も、MLプロジェクトを本番環境に適用するためにバンドルテンプレートを使用しています。私たちのドキュメントページでバンドルに関する詳細を学び、フィードバックをお知らせください。(docs pages and let us know your feedback)