🐾MLOps on AWS: SageMaker vs Databricks🐾
🤓 Starting the MLOps journey on AWS and wondering which toolset to use? Should you go with the native SageMaker option or look at Databricks on AWS? As always, each of the options has its own set of trade-offs, so let's unravel the nuances of both approaches*.
🤖 Code
In Databricks, you can use a repository with the main branch only, as described in the deploy model pattern. You can trigger model deployments in several environments through model registry stage transitions. In SageMaker, you need to create distinct branches for each environment, because you should approve the model for each environment separately.
🤖 Training
In SageMaker, use pipeline steps to create distinct steps for tasks like data preprocessing, model training, and evaluation. Although these steps are written in a single script, they run in different environments. Databricks lacks a similar abstraction, but you can achieve a comparable result by employing CI/CD tool build stages.
🤖 Model registry and deployment
In Databricks, you can utilize the built-in MLflow to move models between stages and trigger deployment pipelines based on these transitions. With SageMaker you need to create separate model groups for each environment because the model can be approved or rejected only once.
🤖 Model serving
Databricks has its own model-serving solution, but as it’s in Public preview only, I would recommend using SageMaker endpoints instead. MLflow has integration to deploy models to the SageMaker endpoint.
🤖 Scalability and templates
SageMaker has the concept of projects to make new model onboarding easier. In Databricks, you do not have such a thing out of the box, but you can create the same mechanism by yourself.
*Databricks suggests two deployment patterns: model and code deployment. I chose the model deployment approach for comparison because it has some unique features compared to SageMaker.
Thank you for reading, let’s chat 💬
💬 Which approach are you using for setting up MLOps?
💬 What is the most challenging part of MLOps for you?
💬 Do you want to hear more about MLOps for LLMs?
I love hearing from readers 🫶🏻 Please feel free to drop comments, questions, and opinions below👇🏻