Question
You have an Azure Databricks solution that was developed by multiple engineers and deployed to development, test, and production environments.
You need to implement an application lifecycle management (ALM) process that meets the following requirements:
- Deploys and provides source control for Databricks notebooks, workflows, and jobs in a consistent and repeatable way
- Parameterizes the target deployment environment
What should you include in the solution?
- A. the export and import of Databricks workspaces
- B. Databricks resources managed by using the Databricks Terraform provider
- C. Git folders and manual promotion
- D. Declarative Automation Bundles in Git Correct
Explanation
Declarative Automation Bundles (formerly Databricks Asset Bundles) describe jobs, pipelines and their source files, such as notebooks, as YAML kept alongside the code, so everything is source controlled in Git and deployed as one unit. Each deployment goes to a chosen target environment, which gives a repeatable process across development, test and production. Exporting and importing workspaces and manual promotion from Git folders are manual and not repeatable. Terraform is suited to provisioning infrastructure and does not package notebook code and job definitions into a project deployed per target the way bundles do.