Databricks ML Professional Practice Question 5: Cross Catalog Model Promotion
Databricks Certified Machine Learning Professional · Test 1 · question 5 of 10
An organisation uses three Unity Catalog catalogs: dev, staging, and prod. Version 7 of staging.ml.churn has passed all validation. Both the production batch job and the production serving endpoint load models:/prod.ml.churn@champion. Promotion must meet these requirements:
- Production promotes exactly the artifact that was validated, with no retraining. - Production workloads never read from the staging catalog. - No production code or job configuration changes. - Rollback is a single metadata change.
Which approach meets all of these requirements?
Show answer and explanation
Answer:
MlflowClient.copy_model_version() copies an existing Unity Catalog model version into another registered model, even one in a different catalog. The validated artifact becomes a new version of prod.ml.churn without retraining. Its version number in prod may not be 7. Next, set_registered_model_alias("prod.ml.churn", "champion", <new version>) moves the alias. Both production workloads resolve @champion the next time they load the model, so no code changes. To roll back, point the alias at the previous version, which is a single metadata change. The copy needs read access on the source model and ownership or CREATE MODEL VERSION on the target.
Option A is not possible. Models in Unity Catalog do not support stages. Environments come from the three-level namespace and deployment status comes from aliases.
Option B points production at the staging catalog and changes production configuration, which breaks two requirements.
Option C sets the alias on the wrong model. The production URI refers to prod.ml.churn@champion. An alias on staging.ml.churn has no effect on it, and granting EXECUTE does not change that.
Reference: Manage model lifecycle in Unity Catalog