Skip to content

Commit 20f616e

Browse files
author
Owen Duncan
committed
Updates for SQL2017
1 parent a25f482 commit 20f616e

1 file changed

Lines changed: 20 additions & 88 deletions

File tree

Lines changed: 20 additions & 88 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
title: "Upgrade Analysis Services | Microsoft Docs"
33
ms.custom: ""
4-
ms.date: "07/17/2017"
4+
ms.date: "09/12/2017"
55
ms.prod:
66
- "sql-server-2016"
77
- "sql-server-2017"
@@ -28,132 +28,64 @@ ms.author: "owend"
2828
manager: "erikre"
2929
---
3030
# Upgrade Analysis Services
31-
Analysis Services instances can be upgraded to a SQL Server version of the same server mode to take advantage of features introduced in the current release, as described in [What's New in Analysis Services](../../analysis-services/what-s-new-in-analysis-services.md).
31+
Analysis Services instances can be upgraded to a SQL Server version of the same server mode to take advantage of features introduced in the current release, as described in [What's new in Analysis Services](../../analysis-services/what-s-new-in-analysis-services.md).
3232

33-
You can upgrade each instance in-place, independently of other instances running on the same hardware. However, most administrators choose to install a new instance of the new version for application testing before transferring production workloads onto the new server. But for development or test servers, an in-place upgrade might be more convenient.
33+
You can upgrade each instance in-place, independently of other instances running on the same hardware. However, most administrators choose to install a new instance of the new version for application testing before transferring production workloads onto the new server. But for development or test servers, an in-place upgrade might be more convenient.
3434

35-
Before upgrading to [!INCLUDE[ssCurrent](../../includes/sscurrent-md.md)] [!INCLUDE[ssASnoversion](../../includes/ssasnoversion-md.md)], review the following:
36-
37-
- [SQL Server 2017 Release Notes](../../sql-server/sql-server-2017-release-notes.md) describes known problems and workarounds.
38-
- [SQL Server 2016 Release Notes](../../sql-server/sql-server-2016-release-notes.md) describes known problems and workarounds.
39-
- [Analysis Services Backward Compatibility](../../analysis-services/analysis-services-backward-compatibility.md) summarizes discontinued, deprecated, and changed features. You should review these lists periodically to assess the impact of product changes to your models, scripts, or custom code. Typically, feature transitions are announced during pre-release of the next major release.
40-
41-
## Server Upgrade
35+
## Server upgrade
4236
There are two basic approaches for upgrading servers and databases:
4337

44-
- **In-place upgrades** replace the existing program files with [!INCLUDE[ssCurrent](../../includes/sscurrent-md.md)] program files. Databases remain in the same location. Program folders are updated to reflect the new name.
45-
46-
- **Side-by-side upgrades** create a new installation of [!INCLUDE[ssCurrent](../../includes/sscurrent-md.md)], usually on the same computer unless you are upgrading hardware at the same time. This approach requires you to move databases over to the new instance, and then optionally uninstall the previous version to free up disk space.
47-
48-
The compatibility levels of databases that are attached to a given server remain the same unless you manually change them.
38+
> [!NOTE]
39+
> The compatibility levels of databases that are attached to a given server remain the same unless you manually change them.
40+
4941

5042
### In-place upgrade
51-
You can upgrade an existing instance of [!INCLUDE[ssASnoversion](../../includes/ssasnoversion-md.md)] to [!INCLUDE[ssCurrent](../../includes/sscurrent-md.md)] [!INCLUDE[ssASnoversion](../../includes/ssasnoversion-md.md)] and, as part of the upgrade process, automatically migrate existing databases from the old instance to the new instance. Because the metadata and binary data is compatible between the two versions, you will retain the data after you upgrade and you do not have to manually migrate the data.
43+
The upgrade process automatically migrates existing databases from the old instance to the new instance. Because the metadata and binary data is compatible between the two versions, you will retain the data after you upgrade and you do not have to manually migrate the data.
5244

5345
To upgrade an existing instance, run Setup and specify the name of the existing instance as the name of the new instance.
5446

5547
### Side-by-side upgrade
5648

57-
- Backup all databases and verify that each can be restored. See [Backup and Restore of Analysis Services Databases](../../analysis-services/multidimensional-models/backup-and-restore-of-analysis-services-databases.md).
49+
- Backup all databases and verify that each can be restored. To learn more, see [Backup and restore Analysis Services databases](../../analysis-services/multidimensional-models/backup-and-restore-of-analysis-services-databases.md).
5850

5951
- Identify a subset of reports, spreadsheets, or dashboard snapshots to use later as the basis for confirming post-upgrade server operations. If possible, collect performance measurements so that you can run comparisons against the same workloads on an upgraded server.
6052

61-
- Install a new instance of Analysis Services, choosing the same server mode (Tabular or Multidimensional) as the server you intend to replace. See [Install Analysis Services](../../analysis-services/instances/install-windows/install-analysis-services.md).
53+
- Install a new instance of Analysis Services, choosing the same server mode (tabular or multidimensional) as the server you intend to replace.
6254

63-
Follow post-installation tasks for configuring ports and adding server administrators. See [Post-install Configuration (Analysis Services)](../../analysis-services/instances/post-install-configuration-analysis-services.md).
55+
Follow post-installation tasks for configuring ports and adding server administrators. To learn more, see [Post-install configuration (Analysis Services)](../../analysis-services/instances/post-install-configuration-analysis-services.md).
6456

6557
- Attach or restore each database.
6658

67-
- Run DBCC to check for database integrity. Tabular models undergo more thorough checking, with tests for orphaned objects throughout the model hierarchy. For multidimensional models, only the partition indexes are checked. See [Database Consistency Checker (DBCC) for Analysis Services tabular and multidimensional databases](../../analysis-services/instances/database-consistency-checker-dbcc-for-analysis-services.md).
59+
- Run DBCC to check for database integrity. Tabular models undergo more thorough checking, with tests for orphaned objects throughout the model hierarchy. For multidimensional models, only the partition indexes are checked. To learn more, see [Database Consistency Checker (DBCC) for Analysis Services tabular and multidimensional databases](../../analysis-services/instances/database-consistency-checker-dbcc-for-analysis-services.md).
6860

6961
- Test reports, spreadsheets, and dashboards to confirm there is no adverse change to behavior or calculations. You should see faster performance for both multidimensional and tabular workloads.
7062

71-
- Test processing operations, correcting any login or permission issues. If you are using default service account for connections, the new service runs under a different account. See [Configure Service Accounts (Analysis Services)](../../analysis-services/instances/configure-service-accounts-analysis-services.md) for more information about startup accounts for Analysis Services.
63+
- Test processing operations, correcting any login or permission issues. If you are using default service account for connections, the new service runs under a different account. To learn more, see [Configure service accounts (Analysis Services)](../../analysis-services/instances/configure-service-accounts-analysis-services.md).
7264

7365
- Test backup and restore operations on the upgraded server, adjusting scripts to use the new server name.
7466

7567
## Database upgrade
76-
Databases that were created in previous versions of [!INCLUDE[ssASnoversion](../../includes/ssasnoversion-md.md)] run on the upgraded server under an older database compatibility level setting. Generally, you can upgrade a database or model to operate at a higher compatibility level to gain access to new features, but be aware that doing so binds you to a specific server version.
68+
Databases that were created in previous versions run on the upgraded server with the original compatibility level setting. Generally, you can upgrade a database or model to operate at a higher compatibility level to gain access to new features, but be aware that doing so binds you to a specific server version.
7769

78-
To upgrade a database, you typically upgrade the model in SQL Server Data Tools (SSDT) and then deploy the solution to an upgraded server instance. See [Download SQL Server Data Tools](https://msdn.microsoft.com/library/mt204009.aspx) to get the newest version.
70+
To upgrade a database, you typically upgrade the model in SQL Server Data Tools (SSDT) and then deploy the solution to an upgraded server instance.
7971

80-
Tabular and multidimensional databases follow different version paths. It's coincidental that both multidimensional and tabular models have compatibility level 1100. Modes will advance at different rates if feature changes impact only one of them.
72+
Tabular and multidimensional databases follow different version paths. It's coincidental that both multidimensional and tabular models have similar numbered compatibility levels. Modes will advance at different rates if feature changes impact only one of them.
8173

8274
For background purposes, the following table summarizes the compatibility levels, but you should review the detail topics to understand what each level provides.
8375

8476
||||
8577
|-|-|-|
78+
|Tabular|1400|SQL Server 2017|
8679
|Tabular|1200|SQL Server 2016|
8780
|Tabular|1103|SQL Server 2014|
8881
|Tabular|1100|SQL Server 2012|
8982
|Multidimensional|1100|SQL Server 2012 and later|
9083
|Multidimensional|1050|SQL Server 2005, 2008, 2008 R2|
9184

92-
See [Compatibility Level of a Multidimensional Database (Analysis Services)](../../analysis-services/multidimensional-models/compatibility-level-of-a-multidimensional-database-analysis-services.md) and [Compatibility Level for Tabular models in Analysis Services](../../analysis-services/tabular-models/compatibility-level-for-tabular-models-in-analysis-services.md) for more information.
93-
94-
## Tabular model upgrade to 1200 Compatibility Level
95-
Tabular models and databases benefit the most from SQL Server 2016. This release offers a revised DirectQuery mode for Tabular models at compatibility level 1200, simplified by the removal of hybrid mode, the addition of query statements for retrieving a subset of data at design-time, and row-level security via DAX instead of row permissions in the backend database.
96-
97-
A second reason to upgrade is the new tabular metadata construction inside the model. A Tabular model at the new compatibility level 1200, whether created at or upgraded to that level, uses native terminology for object definitions, such as model, table, relationships, and columns, to describe its major elements.
98-
99-
To upgrade a Tabular model, use a version of [SQL Server Data Tools (SSDT)](https://msdn.microsoft.com/library/mt204009.aspx) built for this release to change the **Compatibility Level** property to **SQL Server 2016 RTM (1200)**.
100-
101-
Do not use SSMS, code, or script to change the **CompatibilityLevel**. By itself, changing the property does nothing. Metadata conversion occurs in SSDT in response to the property update, followed by reopening project.
102-
103-
As always, be sure to save a backup of your model before upgrading in case you need to revert to the pre-upgraded version.
104-
105-
1. In SSDT > Solution Explorer, right-click **model.bim**, choose **View Code**, acknowledge that the model will be closed and reopened in a new window (the code window).
106-
107-
2. The model opens as an XMLA document. For comparison purposes post-conversion, copy the contents to another file (you can open a new XML file in SSDT).
108-
109-
3. Right-click **model.bim** and change it back to **View Designer**.
110-
111-
4. Set the **CompatibilityLevel** to **SQL Server 2016 RTM (1200)**.
112-
113-
5. This step cannot be reversed so you are asked to confirm the action. Click **Yes** to proceed. The project will be refreshed.
114-
115-
6. Right-click **model.bim** and change it back to **View Code**.
116-
117-
Notice the model definition is now in JSON, using tabular metadata.
118-
119-
**Metadata Conversion**
120-
121-
Comparing post and pre-conversion metadata, you will notice that metadata is converted to JSON and trimmed of redundant definitions.
122-
123-
The model retains all functionality: data bindings, partition slices, expressions, object identifiers, object names, descriptions, captions, translations, and annotations are intact. But if you have code or script that references specific objects, part of the code rewrite will include removing references to objects that no longer exist. For example, a 1050 or 1103 model will have sections for dimensions that are external to the cube, whereas a 1200 model defines a table as a single object.
124-
125-
> [!NOTE]
126-
> Older Tabular compatibility levels of 1050 and 1103 are supported but deprecated. In some future release of SQL Server, tabular models cast as multidimensional objects will no longer be supported. See [Deprecated Analysis Services Features in SQL Server 2016](../../analysis-services/deprecated-analysis-services-features-in-sql-server-2016.md) for the announcement.
127-
128-
## Post-upgrade for Tabular models at 1200 CompatibilityLevel
129-
After the model is converted, you'll use [Tabular Model Scripting Language (TMSL) Reference](../../analysis-services/tabular-model-scripting-language-tmsl-reference.md) rather than XMLA to script database operations. TMSL is generated automatically in SSMS when the model is 1200. Custom code that targets Tabular 1200 databases should use the API defined in the Microsoft.AnalysisServces.Tabular namespace. Script and code must be written from scratch; there is no mechanism for built-in conversion. See [Analysis Services Developer Documentation](../../analysis-services/analysis-services-developer-documentation.md) for help in getting started.
130-
131-
You can also add the following features to a Tabular model, supported only at compatibility level 1200:
132-
133-
- A DirectQuery implementation that supports row-level security via DAX in the model, more data sources, data subsets for modeling purposes, and simpler configuration.
134-
135-
- Calculated Columns
136-
137-
- Display Folders
138-
139-
## Upgrade Tabular models in DirectQuery mode
140-
You cannot do an in-place upgrade of older Tabular models configured for DirectQuery. The new implementation of DirectQuery has a smaller configuration footprint and not all settings can be ported.
141-
142-
1. In SSDT, turn off **DirectQuery** mode so that the model uses in-memory storage. See [Enable DirectQuery Design Mode (SSAS Tabular)](https://msdn.microsoft.com/library/hh270245.aspx) for instructions.
143-
144-
2. Set **CompatibilityLevel** to SQL Server 2016 (RTM) 1200.
145-
146-
3. Save and rebuild or deploy the model.
147-
148-
4. Turn **DirectQuery** back on. See [DirectQuery for Tabular 1200 models](http://msdn.microsoft.com/library/4227977e-7368-4d45-b78f-24076882e7a8) for more guidance.
85+
To learn more, see [Compatibility level of a multidimensional database (Analysis Services)](../../analysis-services/multidimensional-models/compatibility-level-of-a-multidimensional-database-analysis-services.md) and [Compatibility level for Analysis Services tabular models](../../analysis-services/tabular-models/compatibility-level-for-tabular-models-in-analysis-services.md) for more information.
14986

150-
## See Also
151-
[DirectQuery Mode (SSAS Tabular)](../../analysis-services/tabular-models/directquery-mode-ssas-tabular.md)
152-
[What's New in Analysis Services](../../analysis-services/what-s-new-in-analysis-services.md)
153-
[Features Supported by the Editions of SQL Server 2016](~/sql-server/editions-and-supported-features-for-sql-server-2016.md)
154-
[Planning a SQL Server Installation](../../sql-server/install/planning-a-sql-server-installation.md)
87+
## See also
88+
[Planning a SQL Server installation](../../sql-server/install/planning-a-sql-server-installation.md)
15589
[Upgrade Power Pivot for SharePoint](../../database-engine/install-windows/upgrade-power-pivot-for-sharepoint.md)
156-
[Install Analysis Services in Multidimensional and Data Mining Mode](http://msdn.microsoft.com/library/8a1f33e8-2bd6-4fb8-bd46-c86f2a067f60)
157-
[Upgrade to SQL Server 2016 Using the Installation Wizard (Setup)](../../database-engine/install-windows/upgrade-sql-server-using-the-installation-wizard-setup.md)
15890

15991

0 commit comments

Comments
 (0)