One of the question that regularly comes up is: “He I have created a tabular model in BIDS and deployed it to my test server, now I have changed a measure or a calculated column I deploy those changes and all of my tables are again loaded. I don’t want that ! I just want to deploy some metadata”.
Well actually that is exactly what we do, but the UI is a little deceiving.
When you deploy for the first time and any time after you get the same UI:
But under the covers what we do is:
- Update the metadata of the database on the server
- Send a Process Default command to the database
What happens on the second step at Process Default is that the engine is smart enough to discover what needs to be done to get the database in a fully processed state. If the table already contains data it will not update the database (it will NOT check if there is new data) otherwise it will process the table. At the end of the Process Default command the engine will send a Process Recalc to the database, this will make sure that all the calculated columns / relationships are made into a good state as well.
So in short, if you deploy your model for a second time it won’t reprocess the tables if you haven’t made any structural changed to the model like adding columns. Even though it looks like that in the refresh UI.
Hope this helps.
5 Replies to “Deploy only changes to a Tabular model from BIDS and not process”
>> . If the table already contains data it will not update the database (it will NOT check if there is new data)
OK, but what happens if your table DOES have new data that you want refreshed?
There are two ways:
– Change the processing mode on the solution from Default to full and process again.
– Open SSMS and process the database there (also select processfull)
Hope that helps,
it seems that when server has table partitions and VS does not, the data does get re-loaded/overwritten 🙁
yes thats my problem, too. I only have empty ‘base’ partitions in my VS model and so redeploying wipes out the data, even when set not to process on deploy
Yes you should use deployment wizard to deploy. The model will always be overwritten from SSDT.