Riferimento al Tabular Model Scripting Language (TMSL)

Si applica a: SQL Server 2016 e versioni successive di Analysis Services Azure Analysis Services Fabric/Power BI Premium

Il linguaggio TMSL (Tabular Model Scripting Language) è la sintassi di definizione del modello a oggetti e dei comandi per i modelli di dati tabulari al livello di compatibilità 1200 o superiore. TMSL comunica con Analysis Services tramite il protocollo XMLA, in cui il XMLA.Execute metodo accetta sia script di istruzione basati su JSON in TMSL che gli script tradizionali basati su XML in Analysis Services Scripting Language (ASSL per XMLA).

Elementi chiave di TMSL:

  • Metadati tabulari basati sulla semantica del modello tabulare.

    Un modello tabulare è costituito da tabelle, colonne e relazioni. Le definizioni di oggetti equivalenti in TMSL sono ora, non sorprendentemente tabelle, colonne, relazioni e così via. Un nuovo motore di metadati supporta queste definizioni.

  • Le definizioni degli oggetti sono strutturate come JSON anziché XML.

    Ad eccezione del modo in cui il payload viene formattato (in JSON o XML), TMSL e ASSL sono funzionalmente equivalenti nel modo in cui forniscono comandi e metadati ai metodi XMLA usati per la comunicazione del server e il trasferimento dei dati.

Come usare TMSL

Il modo più semplice per esplorare gli script TMSL consiste nell'usare i comandi CREATE, ALTER, DELETE o Process in SQL Server Management Studio (SSMS) in un modello già noto.

  1. Trovare il comando che si vuole usare: Riferimento TMSL - Comandi

  2. Controllare il riferimento alla definizione dell'oggetto per gli oggetti usati nel comando: Riferimento TMSL - Oggetti

  3. Scegliere un metodo per l'esecuzione dello script TMSL:

Schema di definizione del modello

Lo screenshot seguente mostra una versione abbreviata dello schema, compressa per mostrare gli oggetti principali.

SSAS_TabularMetadata

Linguaggi di scripting in Analysis Services

Analysis Services supporta i linguaggi di scripting ASSL e TMSL. Solo i modelli tabulari creati al livello di compatibilità 1200 o superiore sono descritti in TMS in formato JSON.

Analysis Services Scripting Language (ASSL per XMLA) è stato il primo linguaggio di scripting ed è ancora l'unico linguaggio di scripting per i modelli multidimensionali e i modelli tabulari a livelli di compatibilità inferiori (1100 o 1103). In ASSL i modelli tabulari a 110x sono descritti in termini multidimensionali, ad esempio cubo (per un modello) e measuregroup (per una tabella).

Nota

In [SQL Server Data Tools (SSDT) è possibile aggiornare un modello tabulare di versione precedente per usare TMSL passando da CompatibilityLevel a 1200 o versione successiva. Tenere presente che l'aggiornamento è irreversibile. Prima dell'aggiornamento, eseguire il backup del modello nel caso in cui sia necessaria la versione originale in un secondo momento.

La tabella seguente è la matrice del linguaggio di scripting per i modelli di dati di Analysis Services in piattaforme/versioni diverse a livelli di compatibilità specifici.

Versione Multidimensionale Tabulare 110x Tabulare 1200 Tabulare 1400 Tabulare 1500 Tabulare 1600
Power BI Premium ND ND ND ND TMSL TMSL
Azure Analysis Services ND ND 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 ND
SQL Server 2017 Analysis Services ASSL ASSL TMSL TMSL ND ND
SQL Server 2016 Analysis Services ASSL ASSL TMSL ND ND ND
SQL Server 2014 Analysis Services ASSL ASSL ND ND ND ND
SQL Server 2012 Analysis Services ASSL ASSL ND ND ND N/D