Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
S’applique à :
SQL Server Analysis Services
Azure Analysis Services
Fabric/Power BI Premium
Avec Analysis Services, presque tous les objets et charges de travail sont programmables, et il existe souvent plusieurs approches à choisir. Les options incluent l’écriture de code managé, de script ou d’utilisation de normes ouvertes telles que XMLA et MSOLAP si vos exigences de solution empêchent l’utilisation du .NET Framework.
Ce que vous pouvez accomplir dans le code
Les scénarios de programmation classiques incluent le déploiement de serveur, de base de données et de modèle sémantique, l’administration, l’actualisation des données et la gestion des partitions, l’accès aux données à partir d’applications personnalisées et d’outils externes. Commun à tous ces scénarios est une hiérarchie d’architecture et de définition d’objet fixe, avec des opérations bien comprises qui couvrent la définition de données, le traitement et les charges de travail de requête.
Bien que les objets et les charges de travail soient programmables, ils ne sont pas extensibles. Plus précisément, vous ne pouvez pas créer de cartouches de données personnalisées qui récupèrent des données à partir de sources de données non prises en charge, personnalisent ou remplacent des comportements de formule ou de moteur de stockage, et vous ne pouvez pas créer de nouveaux types de métadonnées d’objet sur un serveur, une base de données ou un modèle.
Pour plus d’informations sur la création de nouveaux types d’objets, alors que vous ne pouvez pas créer un nouveau type d’objet, vous pouvez créer des objets calculés générés à partir d’expressions ou de code au moment de l’exécution. Tous les éléments de votre modèle ne doivent pas être prédéfinis et mappés à une structure de données existante. En outre, vous pouvez étendre le schéma via des annotations dans AMO pour transmettre des informations spécifiques à l’objet à votre application cliente.
Choisir une plateforme ou une approche du développement
Analysis Services fournit de nombreuses façons de personnaliser une solution par le biais du code, mais la plupart des développeurs utilisent les API managées ou le script.
Les API managées incluent AMO et TOM pour les tâches administratives et de définition de données, et ADOMD.NET pour la prise en charge des requêtes à partir du code client. Dans SQL Server 2016 et versions ultérieures, AMO est mis à jour pour utiliser les nouvelles métadonnées tabulaires pour les modèles créés ou mis à niveau vers le niveau de compatibilité 1200 et versions ultérieures.
Le script peut souvent obtenir les mêmes résultats qu’un exécutable de programme, avec peut-être moins de travail.
Vous pouvez écrire un script PowerShell à l’aide de composants PowerShell Analysis Services qui appellent directement des types AMO. Dans PowerShell, vous pouvez également créer et exécuter un script ASSL/XMLA ou TMSL (en JSON).
TMSL et ASSL sont des langages de script qui fournissent des objets utilisés dans les opérations de détection et d’exécution. Le type de script que vous utilisez dépend du serveur, de la base de données ou du modèle sous-jacent.
Les modèles tabulaires ou les bases de données au niveau de compatibilité 1200 et versions ultérieures utilisent le langage TMSL (Tabular Model Scripting Language), qui est au format JSON.
Les modèles multidimensionnels et les modèles tabulaires aux niveaux de compatibilité 1050-1103 utilisent Analysis Services Scripting Language (ASSL), qui est l’extension Analysis Services de la norme ouverte XMLA.
Vous pouvez générer un script ASSL ou TMSL dans Management Studio. Vous pouvez également utiliser View Code dans SQL Server Data Tools pour afficher la définition du modèle dans ASSL ou TMSL.
Bien qu’il soit possible de créer une solution basée sur les normes ouvertes de XMLA et MDX, il est assez rare de le faire. Il n’existe aucune documentation autre que des références à XMLA et MDX pour vous assister, et la plupart des supports de la communauté et des forums proviennent d’expériences avec les technologies .NET ou natives (MSOLAP).
Programmation pour Analysis Services
Analysis Services Management Objects (AMO) : documentation de référence du développeur pour le fournisseur managé, Analysis Services Management Objects (AMO), pour la définition et l’administration des données, y compris le traitement.
Modèle objet tabulaire : extension de la bibliothèque cliente AMO, créée pour prendre en charge les scénarios de programmation pour les modèles tabulaires créés au niveau de compatibilité 1200 et versions ultérieures.
Tabular Model Definition Language (TMDL) - Syntaxe de définition de modèle objet pour les modèles de données tabulaires au niveau de compatibilité 1200 ou supérieur. Entièrement compatible avec TOM. Texte et optimisé pour l’interaction humaine et la lisibilité.
Référence TMSL (Tabular Model Scripting Language) : représentation JSON des modèles tabulaires au niveau de compatibilité 1200 et versions ultérieures. Les définitions d’objets sont basées sur des constructions de métadonnées tabulaires telles que la table, la colonne et la relation plutôt que des métadonnées multidimensionnelles qui peuvent ne pas être familières si vous débutez dans la modélisation des données Analysis Services en mode tabulaire.
Programmation de modèle multidimensionnel : décrit les tâches et approches de développement pour l’intégration d’objets de modèle multidimensionnels dans une solution personnalisée.
ADOMD.NET - Documentation de référence du développeur pour le fournisseur managé, ADOMD.NET, utilisé pour l’accès aux données programmatiques et les charges de travail de requête.
Référence XML for Analysis (XMLA) : décrit les concepts XMLA qui peuvent vous aider à comprendre comment XMLA contribue à votre solution personnalisée. Il décrit également le niveau de conformité avec la spécification XMLA 1.1.
Analysis Services Scripting Language (ASSL pour XMLA) : décrit les extensions ASSL à XMLA. ASSL fournit un langage de définition et de manipulation de données pour les modèles multidimensionnels Analysis Services qui complètent la spécification XMLA.
Ensembles de lignes de schéma Analysis Services : décrit les ensembles de lignes de schéma qui fournissent des informations sur l’état du serveur, les opérations de serveur et les objets de base de données.
Référence PowerShell Analysis Services : documente les applets de commande utilisées pour les fonctions d’administration, ainsi que l’applet de commande Invoke-ASCmd à usage général qui accepte tout script ou requête en tant qu’entrée.