Power BI 使用シナリオ: 高度なデータ モデル管理

注意

この記事は、Power BI 実装計画 シリーズの記事の一部です。 このシリーズでは、主に Microsoft Fabric 内での Power BI のワークロードに焦点を当てます。 シリーズの概要については、「Power BI 実装計画」を参照してください。

この使用シナリオでは、高度なデータ モデル管理に焦点を合わせています。これは、Power BI コンテンツ作成者がサードパーティのツールに依存して、データ モデルの開発、管理、最適化を行う場合です。 一部のサード パーティ ツールは外部ツールであり、Power BI Desktop で直接サポートしています。 また、Power BI サービスで XMLA エンドポイントと直接通信して、公開されたデータ モデル (セマンティック モデル—以前のデータセット) を管理することもできます。

データ モデルは、Power BI サービス、Azure Analysis Services (AAS)、または SQL Server Analysis Services (SSAS) のいずれかでホストされます。 この使用シナリオでは、Power BI サービスで XMLA エンドポイントを使用することに重点を置いています。

ヒント

多くのユーザーがサード パーティ製ツールを外部ツールと呼んでいます。 ただし、さまざまなツールの使い方には違いがあります。 Power BI Desktop のローカル データ モデルへの接続は、外部ツールという用語の最もリテラルな解釈です。 この高度なデータ モデル管理の使用シナリオでは、XMLA エンドポイントを使用したリモート データ モデル (Power BI サービスでホストされているセマンティック モデル) への接続に重点を置いています。 サードパーティ ツールのさまざまな使用方法の詳細については、この記事の後半で説明しています。

XML for Analysis (XMLA) プロトコルを使用して、データ モデルへの接続を実現できます。 XMLA プロトコルは、Microsoft を含む 25 を超えるベンダーによってサポートされている業界標準プロトコルです。 XMLA プロトコルに準拠しているすべてのツール (サード パーティ ツールを含む) では、Microsoft クライアント ライブラリを使用してデータ モデルのデータの読み取りと書き込みを行います。 接続は XMLA エンドポイントを使用して実現されます。これは、セマンティック モデル作成者が使用できる開発および管理機能を拡張するデータ モデルによって公開される API です。

Note

この高度なデータ モデル管理の使用シナリオは、コンテンツ管理とデプロイのシナリオの 1 つです。 セルフサービス使用シナリオの完全な一覧については、「Power BI 使用シナリオ」を参照してください。

簡潔にするために、コンテンツのコラボレーションと配信のシナリオに関するトピックで説明されている一部の側面については、この記事から除外されています。 全体については、先にこれらの記事を参照してください。

シナリオ図

この高度なデータ モデル管理の使用シナリオの焦点は、Tabular Editor を使用してデータ モデルを管理することです。 Power BI Premium で使用できる XMLA エンドポイントを使用して、データ モデルを Power BI サービスに公開できます。

ヒント

セルフサービス コンテンツの公開使用シナリオに慣れていない場合は、それを確認することが推奨されます。 高度なデータ モデル管理シナリオは、そのシナリオに基づいて作成されています。

Note

"セマンティック モデル" と "データ モデル" の用語は同じ意味で使われる場合があります。 一般に、Power BI サービスの観点からは "セマンティック モデル" と呼ばれます。 開発の観点からは、"データ モデル" (または略して "モデル") と呼ばれます。 この記事では、両方の用語が同じ意味を持っています。 同様に、セマンティック モデル作成者とデータ モデラーも同じ意味を持ちます。

次の図は、データ モデルの開発、管理、最適化に役立つ最も一般的なユーザー アクションとツールの概要を示しています。

Diagram shows advanced data model management, which is about empowering creators with advanced modeling and publishing capabilities. Items in the diagram are described in the table below.

ヒント

シナリオ図をプレゼンテーション、ドキュメント、またはブログの投稿に埋め込む場合、または壁のポスターとして印刷する場合は、シナリオ図をダウンロードすることをお勧めします。 スケーラブル ベクター グラフィックス (SVG) イメージであるため、品質を損なわずに拡大、縮小ができます。

シナリオ図は、次のユーザー アクション、ツール、および機能を示しています。

Item 説明
Item 1. モデル作成者は、Tabular Editor を使用してデータ モデルを開発します。 最初の設計作業 (Power Query 作業など) は、Tabular Editor に切り替える前に、Power BI Desktop で行われるのが一般的です (シナリオ図には示されていません)。
Item 2. データ モデルは、1 つ以上のデータ ソースからのデータに接続します。
Item 3. 一部のデータ ソースでは、プライベート組織ネットワーク内に存在するデータ更新のために、オンプレミス データ ゲートウェイ または VNet ゲートウェイが必要になる場合があります。
Item 4. データ モデルの開発は、Tabular Editor で行われます。 Power Query (M) スクリプトの編集がサポートされています。 モデル作成者は、C# スクリプトを使用して開発を促進できます。
Item 5. 準備ができたら、セマンティック モデル作成者は、ターゲット ワークスペースの XMLA エンドポイントを使用して、Tabular Editor から Power BI サービスにデータ モデルを公開します。
Item 6. データ モデルは、共有セマンティック モデルを格納して保護するための専用のワークスペースに公開されます。 XMLA エンドポイントを使用してワークスペースにアクセスできるのは、ワークスペース ライセンス モードFabric CapacityPremium CapacityPremium Per User、または Embedded に設定されている場合に限られます。
Item 7. レポート作成者は、共有セマンティック モデルへのライブ接続を使用してレポートを作成します。
Item 8. レポート作成者は、Power BI Desktop でレポートを開発します。 意図的にレポートをセマンティック モデルから分離する以外、コンテンツ作成者は一般的なレポート作成プロセスに従います。
Item 9. 準備ができると、レポート作成者は、Power BI Desktop ファイル (.pbix) または Power BI プロジェクト ファイル (.pbip) を Power BI サービスに公開します。
Item 10. レポートは、レポートとダッシュボードを格納して保護するための専用のワークスペースに公開されます。
Item 11. 公開されたレポートは、別のワークスペースに格納されている共有セマンティック モデルに接続されたままになります。 共有セマンティック モデルのすべての変更は、依存するすべてのレポートに影響します。
Item 12. サード パーティ ツールは、XMLA エンドポイントを使用して共有セマンティック モデルに対してクエリを実行できます。 DAX Studio、Fabric ノートブックからのセマンティック リンク、Windows PowerShell などの他の XMLA 準拠ツールを使用して、共有セマンティック モデルのクエリまたは更新を行うことができます。 Power BI Desktop、Excel、および Report Builder は、XMLA エンドポイントを使用して接続することもできます (シナリオ図には示されていません)。
Item 13. その他の Microsoft およびサード パーティ製ツールでは、XMLA エンドポイントを使ってセマンティック モデルを管理し、アプリケーション ライフサイクル管理を提供できます。 詳しくは、XMLA エンドポイント ベースのクライアント ツールに関する記事をご覧ください。
Item 14. Fabric 管理者は、テナント設定を管理して XMLA エンドポイントの使用を有効します。 管理者は、Fabric 容量、Premium 容量、Premium Per User 設定に対して XMLA エンドポイントを有効にする必要があります。
Item 15. Fabric 管理者は、Fabric ポータル内のアクティビティを監視します。

重要なポイント

高度なデータ モデル管理シナリオに関して重視すべき重要なポイントを以下に示します。

サード パーティ アプリケーションおよびツール

Enterprise BI チームは、Tabular Editor (シナリオ図に示され、次のトピックで説明される) などのクライアント ツールを一般的に使用して、一元化されたセマンティック モデルの管理に役立てます。 ただし、高度なモデリング機能を使用する必要があるセマンティック モデル作成者は、この使用シナリオで説明されている方法を利用できます。

サード パーティ アプリケーションを使用するには、いくつかの方法があります。

  • XMLA エンドポイントを使用してリモート データ モデルに接続する: 一部のサード パーティ ツールでは、Power BI サービス (または Analysis Services) 内のリモート データ モデルに直接接続できます。 XMLA エンドポイントに接続すると、すべての 表形式オブジェクト モデル (TOM) 操作がサポートされます。 このアプローチは、この使用シナリオの主要な焦点です。
  • Power BI Desktop のローカル データ モデルに接続する: 一部のサード パーティ ツールでは、Power BI Desktop で開かれているローカル データ モデルに接続できます (シナリオ図には示されていません)。 ただし、いくつかの制限があり、すべての外部ツール機能が正式にサポートされているわけではありません。
  • Power BI Desktop のテンプレート ファイルに接続する: 一部のサードパーティ ツールでは、Power BI Desktop テンプレート ファイル (.pbit) を使用して軽量な方法で機能を配布します (シナリオ図には示されていません)。

Tabular Editor

Tabular Editor は、シナリオ図に示されています。 これは、Power BI コミュニティによって広く採用されたサードパーティ製のツールです。 Tabular Editor を使用して表形式データ モデルを管理する利点には、次のようなものがあります。

  • Power BI Desktop でサポートされていないデータ モデル機能の設定: Tabular Editor には、オブジェクト レベル セキュリティ (OLS)、計算グループ、パースペクティブ、変換、パーティションを設定するためのインターフェイスが用意されています。
  • 同時モデル開発のサポート: Visual Studio と Analysis Services プロジェクトなどの Microsoft データ モデル開発ツールは、データ モデル定義全体を Model.bim ファイルに格納します。 この 1 つのファイルにより、開発者のチームが 1 つのデータ モデルで共同作業することが困難になる可能性があります。 Tabular Editor には、フォルダーのシリアル化と呼ばれる機能があります。 フォルダーのシリアル化によって、Model.bim ファイルが、整理されたフォルダー構造内の個別のオブジェクト固有のファイルに分解されます。 異なるデータ モデラーは、互いの作業を上書きするリスクが低い別々のファイルを操作できます。
  • ソース管理との統合: フォルダーのシリアル化により、ソース管理システムでデータ モデルの変更を簡単に検出できるため、ソースのマージと競合の解決が簡単になります。
  • データ モデルの品質と設計の向上: Tabular Editor はベスト プラクティス アナライザー (BPA) と統合されます。 BPA は、データ モデルの品質、一貫性、およびパフォーマンスを向上させる一連のカスタマイズ可能なルールによってデータ モデラーに役立ちます。 一連のベスト プラクティス ルール (Microsoft 提供) を GitHub からダウンロードできます。
  • データ モデルの開発時の生産性の向上: Tabular Editor インターフェイスは、バッチ編集の実行、デバッグ、およびデータ モデルの依存関係の表示に適しています。 Tabular Editor は、切断モードで動作するという点で Power BI Desktop と異なります。 切断モードでデータ モデルを変更し、編集のバッチとしてコミットできます。 このように作業することで、特に経験豊富なデータ モデラーにとって迅速に開発と検証を行うことができます。 C# スクリプトを作成し、マクロとして保存することもできます。 これらのスクリプトは、複数のデータ モデルの管理と同期の効率向上に役立つ可能性があります。

XMLA エンドポイント

XMLA エンドポイントでは XMLA プロトコルを使用して、表形式データ モデルのすべての機能が公開されます。これには、Power BI Desktop でサポートされていない一部のデータ モデリング操作も含まれます。 TOM API を使用して、データ モデルにプログラムで変更を加えることができます。

XMLA エンドポイントも接続を提供します。 セマンティック モデルに接続できるのは、ワークスペースのライセンス モードが Premium Per UserPremium Per Capacity、または Embedded に設定されている場合に限られます。 接続が確立されると、XMLA 準拠のツールで、次の 2 つの方法でデータ モデルを操作できます。

  • データとメタデータを書き込む: XMLA エンドポイントの読み取り/書き込み使用では、次が可能になります。
    • オブジェクト レベルのセキュリティ (OLS)、計算グループ、パースペクティブ、変換、パーティション管理など、Power BI Desktop でサポートされていないデータ モデリング機能。
    • より複雑なデプロイ。 たとえば、1 つの新しいメジャーのみを公開する部分デプロイやメタデータのみのデプロイなどです。
    • 非同期のセマンティック モデルの更新。 たとえば、1 つのテーブルまたはパーティションの更新です。
  • データとメタデータの読み取り: XMLA エンドポイントの読み取り専用の使用では、次が可能になります。
    • セマンティック モデルとクエリの監視、デバッグ、トレース。
    • サード パーティ データ レポート ツールで、共有セマンティック モデルから供給されたデータを視覚化できます。 この手法は、管理されたセルフサービス型の BI の利点と投資を拡大する優れた方法です。

警告

XMLA エンドポイントを使用してセマンティック モデルを変更または公開すると、Power BI Desktop ファイルとして Power BI サービスからそれをダウンロードできなくなります。

容量あたりの XMLA 設定

各 Power BI Premium 容量と Power BI Embedded 容量には、XMLA エンドポイントが読み取り専用か、読み取り/書き込みか、オフかを制御する設定があります。 この設定は、Power BI テナント内のすべての Premium Per User ワークスペースでも使用できます。 Power BI Desktop 以外のツールで管理するセマンティック モデルを含む容量ごとに、読み取り/書き込み XMLA アクセスを有効にする必要があります

ヒント

XMLA エンドポイント設定 (読み取り/書き込み、読み取り専用、またはオフ) は、特定の容量に割り当てられているすべてのワークスペースとセマンティック モデルに適用されます。 複数の容量を設定して、分散したり、容量ごとにコンテンツの管理方法をカスタマイズしたりできます。

XMLA テナント設定

XMLA エンドポイント設定に加えて、Power BI 管理者はテナント設定を使用して、オンプレミスのセマンティック モデルを使った XMLA エンドポイントと [Excel で分析] を許可する必要があります。 有効にすると、すべてのユーザーまたは特定のセキュリティ グループが XMLA エンドポイント機能を使用することを許可できます。

注意

すべての標準セキュリティおよびデータ保護機能が引き続き適用され、コンテンツを表示または編集できるユーザーを指定できます。

サードパーティ製のツール

Power BI Desktop では、ほとんどのセルフサービス コンテンツ作成者のエンド ツー エンドのニーズに対応できます。 ただし、サードパーティ ツールによって、他のエンタープライズ機能が提供されます。 このため、Tabular Editor などのサード パーティ ツールは、特に上級のコンテンツ作成者、開発者、IT プロフェッショナル向けに、Power BI コミュニティで普及してきました。

ヒント

このブログの投稿では、サード パーティ ツールを使用して、Power BI 製品チームが開発の優先順位を再評価し、Power BI プラットフォームの利用を広げ、ユーザー コミュニティからのより高度で多様な要求を満たせるようにする方法について説明します。

注意

一部のサード パーティ ツールでは、Tabular Editor 3 などの有料ライセンスが必要です。 その他のコミュニティ ツールは無料でオープンソース (Tabular Editor 2、DAX Studio、ALM Toolkit など) です。 コンテンツ作成者のコミュニティを適切にサポートできるように、各ツール、コスト、サポート モデルの機能を慎重に評価することが推奨されます。

データ モデル管理

この使用シナリオの主要な焦点は、Tabular Editor を使用してデータ モデルを管理するコンテンツ作成者にあります。 たまに行われるパーティション管理など、不定期の高度なデータ モデル管理要件の場合は、ツール (SQL Server Management Studio (SSMS) など) を使用することを選択できます。 .NET 開発者は、TOM API を使用して Power BI セマンティック モデルを作成および管理することもできます。

ヒント

データ モデル管理に XMLA エンドポイントを使用する場合は、大規模なセマンティック モデルのストレージ形式設定を有効にすることが推奨されます。 有効にすると、大規模なセマンティック モデルのストレージ形式によって、XMLA 書き込み操作のパフォーマンスが向上する可能性があります。

データ モデルとレポートの分離

この使用シナリオを成功させるには、レポートをデータ モデルから分離する必要があります。 この方法では、管理されたセルフサービス型の BI の使用シナリオで説明されているように、個別の Power BI Desktop ファイルを管理することになります。 同じ担当者がすべての開発を担当する場合でも、Tabular Editor にはレポート コンテンツの認識がないため、セマンティック モデルとレポートの分離が重要です。

ゲートウェイの設定

通常は、組織のプライベート ネットワークまたは仮想ネットワーク内に存在するデータ ソースにアクセスする際に、データ ゲートウェイが必要です。 データ モデルが Power BI Desktop サービスに公開されると、オンプレミス データ ゲートウェイが関連します。 ゲートウェイの 2 つの目的は、インポートされたデータを更新することと、ライブ接続または DirectQuery セマンティック モデル (シナリオ図では示されていない) を照会するレポートを表示することです。

Note

個人モードでゲートウェイを使用するよりも、標準モードで一元管理されたデータ ゲートウェイを使用する方が強く推奨されています。 標準モードのデータ ゲートウェイでは、(スケジュールされたデータ更新操作に加えて) ライブ接続と DirectQuery 操作もサポートされています。

詳しくは、「オンプレミス データ ゲートウェイ (標準モード)」をご覧ください。

システム監視

アクティビティ ログには、Power BI サービス内で発生したユーザー アクティビティが記録されます。 Power BI 管理者は、収集されたアクティビティ ログ データを使用して、監査を実行し、XMLA エンドポイント経由で接続するアクティビティを理解するのに役立てることができます。

Power BI 実装の決定に役立つその他の有益なシナリオについては、「Power BI 使用シナリオ」の記事を参照してください。