James is currently a Senior Business Intelligence Architect/Developer and has over 20 years of IT experience. James started his career as a software developer, then became a DBA 12 years ago, and for the last five years he has been working extensively with Business Intelligence using the SQL Server BI stack (SSAS, SSRS, and SSIS). James has been at times a permanent employee, consultant, contractor, and owner of his own business. All these experiences along with continuous learning has helped James to develop many successful data warehouse and BI projects. James has earned the MCITP Business Developer 2008, MCITP Database Administrator 2008, and MCITP Database Developer 2008, and has a Bachelor of Science degree in Computer Engineering. His blog is at .

Having recently completed a model in Master Data Services (MDS), I needed to move the model from a development environment to a QA environment. Below is some helpful tips if you need to do the same, along with details on a bug I ran across.

When using MDSModelDeploy, note that when entering the model name for the “-model” switch, it is case-sensitive.

There is a point of confusion with MDSModelDeploy with the “deploynew” command line option: the MUID (the internal model ID in table mdm.tblModel) from the source, which is stored in the package file when you create it, is not copied into the destinations mdm.tblModel table when you use “deploynew”. Instead, a new MUID is created, but the model name stays the same. This will result in the following two problems when trying to do an update of a model that had its MUID changed:

When using MDSModelDeploy with the “deployupdate” option (see Deploy a Model Deployment Package by Using MDSModelDeploy), you will get the message “The xxx model cannot be updated. There is no match for a model with the same name and MUID”, which means the model on the server you are trying to update has a different MUID from the source. In that case you will need to delete the model on the destination and use MDSModelDeploy with the “deploynew” option.

When using the model deployment wizard and trying to update an existing model by following the instructions at Deploy a Model Deployment Package by Using the Wizard, if you try to use the same model name, and the model’s have a different MUID, you get “A model with this name already exists. Type a different name”. So you will need to either delete the existing model and then run the wizard and add the model, or use a different model name.

This does not happen if you use the model deployment wizard (it will use the same MUID from the source in the destination).

So, to prevent this problem, you should use the “deployclone” command line option instead of “deploynew”, as “deployclone” will create a clone of the model and use the same MUID. The difference between these two options was not very clear to me and I wasted a bit of time finding out the hard way.