Bibliothèques de client Analysis Services

S’applique à : SQL Server Analysis Services Azure Analysis Services Fabric/Power BI Premium

Les bibliothèques de client sont nécessaires pour que les applications clientes et les outils se connectent à Analysis Services. Les applications clientes Microsoft telles que Power BI Desktop, Excel, SQL Server Management Studio (SSMS), ainsi que les extensions de projets Analysis Services pour Visual Studio installent les trois bibliothèques clientes et les mettent à jour avec des mises à jour régulières des applications. Les applications clientes personnalisées nécessitent également l’installation de bibliothèques clientes. Les bibliothèques clientes sont mises à jour tous les mois.

Important: Avant d’obtenir les dernières versions, veillez à voir Considérations et limitations.

Télécharger la dernière version

Windows Installer

Téléchargement Version
MSOLAP (amd64) 16.0.130.20
MSOLAP (x86) 16.0.130.20
AMO 19.79.0.0
ADOMD 19.79.0.0

Packages NuGet

Les bibliothèques clientes AMO/TOM (Analysis Services Management Objects) et ADOMD sont disponibles sous forme de packages installables à partir de NuGet.org. Il est recommandé de migrer vers des références NuGet au lieu d’utiliser Windows Installer.

À compter de février 2021, des versions des packages .NET Core équivalents aux packages clients AMO et ADOMD sont également disponibles. Toutefois, il existe quelques scénarios non pris en charge par les versions de .NET Core. Pour plus d’informations, consultez considérations et limitations plus loin dans cet article.

Les assemblys de package NuGet AssemblyVersion respectent la gestion sémantique de version suivante : MAJEURE.MINEURE.CORRECTIF. Les références NuGet chargent la version attendue même s’il existe une autre version dans le GAC (résultant de l’installation msi). Le numéro de correctif est incrémenté à chaque version. Les versions AMO et ADOMD sont constamment synchronisées.

AMO et ADOMD

Package Version
AMO 19.79.1
ADOMD 19.79.1

AMO et ADOMD .Net Core

Package Version
.Net Core AMO 19.79.1
ADOMD .Net Core 19.79.1

À compter d’AMO (AMO/TOM) et D’ADOMD .Net Core version 19.48.0.0, les communications http avec des services cloud tels que Power BI et Azure Analysis Services sont considérablement améliorées. Il est recommandé de mettre à jour vers la dernière version pour tirer parti de ces améliorations des performances.

Version préliminaire de TMDL

À compter de la version 19.72.0 d’AMO, la fonctionnalité TMDL est désormais incluse dans Microsoft.AnalysisServices.Tabular.dll. Si vous utilisez le package NuGet Microsoft.AnalysisServices.Tabular.Tmdl , veillez à le supprimer de votre projet et à le recompiler.

Les modifications suivantes ont été apportées à l’API TMDL qui peuvent avoir un impact sur votre code :

  • Changements de nom de propriété TmdlFormatException. Par exemple, Chemin d’accès a été remplacé par Document.

Pour en savoir plus sur TMDL, consultez Vue d’ensemble du langage de définition de modèle tabulaire.

Versions minimales requises

Le protocole TLS (Transport Layer Security) version 1.0/1.1 a été déconseillé dans Microsoft Entra ID le 30 juin 2021. TLS 1.2 ou version ultérieure est désormais requis. TLS 1.2 n’est pas pris en charge dans les versions antérieures des bibliothèques clientes Analysis Services. Les versions plus récentes de la bibliothèque cliente incluent la prise en charge de TLS 1.2 et versions ultérieures, en plus d’autres améliorations importantes de la sécurité.

Pour réduire les risques et les vulnérabilités de sécurité potentielles, à compter du 30 juin 2021, une sécurité renforcée dans Azure Analysis Services et Power BI nécessite les versions suivantes ou ultérieures :

Lib client Version de fichier 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

Considérations et limitations

AMO et ADOMD

À compter de la version 19.67.0, les objets de connectivité tels que Microsoft.AnalysisServices.AdomdClient.AdomdConnection et Microsoft.AnalysisServices.Server prennent en charge une nouvelle propriété AccessToken qui permet de transmettre des jetons OAuth externes à utiliser par la couche de connectivité XMLA. Pour plus d’informations, consultez Propriétés de chaîne de connexion - ID utilisateur=... ; Password=.

À compter de la version 19.42.0.4, ADOMD.NET et AMO/TOM utilisent MSAL (Microsoft.Identity.Client) version 4.43.0 ou ultérieure au lieu d’ADAL pour authentifier les utilisateurs avec Microsoft Entra ID lors de l’établissement d’une connexion à des services cloud tels que Power-BI et Azure Analysis Services. Si votre application ou un autre composant dont dépend l’application utilise MSAL, il peut être nécessaire de mettre à jour les paramètres de redirection de liaison de l’application s’il existe des conflits entre les versions de MSAL chargées par les composants.

AMO et ADOMD .Net Core

Les scénarios pris en charge incluent les connexions à Azure Analysis Services, Power BI Premium et SQL Server Analysis Services. La connectivité tcp est prise en charge uniquement pour les ordinateurs Windows.

La connexion interactive avec Microsoft Entra ID est prise en charge uniquement pour les ordinateurs Windows. Le runtime .NET Core Desktop est requis.

La dépendance dans MSAL nécessite la version 4.43.0 ou ultérieure.

La version 19.14.0 des bibliothèques clientes .Net Core a introduit la prise en charge de la préversion pour la publication de Self-Contained (à la fois dans un répertoire publié et en mode fichier unique), en plus de la prise en charge de la consommation par les projets .NET 5.0. Plusieurs problèmes liés à la connectivité aux SQL Server Analysis Services identifiés dans la version précédente ont été résolus.

La version 19.12.7.2 des bibliothèques clientes .Net Core a introduit la prise en charge des SQL Server Analysis Services. Les versions de préversion inférieures ne prendnt en charge que les modèles sémantiques Azure Analysis Services et Power BI.

AMO

La version 19.12.3.0 de la bibliothèque cliente AMO introduit une nouvelle énumération, Microsoft.AnalysisServices.DataType. Toutefois, l’énumération précédente , Microsoft.AnalysisServices.Tabular.DataType existe toujours. Si votre code fait référence à l’énumération précédente en tant que DataType dans un fichier de code avec des instructions pour les deux espaces de noms (Microsoft.AnalysisServices, Microsoft.AnalysisServices.Tabular), en raison de l’ambiguïté, vous pouvez obtenir une erreur lors de la compilation. Pour résoudre l’erreur, qualifiez entièrement la référence à l’énumération.

La version 19.61.1.4 de la bibliothèque cliente AMO introduit une modification du comportement de restauration des transactions de Microsoft.AnalysisServices.Server. Dans les versions antérieures, un appel à Server.RollbackTransaction() envoie une demande au moteur pour restaurer la transaction, puis tenter de restaurer les modifications locales. Contrairement aux versions antérieures, dans 19.61.1.4 et versions ultérieures, si les modifications locales ne peuvent pas être restaurées en toute sécurité, les bases de données tabulaires incluses dans la transaction bloquent les modifications supplémentaires jusqu’à ce qu’elles puissent être entièrement synchronisées et que les modifications obsolètes de la transaction qui ont été restaurées soient supprimées. Une exception InvalidOperationException est déclenchée lorsqu’une modification est apportée à la base de données tabulaire appropriée. Si votre code appelle Server.RollbackTransaction(), il est recommandé de suivre cet appel avec une synchronisation complète [Database.Refresh(true)] pour toute base de données tabulaire modifiée dans le cadre de la transaction.

À compter de la version 19.77.0, lors du clonage ou de la copie d’un MetadataObject dans un autre instance d’un MetadataObject à l’aide du modèle d’objet tabulaire (TOM), TOM retourne la valeur Null pour les propriétés qui référencent des objets en dehors de l’arborescence directe d’objets enfants de MetadataObject. Vous devez ajouter le instance MetadataObject cloné au modèle sémantique afin que les références croisées à des objets en dehors de l’arborescence MetadataObject puissent être résolues.

Par exemple, lors du clonage d’une table avec une partition qui fait référence à une expression nommée dans un EntityPartitionSource, la propriété ExpressionSource de EntityPartitionSource retourne null jusqu’à ce que la table cloné soit ajoutée au modèle sémantique comme dans l’extrait de code ci-dessous afin que la référence ExpressionSource clonée puisse être résolue. Le clone doit être ajouté au modèle, car l’expression nommée référencée de manière croisée est membre de la collection Expressions du modèle et ne fait pas partie de l’arborescence d’objets enfants de la table.

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

ADOMD

À compter d’ADOMD (.NET Framework et .NET Core) version 19.61.1.4, la compression est entièrement disponible dans la couche de transport XMLA. Les versions précédentes après la version 19.55.3.1 implémentent une prise en charge partielle de la compression. Des rapports sur des problèmes liés à ces versions ont été reçus. Ces problèmes ont été résolus dans le cadre de la version 16.61.1.4. Veillez à effectuer une mise à niveau vers la version 19.61.1.4 ou ultérieure si vous rencontrez des problèmes liés à la compression.

MSOLAP

À compter de la version 16.0.43.20, MSOLAP utilise MSAL (Microsoft.Identity.Client) version 4.43.0 ou ultérieure au lieu d’ADAL pour authentifier les utilisateurs avec Microsoft Entra ID lors de l’établissement d’une connexion à des services cloud tels que Power-BI et Azure Analysis Services. Si votre application ou un autre composant dont dépend l’application utilise MSAL, il peut être nécessaire de mettre à jour les paramètres de redirection de liaison de l’application en cas de conflit entre les versions de MSAL chargées par les composants

Une régression liée aux connexions aux systèmes cloud à l’aide de Microsoft Entra ID a été découverte dans la version 16.0.4.17 d’OLEDB (MSOLAP). Elle a été corrigée dans la version 16.0.20.201. En raison de la nature du problème, une version 16.0.4.17 installée, ainsi que toute autre version antérieure à 16.0.20.201, ne peut pas être corrigée en supgradant le fournisseur, même si le programme d’installation est exécuté en mode réparation. Il est recommandé de désinstaller complètement la version 16.0.4.17 [ou toute autre version problématique], puis d’installer la version 16.0.20.201 ou ultérieure.

Dans une version antérieure, MSOLAP a été mis à jour pour se connecter à Analysis Services basé sur le cloud à l’aide de la bibliothèque d’authentification Microsoft managée (MSAL). À compter de la version 16.0.87.16, le programme d’installation de MSOLAP n’installe plus le composant ADAL (Azure Active Directory Authentication Library) natif d’origine.

Présentation des bibliothèques clientes

Analysis Services utilise trois bibliothèques clientes. ADOMD.NET et Analysis Services Management Objects (AMO) sont des bibliothèques clientes managées. Et le fournisseur OLE DB Analysis Services (DLL MSOLAP) est une bibliothèque cliente native. En général, les trois bibliothèques sont installées en même temps.

Les applications clientes Microsoft telles que Power BI Desktop et Excel installent les trois bibliothèques clientes et les mettent à jour quand de nouvelles versions sont disponibles. Selon la version ou la fréquence des mises à jour, certaines bibliothèques clientes peuvent ne pas être les dernières versions requises par Azure Analysis Services et Power BI. Il en va de même pour les applications personnalisées ou d’autres interfaces telles que AsCmd, TOM, ADOMD.NET. Ces applications nécessitent l’installation manuelle ou par programmation des bibliothèques. Les bibliothèques clientes pour l’installation manuelle sont incluses dans les packs de fonctionnalités SQL Server sous forme de packages distribuables. Toutefois, elles sont liées à la version de SQL Server et il se peut qu’elles ne soient pas à jour. Veillez à toujours installer la dernière version téléchargeable à partir de cet article.

Types de bibliothèques clientes

Fournisseur OLE DB pour Analysis Services (MSOLAP)

Le fournisseur Analysis Services OLE DB (MSOLAP) est la bibliothèque cliente native pour les connexions de base de données Analysis Services. Il est utilisé indirectement par ADOMD.NET et AMO, les demandes de connexion étant déléguées au fournisseur de données. Vous pouvez également appeler le fournisseur OLE DB directement à partir de code d’application.

Le fournisseur Analysis Services OLE DB est installé automatiquement par la plupart des outils et des applications clientes utilisés pour accéder aux bases de données Analysis Services. Il doit être installé sur les ordinateurs utilisés pour accéder aux données Analysis Services.

Les fournisseurs OLE DB sont souvent spécifiés dans les chaînes de connexion. Un chaîne de connexion Analysis Services utilise une nomenclature différente pour faire référence au fournisseur OLE DB : MSOLAP.<version>.dll.

AMO

AMO est une bibliothèque cliente managée utilisée pour l’administration serveur et la définition de données. Elle est installée et utilisée par des outils et des applications clientes. Par exemple, SQL Server Management Studio (SSMS) utilise AMO pour se connecter à Analysis Services. Une connexion utilisant AMO se résume généralement à "data source=\<servername>". Une fois une connexion établie, vous utilisez l’API pour recourir à des collections de bases de données et à des objets principaux. Visual Studio et SSMS utilisent AMO pour se connecter à une instance Analysis Services.

ADOMD

ADOMD.NET est une bibliothèque cliente de données managée utilisée pour interroger des données Analysis Services. Elle est installée et utilisée par des outils et des applications clientes.

Durant la connexion à une base de données, les propriétés de chaîne de connexion pour les trois bibliothèques sont similaires. Presque tous les chaîne de connexion que vous définissez pour ADOMD.NET à l’aide de Microsoft.AnalysisServices.AdomdClient.AdomdConnection.ConnectionString fonctionne également pour AMO et le fournisseur OLE DB Analysis Services (MSOLAP). Pour plus d’informations, consultez Propriétés de chaîne de connexion.

Rechercher les versions installées

OLEDDB (MSOLAP)

  1. Atteindre C:\Program Files\Microsoft Analysis Services\AS OLEDB\. Si vous avez plusieurs dossiers, choisissez le numéro le plus élevé.

  2. Cliquez avec le bouton droit sur msolap.dll>Propriétés>Détails. Vérifiez la propriété Version du produit . Remarque : Si le nom de fichier est msolap140.dll, il est antérieur à la dernière version et doit être mis à niveau.

    Boîte de dialogue détails de la bibliothèque du client MSOLAP

AMO

  1. Atteindre C:\Windows\Microsoft.NET\assembly\GAC_MSIL\Microsoft.AnalysisServices\. Si vous avez plusieurs dossiers, choisissez le numéro le plus élevé.

  2. Cliquez avec le bouton droit sur Microsoft.AnalysisServices>Propriétés>Détails.

    Boîte de dialogue détails de la bibliothèque du client AMO

ADOMD

  1. Atteindre C:\Windows\Microsoft.NET\assembly\GAC_MSIL\Microsoft.AnalysisServices.AdomdClient\. Si vous avez plusieurs dossiers, choisissez le numéro le plus élevé.

  2. Cliquez avec le bouton droit sur Microsoft.AnalysisServices.AdomdClient>Propriétés>Détails.

    Boîte de dialogue détails de la bibliothèque du client ADOMD

Mettre à jour manuellement

Les bibliothèques clientes sont généralement installées et mises à jour automatiquement, ainsi que les outils et les applications clientes qui les utilisent. Toutefois, dans certains cas, les bibliothèques clientes peuvent ne pas être mises à jour automatiquement et chacune doit être mise à jour manuellement. Pour effectuer une mise à jour manuelle, téléchargez et exécutez le package Windows Installer (.msi) pour chaque bibliothèque cliente.

Pour télécharger et mettre à jour

  1. Cliquez sur :

  2. Dans Téléchargements, cliquez sur un package Windows Installer pour exécuter le programme d’installation.

  3. Dans Le programme d’installation, cliquez sur Suivant.

  4. Lisez le contrat de licence. Si vous acceptez, sélectionnez J’accepte les termes du contrat de licence, puis cliquez sur Suivant.

  5. Cliquez sur Installer.

  6. Lorsque vous avez terminé, cliquez sur Terminer.