Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Update compatibility level - Azure SSAS

I need to update the compatibility level of the Azure SSAS Model to 1400. It's currently in 1200. When I click on Model.bim and go to Properties. (Inside Visual Studio 2017) There is no option to select from under the property "Compatibility Level".

I am currently on VS 2017 (Version 15.9.9)

The .NET Framework is on (Version 4.7.03062)

I did follow this article but still don't see the options to change it. https://azure.microsoft.com/en-au/blog/1400-models-in-azure-as/

My solution is also in Source Control.

like image 230
Etienne Avatar asked Mar 20 '19 01:03

Etienne


People also ask

How do I change my compatibility level in SSAS?

Set compatibility levelYou can change the default compatibility level in SSDT in Tools > Options. To upgrade a tabular model project in SSDT, set the Compatibility Level property in the model Properties window. Keep in-mind, upgrading the compatibility level is irreversible.

How do I check my ssas compatibility level?

You can check the supported compatibility level of the workspace server by logging into Analysis Services in SSMS. Once logged in, you can right-click on the server name and select properties. In the window below, you can see the Supported Compatibility levels are 1100, 1103, 1200, 1400.

Can I change database compatibility level?

It's really simple to change the database compatibility level. In SQL Server Management Studio (SSMS), right-click on the database name, select Properties, select the Options node, click on the drop-down next to Compatibility level and select the level that matches your SQL Server.

What is the minimum supported compatibility level for Azure Analysis Services?

The 1500 compatibility level is required to take advantage of the latest features for tabular models in Azure Analysis Services.


1 Answers

There is actually a bug in the server properties for SSAS in SSMS (at least as of SSMS 17.x). It probably applies to your case too.

The actual compatibility mode that is used by your model is set in the model itself. The server has 2 properties:

  • DefaultCompatibilityMode - probably used only when Create is executed (without the compatibility)
  • SupportCompatibilityModes which is a list of supported levels.

Execute the following XMLA window in SSMS (taken from social.msdn):

<Discover xmlns="urn:schemas-microsoft-com:xml-analysis">
    <RequestType>DISCOVER_XML_METADATA</RequestType>
    <Restrictions>
<RestrictionList>
<ObjectExpansion>ObjectProperties</ObjectExpansion>
</RestrictionList>
    </Restrictions>
    <Properties>
<PropertyList>
    </PropertyList>
    </Properties>
</Discover>

Search for Compatibility. You should be able to see for an SSAS 2017 server:

<ddl400:DefaultCompatibilityLevel>1200</ddl400:DefaultCompatibilityLevel>
<ddl600:SupportedCompatibilityLevels>1100,1103,1200,1400</ddl600:SupportedCompatibilityLevels>

The DefaultCompatibilityLevel should match the requested compatibility level. In your case 1400. You should be able to confirm the mode that the model is running in by checking its properties in SSMS. You can, of course, change only to SupportedCompatibilityLevels. Should your required compatibility level not be listed, you are out of luck.

like image 99
tukan Avatar answered Oct 16 '22 15:10

tukan