Analysis Services-Clientbibliotheken

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

Damit Clientanwendungen und Tools eine Verbindung mit Analysis Services herstellen können, sind Clientbibliotheken erforderlich. Microsoft-Clientanwendungen wie Power BI Desktop, Excel, SQL Server Management Studio (SSMS) und Analysis Services-Projekterweiterungen für Visual Studio installieren alle drei Clientbibliotheken und aktualisieren sie im Rahmen der regulären Anwendungsupdates. Auch für benutzerdefinierte Clientanwendungen müssen Clientbibliotheken installiert werden. Clientbibliotheken werden monatlich aktualisiert.

Wichtig: Bevor Sie die neuesten Versionen erhalten, lesen Sie Überlegungen und Einschränkungen.

Aktuelles herunterladen

Windows Installer

Download Version
MSOLAP (amd64) 16.0.130.20
MSOLAP (x86) 16.0.130.20
AMO 19.79.0.0
ADOMD 19.79.0.0

NuGet-Pakete

Analysis Services Management Objects (AMO/TOM) und ADOMD-Clientbibliotheken sind als installierbare Pakete von NuGet.org verfügbar. Es wird empfohlen, zu NuGet-Verweisen zu migrieren, anstatt Windows Installer zu verwenden.

Ab Februar 2021 sind auch Versionen von .NET Core-Paketen verfügbar, die den AMO- und ADOMD-Clientpaketen entsprechen. Es gibt jedoch einige Szenarien, die von den .NET Core-Versionen nicht unterstützt werden. Weitere Informationen finden Sie weiter unten in diesem Artikel unter Überlegungen und Einschränkungen .

Die AssemblyVersion für NuGet-Paketassemblys folgt der semantischen Versionierung: HAUPT.NEBEN.PATCH. NuGet-Verweise laden die erwartete Version, auch wenn im GAC eine andere Version vorhanden ist (dies ist aus der MSI-Installation resultierend). PATCH wird für jedes Release erhöht. AMO- und ADOMD-Versionen werden synchronisiert.

AMO und ADOMD

Paket Version
AMO 19.79.1
ADOMD 19.79.1

AMO und ADOMD .NET Core

Paket Version
AMO-.NET Core 19.79.1
ADOMD .NET Core 19.79.1

Ab AMO (AMO/TOM) und ADOMD .NET Core Version 19.48.0.0 wird die HTTP-basierte Kommunikation mit Clouddiensten wie Power BI und Azure Analysis Services deutlich verbessert. Es wird empfohlen, auf die neueste Version zu aktualisieren, um diese Leistungsverbesserungen zu nutzen.

TMDL-Vorschau

Ab AMO Release 19.72.0 ist die TMDL-Funktionalität jetzt in Microsoft.AnalysisServices.Tabular.dll enthalten. Wenn Sie das NuGet-Paket Microsoft.AnalysisServices.Tabular.Tmdl verwendet haben, müssen Sie es aus Ihrem Projekt entfernen und neu kompilieren.

Die folgenden Änderungen wurden an der TMDL-API vorgenommen, die sich auf Ihren Code auswirken könnten:

  • Der Name der TmdlFormatException-Eigenschaft ändert sich. Der Pfad wurde z. B. in Dokument geändert.

Weitere Informationen zu TMDL finden Sie unter Übersicht über die Tabellenmodelldefinitionssprache.

Erforderliche Mindestversionen

Transport Layer Security (TLS)-Protokollversion 1.0/1.1 war in Microsoft Entra ID am 30. Juni 2021 veraltet. TLS 1.2 oder höher ist jetzt erforderlich. TLS 1.2 wird in früheren Versionen der Analysis Services-Clientbibliotheken nicht unterstützt. Neuere Clientbibliotheksversionen umfassen unterstützung für TLS 1.2 und höher sowie andere wichtige Sicherheitsverbesserungen.

Um das Risiko und potenzielle Sicherheitsrisiken zu minimieren, sind ab dem 30. Juni 2021 für erweiterte Sicherheit in Azure Analysis Services und Power BI die folgenden oder höheren Versionen erforderlich:

Client lib Dateiversion Version
MSOLAP 2018.151.61.21 15.1.61.21
AMO 15.1.61.21 19.12.3.0
ADOMD 15.1.61.21 19.12.3.0

Überlegungen und Einschränkungen

AMO und ADOMD

Ab Version 19.67.0 unterstützen Konnektivitätsobjekte wie Microsoft.AnalysisServices.AdomdConnection und Microsoft.AnalysisServices.Server eine neue AccessToken-Eigenschaft , die eine verbesserte Möglichkeit zum Übergeben externer OAuth-Token ermöglicht, die von der XMLA-Konnektivitätsebene verwendet werden. Weitere Informationen finden Sie unter Eigenschaften von Verbindungszeichenfolgen – Benutzer-ID=...; Password=.

Ab Version 19.42.0.4 verwenden ADOMD.NET und AMO/TOM msAL (Microsoft.Identity.Client) Version 4.43.0 oder höher anstelle von ADAL, um Benutzer mit Microsoft Entra ID beim Herstellen einer Verbindung mit cloudbasierten Diensten wie Power-BI und Azure Analysis Services zu authentifizieren. Wenn Ihre Anwendung oder eine andere Komponente, von der die Anwendung abhängig ist, MSAL verwendet, ist es möglicherweise erforderlich, die Einstellungen für die Bindungsumleitung der Anwendung zu aktualisieren, wenn konflikte zwischen den Versionen von MSAL auftreten, die von den Komponenten geladen werden.

AMO und ADOMD .NET Core

Unterstützte Szenarien umfassen Verbindungen mit Azure Analysis Services, Power BI Premium und SQL Server Analysis Services. TCP-basierte Konnektivität wird nur für Windows-Computer unterstützt.

Die interaktive Anmeldung mit Microsoft Entra ID wird nur für Windows-Computer unterstützt. Die .NET Core Desktop-Runtime ist erforderlich.

Für Abhängigkeiten in MSAL ist Version 4.43.0 oder höher erforderlich.

Version 19.14.0 der .NET Core Clientbibliotheken wurde die Vorschauunterstützung für Self-Contained Veröffentlichung (sowohl in einem veröffentlichten Verzeichnis als auch im Einzeldateimodus) eingeführt, zusätzlich zur Unterstützung der Nutzung durch .NET 5.0-Projekte. Mehrere Probleme im Zusammenhang mit der Konnektivität mit SQL Server Analysis Services, die in der vorherigen Version identifiziert wurden, wurden behoben.

Version 19.12.7.2 der .NET Core-Clientbibliotheken wurde die Unterstützung für SQL Server Analysis Services eingeführt. Niedrigere Vorschauversionen unterstützen nur Azure Analysis Services- und Power BI-Semantikmodelle.

AMO

Version 19.12.3.0 der AMO-Clientbibliothek führt die neue Enumeration Microsoft.AnalysisServices.DataType ein. Die vorherige Enumeration Microsoft.AnalysisServices.Tabular.DataType ist jedoch noch vorhanden. Wenn Ihr Code auf die vorherige Enumeration als DataType in einer Codedatei mit Anweisungen auf beide Namespaces (Microsoft.AnalysisServices, Microsoft.AnalysisServices.Tabular) verweist, kann aufgrund der Mehrdeutigkeit eine Fehlermeldung beim Kompilieren angezeigt werden. Um den Fehler zu beheben, qualifizieren Sie den Verweis auf die Enumeration vollständig.

Version 19.61.1.4 der AMO-Clientbibliothek führt eine Änderung des Transaktionsrollbackverhaltens von Microsoft.AnalysisServices.Server ein. In früheren Versionen sendet ein Aufruf von Server.RollbackTransaction() eine Anforderung an das Modul, um ein Rollback für die Transaktion durchzuführen und dann ein Rollback lokaler Änderungen durchzuführen. Im Gegensatz zu früheren Versionen werden in Version 19.61.1.4 und höher, wenn lokale Änderungen nicht sicher zurückgesetzt werden können, tabellarische Datenbanken, die im Transaktionsblock enthalten sind, alle zusätzlichen Änderungen enthalten, bis sie vollständig synchronisiert werden können und die veralteten Änderungen aus der Transaktion, die zurückgesetzt wurden, entfernt werden. Eine InvalidOperationException wird ausgelöst, wenn eine Änderung an der relevanten tabellarischen Datenbank vorgenommen wird. Wenn Ihr Code Server.RollbackTransaction() aufruft, wird empfohlen, diesem Aufruf eine vollständige Synchronisierung [Database.Refresh(true)] für jede tabellarische Datenbank zu folgen, die im Rahmen der Transaktion geändert wird.

Ab Version 19.77.0 gibt TOM beim Klonen oder Kopieren eines MetadataObject-Objekts instance mithilfe des tabellarischen Objektmodells (TOM) null für Eigenschaften zurück, die Objekte außerhalb der direkten Struktur untergeordneter Objekte des MetadataObject kreuzverweisen. Sie müssen das geklonte MetadataObject-instance dem semantischen Modell hinzufügen, damit Querverweise auf Objekte außerhalb der MetadataObject-Struktur aufgelöst werden können.

Beim Klonen einer Tabelle mit einer Partition, die auf einen benannten Ausdruck in einer EntityPartitionSource verweist, gibt die ExpressionSource-Eigenschaft der EntityPartitionSource null zurück, bis die geklonte Tabelle dem semantischen Modell hinzugefügt wird, wie im codeausschnitt unten, damit die geklonte ExpressionSource-Referenz aufgelöst werden kann. Der Klon muss dem Modell hinzugefügt werden, da der kreuzverweiste benannte Ausdruck ein Element der Expressions-Auflistung des Modells und nicht Teil der Struktur untergeordneter Objekte der Tabelle ist.

Table tableClone = model.Tables[0].Clone();
anotherModel.Tables.Add(tableClone);

ADOMD

Ab Version 19.61.1.4 von ADOMD (sowohl .NET Framework als auch .NET Core) ist die Komprimierung in der XMLA-Transportebene vollständig verfügbar. Frühere Versionen nach Version 19.55.3.1 haben teilweise Unterstützung für die Komprimierung implementiert. Es wurden Berichte über Probleme mit diesen Releases eingegangen. Diese Probleme wurden im Rahmen der Version 16.61.1.4 behoben. Stellen Sie sicher, dass Sie ein Upgrade auf 19.61.1.4 oder höher durchführen, wenn Probleme im Zusammenhang mit der Komprimierung auftreten.

MSOLAP

Ab Version 16.0.43.20 verwendet MSOLAP msAL (Microsoft.Identity.Client) Version 4.43.0 oder höher anstelle von ADAL, um Benutzer beim Herstellen einer Verbindung mit cloudbasierten Diensten wie Power-BI und Azure Analysis Services mit Microsoft Entra ID zu authentifizieren. Wenn Ihre Anwendung oder eine andere Komponente, von der die Anwendung abhängig ist, MSAL verwendet, ist es möglicherweise erforderlich, die Bindungsumleitungseinstellungen der Anwendung zu aktualisieren, wenn konflikte zwischen den VERSIONEN von MSAL auftreten, die von den Komponenten geladen werden.

Eine Regression im Zusammenhang mit Verbindungen mit cloudbasierten Systemen unter Verwendung Microsoft Entra ID wurde in der Version 16.0.4.17 von OLEDB (MSOLAP) entdeckt. Es wurde in der Version 16.0.20.201 behoben. Aufgrund der Art des Problems können eine installierte Version 16.0.4.17 sowie jede andere Version vor 16.0.20.201 nicht durch Eine Herabstufung des Anbieters korrigiert werden, auch wenn das Setup im Reparaturmodus ausgeführt wird. Es wird empfohlen, die Version 16.0.4.17 [oder eine andere problematische] Version vollständig zu deinstallieren und dann die Version 16.0.20.201 oder höher zu installieren.

In einer früheren Version wurde MSOLAP aktualisiert, um eine Verbindung mit cloudbasierten Analysis Services mithilfe der verwalteten Microsoft Authentication Library (MSAL) herzustellen. Ab Version 16.0.87.16 installiert MSOLAP-Setup die ursprüngliche native ADAL-Komponente (Azure Active Directory Authentication Library) nicht mehr.

Grundlegendes zu Clientbibliotheken

Analysis Services verwendet drei Clientbibliotheken. ADOMD.NET und Analysis Services Management Objects (AMO) sind verwaltete Clientbibliotheken. Und analysis Services OLE DB-Anbieter (MSOLAP DLL) ist eine native Clientbibliothek. In der Regel werden alle drei gleichzeitig installiert.

Bei Microsoft-Clientanwendungen wie Power BI Desktop und Excel werden alle drei Clientbibliotheken installiert und dann entsprechend aktualisiert, wenn neue Versionen verfügbar sind. Je nach Version oder Häufigkeit von Updates sind einige Clientbibliotheken möglicherweise nicht die neuesten Versionen, die für Azure Analysis Services und Power BI erforderlich sind. Dies gilt auch für benutzerdefinierte Anwendungen oder andere Schnittstellen wie AsCmd, TOM, ADOMD.NET. Für diese Anwendungen müssen die Bibliotheken manuell oder programmgesteuert installiert werden. Die Clientbibliotheken für die manuelle Installation sind in SQL Server-Funktionspaketen wie verteilbaren Paketen enthalten. Allerdings sind diese Clientbibliotheken an die SQL Server-Version gebunden und möglicherweise nicht auf dem neuesten Stand. Stellen Sie sicher, dass Sie immer das neueste installieren, das aus diesem Artikel herunterladbar ist.

Typen von Clientbibliotheken

Analysis Services OLE DB-Anbieter (MSOLAP)

Der Analysis Services OLE DB-Anbieter (MSOLAP) ist die native Clientbibliothek für Analysis Services-Datenbankverbindungen. Er wird indirekt von ADOMD.NET und AMO genutzt, und Verbindungsanforderungen werden an den Datenanbieter delegiert. Sie können den OLE DB-Anbieter auch direkt über den Anwendungscode aufrufen.

Der Analysis Services OLE DB-Anbieter wird von den meisten Tools und Clientanwendungen, die zum Zugreifen auf Analysis Services-Datenbanken verwendet werden, automatisch installiert. Er muss auf Computern installiert sein, die zum Zugreifen auf Analysis Services-Daten verwendet werden.

OLE DB-Anbieter werden häufig in Verbindungszeichenfolgen angegeben. Ein Analysis Services-Verbindungszeichenfolge verwendet eine andere Nomenklatur, um auf den OLE DB-Anbieter zu verweisen: MSOLAP.<version>.dll.

AMO

AMO ist eine verwaltete Clientbibliothek, die für die Serververwaltung und Datendefinition verwendet wird. Sie wird von Tools und Clientanwendungen installiert und genutzt. Für SQL Server Management Studio (SSMS) wird AMO beispielsweise zum Herstellen einer Verbindung mit Analysis Services genutzt. Eine Verbindung, für die AMO genutzt wird, ist meist eine minimale Verbindung, die aus "data source=\<servername>" besteht. Nach dem Herstellen einer Verbindung verwenden Sie die API, um mit Datenbanksammlungen und größeren Objekten zu arbeiten. AMO wird sowohl von Visual Studio als auch von SSMS verwendet, um eine Verbindung mit einer Analysis Services-Instanz herzustellen.

ADOMD

ADOMD.NET ist eine verwaltete Datenclientbibliothek, die zum Abfragen von Analysis Services-Daten eingesetzt wird. Sie wird von Tools und Clientanwendungen installiert und genutzt.

Beim Herstellen einer Verbindung mit der Datenbank sind die Eigenschaften der Verbindungszeichenfolgen für alle drei Bibliotheken ähnlich. Fast alle Verbindungszeichenfolge, die Sie für ADOMD.NET mit Microsoft.AnalysisServices.AdomdClient.AdomdConnection.ConnectionString definieren, funktioniert auch für AMO und den Analysis Services OLE DB-Anbieter (MSOLAP). Weitere Informationen finden Sie unter Eigenschaften von Verbindungszeichenfolgen.

Überprüfen, ob .NET Core bereits installiert ist

OLEDDB (MSOLAP)

  1. Gehe zu C:\Program Files\Microsoft Analysis Services\AS OLEDB\. Wählen Sie den Ordner mit der höheren Zahl, falls Sie mehr als einen Ordner haben.

  2. Klicken Sie mit der rechten Maustaste auf msolap.dll>Eigenschaften>Details. Überprüfen Sie die Eigenschaft Produktversion . Hinweis: Wenn der Dateiname msolap140.dll ist, ist er älter als die neueste Version und sollte aktualisiert werden.

    Detaildialogfeld der MSOLAP-Clientbibliothek

AMO

  1. Gehe zu C:\Windows\Microsoft.NET\assembly\GAC_MSIL\Microsoft.AnalysisServices\. Wählen Sie den Ordner mit der höheren Zahl, falls Sie mehr als einen Ordner haben.

  2. Klicken Sie mit der rechten Maustaste auf Microsoft.AnalysisServices>Eigenschaften>Details.

    Dialogfeld

ADOMD

  1. Gehe zu C:\Windows\Microsoft.NET\assembly\GAC_MSIL\Microsoft.AnalysisServices.AdomdClient\. Wählen Sie den Ordner mit der höheren Zahl, falls Sie mehr als einen Ordner haben.

  2. Klicken Sie mit der rechten Maustaste auf Microsoft.AnalysisServices.AdomdClient>Eigenschaften>Details.

    Dialogfeld

Manuelles Aktualisieren von

Clientbibliotheken werden in der Regel zusammen mit Tools und Clientanwendungen, die sie verwenden, automatisch installiert und aktualisiert. In einigen Fällen werden Clientbibliotheken jedoch möglicherweise nicht automatisch aktualisiert, und jede muss manuell aktualisiert werden. Laden Sie zum manuellen Update das Windows Installer-Paket (.msi) für jede Clientbibliothek herunter, und führen Sie es aus.

So laden Sie sie herunter und aktualisieren

  1. Klicken Sie auf:

  2. Klicken Sie unter Downloads auf ein Windows Installer-Paket, um Setup auszuführen.

  3. Klicken Sie unter Setup auf Weiter.

  4. Lesen Sie die Lizenzbedingungen. Wenn Sie zustimmen, wählen Sie Ich stimme den Bedingungen im Lizenzvertrag zu, und klicken Sie dann auf Weiter.

  5. Klicken Sie auf Installieren.

  6. Klicken Sie nach Abschluss auf Fertig stellen.