Partager via


Définir le niveau de compatibilité d’une base de données multidimensionnelle (Analysis Services)

Dans Analysis Services, la propriété de niveau de compatibilité de la base de données détermine le niveau fonctionnel d’une base de données. Les niveaux de compatibilité sont uniques à chaque type de modèle. Par exemple, un niveau de compatibilité de 1100 a une signification différente selon que la base de données est multidimensionnelle ou tabulaire.

Cette rubrique décrit uniquement le niveau de compatibilité pour les bases de données multidimensionnelles. Pour plus d’informations sur les solutions tabulaires, consultez Niveau de compatibilité (SSAS Tabulaire SP1).

Remarque

Les modèles tabulaires ont des niveaux de compatibilité de base de données supplémentaires qui ne sont pas applicables aux modèles multidimensionnels. Le niveau 1103 de compatibilité n’existe pas pour les modèles multidimensionnels. Consultez les nouveautés du modèle tabulaire dans SQL Server 2012 SP1 et le niveau de compatibilité pour plus d’informations sur 1103 les solutions tabulaires.

Niveaux de compatibilité pour les bases de données multidimensionnelles

Actuellement, le seul comportement de base de données multidimensionnel qui varie selon le niveau fonctionnel est l’architecture de stockage de chaînes. En augmentant le niveau de compatibilité de la base de données, vous pouvez remplacer la limite maximale de 4 gigaoctets pour le stockage de chaînes de mesures et de dimensions.

Pour une base de données multidimensionnelle, les valeurs valides pour la CompatibilityLevel propriété sont les suivantes :

Réglage Descriptif
1050 Cette valeur n’est pas visible dans le script ou les outils, mais elle correspond aux bases de données créées dans SQL Server 2005, SQL Server 2008 ou SQL Server 2008 R2. Toute base de données qui n’a CompatibilityLevel pas explicitement défini est implicitement en cours d’exécution au 1050 niveau.
1100 Il s’agit de la valeur par défaut des nouvelles bases de données que vous créez dans SQL Server 2012 ou SQL Server 2014. Vous pouvez également le spécifier pour les bases de données créées dans les versions antérieures d’Analysis Services afin d’activer l’utilisation des fonctionnalités prises en charge uniquement à ce niveau de compatibilité (à savoir, un stockage de chaîne accru pour les attributs de dimension ou des mesures de comptage distinctes qui contiennent des données de chaîne).

Bases de données qui ont un CompatibilityLevel ensemble pour 1100 obtenir une propriété supplémentaire, StringStoresCompatibilityLevelqui vous permet de choisir un autre stockage de chaînes pour les partitions et les dimensions.

Avertissement

La définition de la compatibilité de la base de données à un niveau supérieur est irréversible. Après avoir augmenté le niveau de compatibilité à 1100, vous devez continuer à exécuter la base de données sur des serveurs plus récents. Vous ne pouvez pas restaurer vers 1050. Vous ne pouvez pas attacher ou restaurer une 1100 base de données sur une version de serveur antérieure à SQL Server 2012 ou SQL Server 2014.

Conditions préalables

Les niveaux de compatibilité de base de données sont introduits dans SQL Server 2012. Vous devez disposer de SQL Server 2012Analysis Services ou version ultérieure pour afficher ou définir le niveau de compatibilité de la base de données.

La base de données ne peut pas être un cube local. Les cubes locaux ne prennent pas en charge la propriété CompatibilityLevel.

La base de données doit avoir été créée dans une version précédente (SQL Server 2008 R2 ou version antérieure), puis attachée ou restaurée sur un serveur SQL Server 2012Analysis Services ou un serveur supérieur. Les bases de données déployées sur SQL Server 2012 sont déjà à l’échelle 1100 et ne peuvent pas être rétrogradées pour s’exécuter à un niveau inférieur.

Déterminer le niveau de compatibilité de base de données existant pour une base de données multidimensionnelle

La seule façon d’afficher ou de modifier le niveau de compatibilité de la base de données consiste à utiliser XMLA. Vous pouvez afficher ou modifier le script XMLA qui spécifie votre base de données dans SQL Server Management Studio.

Si vous recherchez la définition XMLA d’une base de données pour la propriété CompatibilityLevel et qu’elle n’existe pas, vous disposez probablement d’une base de données au 1050 niveau.

Les instructions d’affichage et de modification du script XMLA sont fournies dans la section suivante.

Définir le niveau de compatibilité de la base de données dans SQL Server Management Studio

  1. Avant de lever le niveau de compatibilité, sauvegardez la base de données si vous souhaitez inverser vos modifications ultérieurement.

  2. À l’aide de SQL Server Management Studio, connectez-vous au serveur SQL Server 2014Analysis Services qui héberge la base de données.

  3. Cliquez avec le bouton droit sur le nom de la base de données, pointez sur Script Database, pointez sur ALTER vers, puis sélectionnez Nouvelle fenêtre de l’éditeur de requête. Une représentation XMLA de la base de données s’ouvre dans une nouvelle fenêtre.

  4. Copiez l’élément XML suivant :

    <ddl200:CompatibilityLevel>1100</ddl200:CompatibilityLevel>  
    
  5. Collez-le après l’élément </Annotations> fermant et avant l’élément <Language> . Le code XML doit ressembler à l’exemple suivant :

    </Annotations>  
    <ddl200:CompatibilityLevel>1100</ddl200:CompatibilityLevel>  
    <Language>1033</Language>  
    
  6. Enregistrez le fichier.

  7. Pour exécuter le script, cliquez sur Exécuter dans le menu Requête ou appuyez sur F5.

Opérations prises en charge qui nécessitent le même niveau de compatibilité

Les opérations suivantes nécessitent que les bases de données sources partagent le même niveau de compatibilité.

  1. La fusion de partitions de différentes bases de données est prise en charge uniquement si les deux bases de données partagent le même niveau de compatibilité.

  2. L’utilisation de dimensions liées à partir d’une autre base de données nécessite le même niveau de compatibilité. Par exemple, si vous souhaitez utiliser une dimension liée à partir d’une base de données SQL Server 2008 R2 dans une base de données SQL Server 2012, vous devez porter la base de données SQL Server 2008 R2 vers un serveur SQL Server 2012 et définir le niveau 1100de compatibilité sur .

  3. La synchronisation des serveurs est prise en charge uniquement pour les serveurs qui partagent le même niveau de compatibilité de version et de base de données.

Étapes suivantes

Après avoir augmenté le niveau de compatibilité de la base de données, vous pouvez définir la StringStoresCompatibilityLevel propriété dans SQL Server Data Tools. Cela augmente le stockage des chaînes de caractères pour les dimensions et les mesures. Pour plus d’informations sur cette fonctionnalité, consultez Configurer le stockage de chaînes pour les dimensions et les partitions.

Voir aussi

Sauvegarde, restauration et synchronisation des bases de données (XMLA)