Partager via


Installer, distribuer et référencer l’objet de modèle tabulaire (TOM)

S’applique à : SQL Server 2016 et versions ultérieures Analysis Services Azure Analysis Services Fabric/Power BI Premium

Cet article explique comment télécharger, référencer et redistribuer tom (Tabular Object Model), une bibliothèque C# pour créer et gérer des bases de données et des modèles tabulaires dans du code managé.

TOM est une extension de la bibliothèque de client AMO (Microsoft.AnalysisServices.dll). Pour utiliser TOM, le modèle et la base de données doivent être au niveau de compatibilité 1200 ou supérieur.

Assemblys AMO-TOM

AMO inclut de nouveaux assemblys Core, Tabulaire et JSON. Il inclut également l’assembly AMO d’origine, Microsoft.AnalysisServices.dll, qui fait partie d’Analysis Services depuis sa première version. Un AMO restructuré décharge les classes communes vers un assembly et fournit une division logique entre les API tabulaires et multidimensionnelles via des assemblys supplémentaires.

Le tableau suivant décrit chaque assembly :

Assembly Fonctionnalités Classes importantes
Core
Microsoft.AnalysisServices.Core.dll
Commun aux bases de données tabulaires et multidimensionnelles.

Fournit la gestion des exceptions, les connexions génériques à un serveur instance et une base de données, et l’accès aux propriétés et méthodes communes pour les objets Serveur et Base de données.
Serveur principal
Base de données principale
AmoException
TOM
Microsoft.AnalysisServices.Tabular.dll, version 13.0.1601.5 ou ultérieure.
Créer et gérer des objets de métadonnées tabulaires. SERVEUR TOM
Base de données TOM
Modéliser
Table de charge de travail
Colonne
Relation
AMO
Microsoft.AnalysisServices.dll
Créez et gérez des objets de métadonnées multidimensionnels, notamment des bases de données tabulaires 1050-1103. Serveur AMO
Base de données AMO
Cube
Dimension
MeasureGroup
Json
Microsoft.AnalysisServices.Tabular.Json.dll
DLL d’assistance qui encapsule les NewtonSoftJson.dll (JSON.NET) pour contrôler les mises à jour, ce qui élimine le risque d’introduire des modifications fonctionnelles de la sérialisation JSON dans les charges de travail serveur.

Cette DLL existe en tant que dépendance dans TOM et n’est pas destinée à être utilisée directement dans votre code.
Aucun.

Présentation des dépendances d’assembly

Pour programmer par rapport à AMO, votre solution doit inclure des références à des DLL dépendantes. AMO et TOM dépendent de Core, car ils fournissent des classes de base.

AMO dépend de TOM, car certaines classes dans les classes de référence AMO de TOM. Par exemple, l’objet Base de données AMO a une propriété Model de type Model, implémentée dans la dll TOM.

Dépendances AMO TOM

Vous ne pouvez pas distribuer Microsoft.AnalysisServices.dll sans Microsoft.AnalysisServices.Tabular.dll, mais vous pouvez référencer leurs espaces de noms respectifs sans l’autre.

Choix de l’espace de noms à utiliser dans le code

Dans la hiérarchie d’objets, tout objet sous Database est soit une construction de métadonnées tabulaires via l’objet Model, soit une construction de métadonnées multidimensionnelles via un objet Cube, Dimension ou MeasureGroup. Pour les opérations de haut niveau au niveau du serveur, de la base de données, du rôle ou de la trace, le choix de l’espace de noms à référencer dépend des charges de travail que votre code doit prendre en charge.

  • Utilisez Tabular.Server ou Tabular.Database si votre solution est de niveau de compatibilité 1200 ou supérieur, et que l’objet Database avec lequel vous travaillez doit fournir l’accès aux objets Model, Table, Columns et autres sous forme de constructions de métadonnées tabulaires.
  • Utilisez AnalysisServices.Server ou AnalysisServices.Database si le code en aval fait référence à des objets multidimensionnels tels que Cubes, DataSources, DataSourceViews et Dimensions.

Vous aurez besoin des espaces de noms pour les outils et les applications prenant en charge une combinaison de bases de données et de types de modèles.

Il n’est pas nécessaire de référencer l’espace de noms Core dans votre code ; les classes dans Core sont des classes de base créées dans le but de fournir des propriétés communes, telles que Name et Description, pour les objets principaux.

Télécharger et installer AMO

  1. Accédez à Bibliothèques clientes.

  2. Sélectionnez et téléchargez AMO à l’aide de Windows Installer ou de packages NuGet.

Ajouter des références

  1. Dans Explorateur de solutions>Ajouter une référence>Parcourir.

  2. Accédez à C :\Program Files\Microsoft SQL Server\140\SDK\Assemblies et sélectionnez :

    • Microsoft.AnalysisServices.Core
    • Microsoft.AnalysisServices.Tabular
    • Microsoft.AnalysisSerivces.Tabular.Json
  3. Cliquez sur OK. Dans Explorateur de solutions, vérifiez que les assemblys existent dans le dossier Références.

  4. Dans votre page de codes, ajoutez l’espace de noms Microsoft.AnalysisServces.Tabular si les bases de données et les modèles sont de niveau de compatibilité tabulaire 1200 ou supérieur.

    using Microsoft.AnalysisServices; 
    using Microsoft.AnalysisServices.Tabular;
    

    Lorsque vous incluez des espaces de noms qui ont des classes en commun pour les objets Server, Database, Role et Trace, évitez les références ambiguës en qualifiant l’espace de noms que vous souhaitez utiliser (par exemple, Microsoft.AnalysisServices.Tabular.Server instancie un objet Server à l’aide de l’espace de noms tabulaire).

Redistribuer AMO et TOM avec votre application

La redistribution d’AMO et tom se fait par le biais du package d’installationsql_as_amo.msi ou des packages NuGet. Si vous créez un programme d’installation pour une application cliente qui appelle AMO ou TOM, ajoutez sql_as_amo.msi à votre exécutable.

Le package est autonome et fournit tous les assemblys requis pour appeler AMO et TOM dans votre code. D’autres packages, tels que SQL_AS_OLEDB.msi ou SQL_AS_ADOMD.msi, ne sont pas spécifiquement requis pour les scénarios de programmation TOM.