Model オブジェクト (TMSL)
適用対象:SQL Server 2016 以降の Analysis Services Azure Analysis Services Fabric/Power BI Premium
表形式モデルを定義します。 データベースごとに 1 つのモデルがあり、任意のコマンドで指定できるデータベースは 1 つだけです。 Database オブジェクトは親オブジェクトです。
モデル定義が大きすぎるため、1 つのトピックで構文全体を再現できます。 このため、子オブジェクトへのリンクを含む、メインパーツを強調表示する部分的な構文を以下に示します。
おそらく、モデル定義を理解する最善の方法は、よく知っている表形式モデルから始める方法です。 SQL Server Data Toolsの [コードの表示] オプションを使用して、その定義を表示します。 コードを表示できるように、必ず JSON エディターをインストールしてください。 Visual Studio で JSON エディターを取得するには、 コミュニティ エディション または Visual Studio の他のエディションをダウンロードします。
注意
どのスクリプトでも、一度に参照できるデータベースは 1 つだけです。 データベース自体以外のオブジェクトの場合、モデルを指定する場合、Database プロパティは省略可能です。 モデルとデータベースの間には、明示的に指定されていない場合にデータベース名を推測するために使用できる 1 対 1 のマッピングがあります。
同様に、Model を省略して、データベースのプロパティを設定することもできます。
オブジェクト定義
すべてのオブジェクトには、名前、型、説明、プロパティ コレクション、注釈など、共通のプロパティ セットがあります。 モデル オブジェクトには、次のプロパティもあります。
storageLocation
モデルを配置するディスク上の場所です。
defaultMode
データをパーティションで利用できるようにする既定のメソッドです。
defaultDataView
DirectQuery モードのモデルの場合、このプロパティは、モデルに対してクエリを実行するために使用されるパーティションを決定します。 有効な値には、Full と Sample が含まれます。
culture
書式設定に使用するカルチャ。
照合順序 (collation)
照合順序です。
テーブル
パーティション、列、メジャー、KPI、注釈など、モデル内のテーブルの完全なコレクション。 詳細については、「 Tables オブジェクト (TMSL)」 を参照してください。
relationships
フィルターの方向とセキュリティを設定するプロパティなど、テーブルの各ペア間のリレーションシップを指定します。 詳細については、「 Relationships オブジェクト (TMSL)」 を参照してください。
dataSources
モデルにデータを提供する外部データベースへの 1 つ以上の接続、またはクエリのパススルーに使用します。 詳細については、「 DataSources オブジェクト (TMSL)」 を参照してください。
roles
カスタム アクセス制御用の DAX のデータベース アクセス許可、メンバー アカウント、および必要に応じてセキュリティ フィルターを関連付けるオブジェクト。
使用
モデル オブジェクトには、モデル全体が含まれています。 ほとんどのコマンドでは、1 つの Model オブジェクトまたはその親 Database オブジェクトを指定する必要があります。
モデル オブジェクトを作成、置換、または変更する場合は、オブジェクト定義のすべての読み取り/書き込みプロパティを指定します。 読み取り/書き込みプロパティの省略は削除と見なされます。
部分的な構文
このオブジェクト定義は非常に大きいため、最初のレベルのプロパティのみが一覧表示されます。 子オブジェクトの一覧については、「 表形式モデル スクリプト言語 (TMSL) のオブジェクト定義」 を参照してください。
"model": {
"description": "Model object of a tabular database",
"type": "object",
"properties": {
"name": { },
"description": { },
"storageLocation": { },
"defaultMode": { },
"defaultDataView": { },
"culture": { },
"collation": { },
"annotations": { },
"tables": { },
"relationships": { },
"dataSources": { },
"perspectives": { },
"cultures": { },
"roles": { }
}