Langage TMSL (Tabular Model Scripting Language)

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

Le langage TMSL (Tabular Model Scripting Language) est la syntaxe de définition de modèle objet et de commande pour les modèles de données tabulaires au niveau de compatibilité 1200 ou supérieur. TMSL communique avec Analysis Services via le protocole XMLA, où la méthode accepte à la XMLA.Execute fois les scripts d’instruction JSON dans TMSL ainsi que les scripts XML traditionnels dans Analysis Services Scripting Language (ASSL pour XMLA).

Éléments clés de TMSL :

  • Métadonnées tabulaires basées sur la sémantique du modèle tabulaire.

    Un modèle tabulaire est composé de tables, de colonnes et de relations. Les définitions d’objets équivalentes dans TMSL sont désormais, sans surprise, des tables, des colonnes, des relations, etc. Un nouveau moteur de métadonnées prend en charge ces définitions.

  • Les définitions d’objets sont structurées au format JSON au lieu de XML.

    À l’exception de la mise en forme de la charge utile (au format JSON ou XML), TMSL et ASSL sont fonctionnellement équivalents dans la façon dont ils fournissent des commandes et des métadonnées aux méthodes XMLA utilisées pour la communication sur le serveur et le transfert de données.

Comment utiliser TMSL

Le moyen le plus simple d’explorer les scripts TMSL consiste à utiliser les commandes CREATE, ALTER, DELETE ou Process dans SQL Server Management Studio (SSMS) sur un modèle que vous connaissez déjà.

  1. Recherchez la commande que vous souhaitez utiliser : Référence TMSL - Commandes

  2. Vérifiez la référence de définition d’objet pour les objets utilisés dans la commande : Référence TMSL - Objets

  3. Choisissez une méthode pour exécuter le script TMSL :

Schéma de définition de modèle

La capture d’écran suivante montre une version abrégée du schéma, réduite pour afficher les objets principaux.

SSAS_TabularMetadata

Langages de script dans Analysis Services

Analysis Services prend en charge les langages de script ASSL et TMSL. Seuls les modèles tabulaires créés au niveau de compatibilité 1200 ou supérieur sont décrits dans TMS au format JSON.

Le langage de script Analysis Services (ASSL pour XMLA) était le premier langage de script et reste le seul langage de script pour les modèles multidimensionnels et les modèles tabulaires à des niveaux de compatibilité inférieurs (1100 ou 1103). Dans ASSL, les modèles tabulaires à 110x sont décrits en termes multidimensionnels, tels que cube (pour un modèle) et measuregroup (pour une table).

Notes

Dans [SQL Server Data Tools (SSDT), vous pouvez mettre à niveau un modèle tabulaire de version antérieure pour utiliser TMSL en basculant son CompatibilityLevel vers 1200 ou une version ultérieure. N’oubliez pas que la mise à niveau est irréversible. Avant la mise à niveau, sauvegardez votre modèle si vous avez besoin de la version d’origine ultérieurement.

Le tableau suivant présente la matrice du langage de script pour les modèles de données Analysis Services sur différentes plateformes/versions à des niveaux de compatibilité spécifiques.

Version Multidimensionnel Tabulaire 110x Tabulaire 1200 Tabulaire 1400 Tabulaire 1500 Tabulaire 1600
Power BI Premium N/D N/D N/D N/D TMSL TMSL
Azure Analysis Services N/D N/D TMSL TMSL TMSL TMSL
SQL Server 2022 Analysis Services ASSL ASSL TMSL TMSL TMSL TMSL
SQL Server 2019 Analysis Services ASSL ASSL TMSL TMSL TMSL N/D
SQL Server 2017 Analysis Services ASSL ASSL TMSL TMSL N/D N/D
SQL Server 2016 Analysis Services ASSL ASSL TMSL N/D N/D N/D
SQL Server 2014 Analysis Services ASSL ASSL N/D N/D N/D N/D
SQL Server 2012 Analysis Services ASSL ASSL N/D N/D N/D NA