Kompatibilitätsgrad einer mehrdimensionalen Datenbank (Analysis Services)

Gilt für: SQL Server Analysis Services Azure Analysis Services Fabric/Power BI Premium

In SQL Server Analysis Services bestimmt die Datenbankkompatibilitätsstufe-Eigenschaft die Funktionsebene einer Datenbank. Kompatibilitätsgrade sind für jeden Modelltyp spezifisch. Abhängig davon, ob die Datenbank mehrdimensional oder tabellarisch ist, hat ein Kompatibilitätsgrad von 1100 beispielsweise eine unterschiedliche Bedeutung.

In diesem Thema wird nur der Kompatibilitätsgrad für mehrdimensionale Datenbanken beschrieben. Weitere Informationen zu tabellarischen Lösungen finden Sie unter Kompatibilitätsgrad für tabellarische Modelle in Analysis Services.

Hinweis

Tabellarische Modelle verfügen über zusätzliche Datenbank-Kompatibilitätsgrade, die für mehrdimensionale Modelle nicht gelten. Bei mehrdimensionalen Modellen gibt es keinen Kompatibilitätsgrad 1103 . Weitere Informationen zum Kompatibilitätsgrad 1103 für tabellarische Lösungen finden Sie unter Neuerungen beim tabellarischen Modell in SQL Server 2012 SP1 und dem Kompatibilitätsgrad .

Kompatibilitätsgrade für mehrdimensionale Datenbanken

Das einzige Verhalten mehrdimensionaler Datenbanken, das derzeit im Hinblick auf die Funktionsebene abweicht, ist die Zeichenfolgenspeicherarchitektur. Wenn Sie den Kompatibilitätsgrad einer Datenbank erhöhen, können Sie den Höchstwert von 4 GB für den Zeichenfolgenspeicher überschreiben, in dem Measures und Dimensionen gespeichert sind.

Bei einer mehrdimensionalen Datenbank lauten die gültigen Werte für die CompatibilityLevel -Eigenschaft wie folgt:

Einstellung Beschreibung
1050 Dieser Wert ist in Skripts oder Tools nicht sichtbar, entspricht aber Datenbanken, die in SQL Server 2005 (9.x), SQL Server 2008 oder SQL Server 2008 R2 erstellt wurden. Alle Datenbanken, für die CompatibilityLevel nicht explizit festgelegt wurde, werden implizit mit Grad 1050 ausgeführt.
1100 Dies ist der Standardwert für neue Datenbanken, die Sie in SQL Server 2012 (11.x) oder SQL Server 2017 erstellen. Sie können es auch für Datenbanken angeben, die in früheren Versionen von SQL Server Analysis Services erstellt wurden, um die Verwendung von Features zu ermöglichen, die nur auf diesem Kompatibilitätsgrad unterstützt werden (nämlich erhöhter Zeichenfolgenspeicher für Dimensionsattribute oder unterschiedliche Anzahl-Measures, die Zeichenfolgendaten enthalten).

Datenbanken mit einem CompatibilityLevel von 1100 erhalten zusätzlich die StringStoresCompatibilityLevel-Eigenschaft, über die Sie einen alternativen Zeichenfolgenspeicher für Partitionen und Dimensionen auswählen.

Warnung

Das Festlegen der Datenbankkompatibilität auf einen höheren Grad ist nicht umkehrbar. Nach dem Erhöhen des Kompatibilitätsgrads auf 1100müssen Sie die Datenbank auf neueren Servern ausführen. Sie können kein Rollback auf 1050ausführen. Sie können keine 1100-Datenbank auf einer Serverversion anfügen oder wiederherstellen, die vor SQL Server 2012 (11.x) oder SQL Server 2017 liegt.

Voraussetzungen

Datenbankkompatibilitätsstufen werden in SQL Server 2012 (11.x) eingeführt. Sie müssen über SQL Server 2012 (11.x)SQL Server Analysis Services oder höher verfügen, um den Datenbankkompatibilitätsgrad anzuzeigen oder festzulegen.

Die Datenbank darf kein lokaler Cube sein. Lokale Cubes bieten keine Unterstützung der CompatibilityLevel -Eigenschaft.

Die Datenbank muss in einer früheren Version (SQL Server 2008 R2 oder früher) erstellt und dann an einen SQL Server 2012 (11.x)SQL Server Analysis Services oder höherer Server angefügt oder wiederhergestellt worden sein. Für SQL Server 2012 bereitgestellte Datenbanken verfügen bereits über 1100 und können nicht zur Ausführung unter einem niedrigeren Grad herabgestuft werden.

Bestimmen des bestehenden Datenbank-Kompatibilitätsgrads für eine mehrdimensionale Datenbank

XMLA ist die einzige Möglichkeit, den Datenbank-Kompatibilitätsgrad anzuzeigen oder zu ändern. Das XMLA-Skript, durch das die Datenbank in SQL Server Management Studio angegeben wird, kann angezeigt oder geändert werden.

Wenn Sie die XMLA-Definition einer Datenbank nach der CompatibilityLevel -Eigenschaft durchsuchen, diese aber nicht vorhanden ist, verfügt die Datenbank höchstwahrscheinlich über den Kompatibilitätsgrad 1050 .

Anweisungen zum Anzeigen und Ändern des XMLA-Skripts finden Sie im nächsten Abschnitt.

Festlegen des Datenbank-Kompatibilitätsgrads in SQL Server Management Studio

  1. Bevor Sie den Kompatibilitätsgrad erhöhen, sollten Sie die Datenbank sichern, damit Änderungen später bei Bedarf rückgängig gemacht werden können.

  2. Stellen Sie mithilfe SQL Server Management Studio eine Verbindung mit dem SQL Server 2017SQL Server Analysis Services-Server her, der die Datenbank hostet.

  3. Klicken Sie mit der rechten Maustaste auf den Datenbanknamen, zeigen Sie auf Skript für Datenbank als, zeigen Sie auf ALTER in, und wählen Sie dann Neues Abfrage-Editor-Fensteraus. Eine XMLA-Darstellung der Datenbank wird in einem neuen Fenster geöffnet.

  4. Kopieren Sie das folgende XML-Element:

    <ddl200:CompatibilityLevel>1100</ddl200:CompatibilityLevel>  
    
  5. Fügen Sie es nach dem schließenden </Annotations> -Element und vor dem <Language> -Element ein. Die XML sollte ähnlich wie im folgenden Beispiel aussehen:

    </Annotations>  
    <ddl200:CompatibilityLevel>1100</ddl200:CompatibilityLevel>  
    <Language>1033</Language>  
    
  6. Speichern Sie die Datei .

  7. Klicken Sie zum Ausführen des Skripts im Menü Abfrage auf Ausführen , oder drücken Sie F5.

Unterstützte Vorgänge, die denselben Kompatibilitätsgrad erfordern

Die folgenden Vorgänge erfordern, dass die Quelldatenbanken denselben Kompatibilitätsgrad verwenden.

  1. Das Zusammenführen von Partitionen aus verschiedenen Datenbanken wird nur unterstützt, wenn beide Datenbanken denselben Kompatibilitätsgrad verwenden.

  2. Für die Verwendung verknüpfter Dimensionen aus einer anderen Datenbank ist derselbe Kompatibilitätsgrad erforderlich. Wenn Sie beispielsweise eine verknüpfte Dimension aus einer SQL Server 2008 R2-Datenbank in einer SQL Server 2012-Datenbank (11.x) verwenden möchten, müssen Sie die SQL Server 2008 R2-Datenbank auf einen SQL Server 2012-Server (11.x) portieren und den Kompatibilitätsgrad auf 1100 festlegen.

  3. Das Synchronisieren von Servern wird nur für Server unterstützt, die dieselbe Version und denselben Datenbank-Kompatibilitätsgrad verwenden.

Nächste Schritte

Nachdem Sie den Datenbankkompatibilitätsgrad erhöht haben, können Sie die StringStoresCompatibilityLevel-Eigenschaft in SQL Server Data Tools festlegen. Dadurch wird der Zeichenfolgenspeicher für Measures und Dimensionen vergrößert. Weitere Informationen zu dieser Funktion finden Sie unter Konfigurieren des Zeichenfolgenspeichers für Dimensionen und Partitionen.

Weitere Informationen

Sichern, Wiederherstellen und Synchronisieren von Datenbanken (XMLA)