Azure Databricks Cluster Setup for ML Model Deployment on Azure

Scale Up Your ML Model Deployment with Azure Databricks Cluster

Question

You have successfully developed your ML model in your local environment and tested it with larger amounts of data on a training compute.

Now, you are ready to scale up to productive use and you want to set up an Azure Databricks cluster as deployment environment.

Which of the following options is correct?

Answers

Explanations

Click on the arrows to vote for the correct answer

A. B. C. D.

Correct Answer: B.

Option A is incorrect because Azure Machine Learning cannot create external compute resources like Databricks Clusters.

Option B is CORRECT because external (unmanaged) compute targets like HDInsight and Databricks must be created externally, and then attached to the ML workspace.

Option C is incorrect because you cannot create a Databricks compute within your ML configuration.

You have to use the ComputeTarget.attach to link to an existing Databricks cluster.

Option D is incorrect because Databricks is one of the several possible compute targets that can be used with Azure ML.

References:

The correct answer is B: You have to create an Azure Databricks Cluster outside Azure ML and attach it to your ML workspace.

Explanation: Azure Databricks is a cloud-based platform for data engineering, data science, and machine learning. It is a collaborative workspace where data scientists and developers can work together to create and manage machine learning models. Azure Databricks can be used to train and deploy machine learning models.

When you have successfully developed your machine learning model in your local environment and tested it with larger amounts of data on a training compute, you need to scale up to productive use. Azure Databricks can be used as a deployment environment for your machine learning model.

Option A is incorrect because you cannot create an Azure Databricks cluster in Azure ML and use it as inference compute. Azure Machine Learning provides several types of compute targets for training and inference, such as local compute, Azure Machine Learning Compute, Azure Kubernetes Service (AKS), and Azure Batch AI. Azure Databricks is not one of the compute targets provided by Azure ML.

Option C is incorrect because databricks_compute = ComputeTarget.create(...) is not a valid code to create an Azure Databricks cluster in Azure ML. ComputeTarget is a class in the azureml.core package that represents a compute target for machine learning workloads in Azure ML. Azure Databricks is not a compute target provided by Azure ML.

Option D is incorrect because Databricks clusters can be used as inference compute for Azure ML. You can create a Databricks cluster outside of Azure ML, train and deploy your machine learning model on it, and then register the model with Azure ML to track the model version and use it for inference.

Therefore, the correct option is B: You have to create an Azure Databricks Cluster outside Azure ML and attach it to your ML workspace. You can create a Databricks cluster using the Azure Databricks workspace, attach the cluster to your Azure Machine Learning workspace, and deploy your machine learning model to the cluster using the MLflow API or the Azure Machine Learning SDK.