次の方法で共有


Power BI 使用シナリオ: 高度なデータ準備

注意

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

データ準備 ("Extract (抽出)、Transform (変換)、Load (読み込み)" の頭字語を取った ETL と呼ばれることもあります) アクティビティには、多くの場合、大きな労力が求められます。 データの収集、クリーニング、結合、強化に要する時間、スキル、作業量は、ソース データの質と構造によって異なります。

一元化されたデータ準備に時間と労力を投資することは、次のことに役立ちます。

  • 再利用性を高め、データ準備にかける作業量から最大限の価値を引き出す。
  • 複数のチームに一貫性のあるデータを提供する機能を向上させる。
  • 他のコンテンツ作成者に求められる作業レベルを下げる。
  • スケールとパフォーマンスを実現する。

"高度なデータ準備" の使用シナリオは、セルフサービス データ準備シナリオでさらに詳しく説明されます。 高度なデータ準備は、多岐にわたる用途のために、さまざまなチームにまたがる複数のユーザーによってデータフローを再利用できるようにするためのものです。

データフローの目的別に整理された個別のワークスペースは、データフロー出力が複数のセマンティック モデル作成者に提供される場合に役立ちます。特に、それらが組織内の異なるチームにある場合です。 個別のワークスペースは、データフローを作成および管理するユーザーが使用するユーザーと異なる場合に、セキュリティ ロールを管理する場合にも役立ちます。

注意

高度なデータ準備シナリオは、データ準備シナリオの 2 番目のシナリオです。 このシナリオは、セルフサービス データ準備シナリオで説明されている、一元化されたデータフローで実行できる事柄を土台としてさらに構築していきます。

高度なデータ準備シナリオは、セルフサービス BI シナリオの 1 つです。 ただし、一元的に管理されるチーム メンバーは、マネージド セルフサービス BI シナリオで説明されているものと同様の方法で、この手法を使用できます。 セルフサービス シナリオの完全な一覧については、Power BI 使用シナリオに関する記事を参照してください。

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

シナリオ図

ヒント

セルフサービス データ準備使用シナリオに慣れていない場合は、そのシナリオを確認することをお勧めします。 高度なセルフサービス データ準備シナリオは、そのシナリオを踏まえて進めて行きます。

この高度なデータ準備シナリオは、次の点に焦点を合わせています。

  • 目的に基づいた個別のデータフローの使用: ステージング、変換、または最終。 "コンポーザブルな構成要素" を使用して、特定のユーザー要件をサポートするために、さまざまな組み合わせでより大きな再利用を実現することをお勧めします。 コンポーザブルな構成要素については、この記事の後半で説明します。
  • データフローの "作成者" またはデータフローの "コンシューマー" をサポートする個別のワークスペースの使用。 データフローを使用するデータ モデラーは、異なるチームに存在することもあれば、ユース ケースが異なることもあります。
  • リンク テーブル ("リンクされたエンティティ" とも呼ばれます)、計算テーブル ("計算エンティティ" とも呼ばれます)、拡張コンピューティング エンジンの使用。

Note

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

次の図は、高度なデータ準備シナリオをサポートする、最も一般的なユーザー アクションと Power BI コンポーネントの概要を示しています。

図は、データフローのリーチと再利用性の向上に関する高度なデータ準備を示しています。図の項目については、以下の表に説明があります。

ヒント

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

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

Item 説明
項目 1。 データフロー作成者は、データフロー内のテーブルのコレクションを開発します。 再利用を目的としたデータフローの場合は、作成者が組織の境界を越えてユーザーをサポートする一元管理されたチーム (IT、エンタープライズ BI、センター オブ エクセレンスなど) に属しているのが一般的です (必須ではありません)。
項目 2。 データフローは、1 つ以上のデータ ソースからデータに接続します。
項目 3。 一部のデータ ソースでは、プライベート組織ネットワーク内に存在するデータ更新のために、オンプレミス データ ゲートウェイ または VNet ゲートウェイが必要になる場合があります。 これらのゲートウェイは、Power Query Online でのデータフローの作成とデータフローの更新の両方に使用されます。
項目 4。 関係するすべてのワークスペースのライセンス モードが Fabric 容量Premium 容量Premium Per User、または Embedded に設定されています。 これらのライセンス モードでは、このシナリオで必要なワークスペース間でリンク テーブルと計算テーブルを使用できます。
項目 5。 データフロー作成者は、Power Query の Web ベース版である Power Query Online を使用してデータフローを開発します。
項目 6。 "ステージング データフロー" は、データフローの一元管理専用のワークスペースに作成されます。 ステージング データフローは、ソースから生データをそのままコピーします。 変換が適用されるとしても、ごくわずかです。
Item 7. "変換データフロー" ("クレンジングされたデータフロー" とも呼ばれます) は、同じワークスペースに作成されます。 ステージング データフローへのリンク テーブルを使用してデータを取得します。 計算テーブルには、データを準備、クレンジング、再整形する変換ステップが含まれます。
Item 8. データフロー作成者は、データフローの一元管理専用のワークスペース内のコンテンツを管理するアクセス権を持っています。
Item 9. 運用環境に対応したデータをデータ モデルに配信する、最終データフローへのアクセスを提供することを目的とした 1 つ以上の他のワークスペースが存在します。
Item 10. "最終データフロー" は、データ モデラーが使用できるワークスペースに作成されます。 変換データフローへのリンク テーブルを使用してデータを取得します。 計算テーブルは、ワークスペースのビューアーのロールが付与されたデータ モデラーが表示できる準備された出力を表します。
Item 11. セマンティック モデル作成者 (データフロー出力を使用するユーザー) は、最終データフローの出力を含むワークスペースにビューアーのアクセス権を持ちます。 データフロー作成者は、ワークスペース内のコンテンツを管理および発行するためのアクセス権も持っています (シナリオ図には示されていません)。
Item 12. Power BI Desktop でデータ モデルを開発する場合、セマンティック モデル作成者は "最終データフロー" をデータ ソースとして使います。 準備ができると、セマンティック モデル作成者は、データ モデルを含む Power BI Desktop ファイル (.pbix) を Power BI サービスに公開します (シナリオ図には示されていません)。
Item 13. Fabric 管理者は、管理ポータルで設定を管理します。
Item 14. 管理ポータルでは、Power BI 管理者が、Azure Data Lake Storage Gen2 (ADLS Gen2) アカウントにデータフロー データを格納するように Azure 接続を設定できます。 設定には、テナント レベルのストレージ アカウントの割り当てとワークスペース レベルのストレージ アクセス許可の有効化が含まれます。
Item 15. 既定で、データフローでは、Power BI サービスによって管理される内部ストレージを使用してデータが格納されます。 必要に応じて、データフローからのデータ出力を、組織の ADLS Gen2 アカウントに格納できます。
Item 16. Fabric 管理者は、Fabric ポータル内のアクティビティを監視します。

重要なポイント

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

データフロー

データフロー は、テーブルのコレクション ("エンティティ" とも呼ばれます) で構成されます。 各テーブルは、データが格納されたテーブルを読み込むのに必要なデータ準備手順を含むクエリによって定義されます。 データフローを作成する作業はすべて、Power Query Online で行われます。 Power Apps、Dynamics 365 Customer Insights、Power BI などの複数の製品でデータフローを作成できます。

注意

Power BI サービスの個人用ワークスペースにデータフローを作成することはできません。

データフローの種類

"コンポーザブルな構成要素" の使用は、システム コンポーネントの管理、展開、セキュリティ保護を可能にする設計原理の 1 つで、それらをさまざまな組み合わせで使用できます。 ベスト プラクティスは、目的に固有のモジュール型で自己完結型のデータフローを作成することです。 データの再利用をエンタープライズ規模で実現するのに役立ちます。 モジュール型のデータフローは、管理とテストもより簡単に行えます。

シナリオ図には、"ステージング データフロー"、"変換データフロー"、"最終データフロー" の 3 種類のデータフローが示されています。

ステージング データフロー

ステージング データフロー ("データ抽出データフロー" とも呼ばれます) は、ソースから生データをそのままコピーします。 最小限の変換で生データを抽出するということは、ダウンストリーム変換データフロー (次に説明) がステージング データフローをソースとして使用できることを意味します。 このモジュール性は、次の場合に役立ちます。

  • データ ソースへのアクセスは、狭い時間枠や少数のユーザーに制限されます。
  • 一時的な整合性は、すべてのダウンストリーム データフロー (および関連するセマンティック モデル) が、データ ソースから同時に抽出されたデータを確実に配信するために必要です。
  • ソース システムの制限や分析クエリをサポートする機能のために、データ ソースに送信されるクエリの数を減らす必要があります。
  • ソース データのコピーは、調整プロセスとデータ品質の検証に役立ちます。

変換データフロー

変換データフロー ("クレンジングされたデータフロー" とも呼ばれます) は、ステージング データフローに接続するリンク テーブルからのデータをソースとします。 ベスト プラクティスは、データ抽出プロセスから変換を分離することです。

変換データフローには、データの準備と再構築に必要なすべての変換手順が含まれます。 ただし、データフローが複数のユース ケースや目的に適するようにするため、このレイヤーでは再利用性に重点が置かれます。

最終データフロー

最終データフローは、準備された出力を表します。 ユース ケースと目的に基づいて、いくつかの追加の変換が発生する場合があります。 分析の場合、スター スキーマ テーブル (ディメンションまたはファクト) が最終データフローの推奨される設計になります。

計算テーブルは、ワークスペースのビューアーのロールが付与されたデータ モデラーに表示されます。 このテーブルの種類については、以下のデータフロー テーブルの種類に関するトピックで説明します。

注意

データ レイクには、多くの場合、ブロンズ、シルバー、ゴールドなどの "ゾーン" があります。 3 種類のデータフローは、同様の設計パターンを表します。 可能な限り最適なデータ アーキテクチャの決定を行うには、誰がデータを保持するか、データの予想される使用方法、およびデータにアクセスするユーザーが必要とするスキル レベルを考慮します。

データフローのワークスペース

すべてのデータフローを 1 つのワークスペースに作成すると、再利用の範囲が大幅に制限されます。 また、1 つのワークスペースを使用すると、チーム間で複数の種類のユーザーをサポートする場合や、異なるユース ケースで使用できるセキュリティ オプションも制限されます。 複数のワークスペースを使用することをお勧めします。 そうすることで、組織のさまざまな領域のセルフサービス作成者をサポートする必要がある場合に、柔軟性が向上します。

シナリオ図には、次の 2 種類のワークスペースが含まれています。

  • ワークスペース 1:一元的に管理されるデータフローが格納されます ("バックエンド ワークスペース" と呼ばれることもあります)。 同じユーザーによって管理されるため、これにはステージング データフローと変換データフローの両方が含まれています。 データフロー作成者は、多くの場合、IT、BI、センター オブ エクセレンスなど、一元化されたチームに属します。 ワークスペースの管理者メンバー、または共同作成者のいずれかのロールに割り当てる必要があります。
  • ワークスペース 2:最終データフローの出力を格納し、データのコンシューマーに配信します ("ユーザー ワークスペース" と呼ばれることもあります)。 多くの場合、セルフサービス アナリスト、パワー ユーザー、またはシチズン データ エンジニアがセマンティック モデル作成者になります。 最終データフローの出力を使用するだけで済むため、ワークスペースのビューアーのロールに割り当てる必要があります。 組織のさまざまな領域のセマンティック モデル作成者をサポートするために、ユース ケースとセキュリティのニーズに基づいて、このような多数のワークスペースを作成できます。

ヒント

セルフサービス データ準備の使用シナリオで説明されているように、セマンティック モデル作成者をサポートする方法を確認することをお勧めします。 セマンティック モデル作成者は Power BI Desktop 内で Power Query のすべての機能を引き続き使用できることを理解しておくことは重要です。 クエリ ステップを追加して、データフロー データをさらに変換したり、他のソースからのデータフロー出力をマージしたりすることもできます。

データフロー テーブルの種類

シナリオ図には、3 種類のデータフロー テーブル ("エンティティ" とも呼ばれます) が示されています。

  • 標準テーブル: データベースなどの外部データ ソースにクエリを実行します。 シナリオ図では、標準テーブルはステージング データフローに示されています。
  • リンク テーブル: 別のデータフローからテーブルを参照します。 リンク テーブルはデータを複製しません。 代わりに、複数の目的で標準テーブルを複数回再利用できます。 リンク テーブルは、元のデータフローからアクセス許可を継承するため、ワークスペース ビューアーには表示されません。 シナリオ図では、リンク テーブルが次の 2 か所に示されています。
    • ステージング データフローのデータにアクセスするための変換データフロー。
    • 変換データフローのデータにアクセスするための最終データフロー。
  • 計算テーブル: 別のデータフローをソースとして使用して、追加の計算を実行します。 計算テーブルを使用すると、個々のユース ケースで必要に応じて出力をカスタマイズできます。 シナリオ図では、計算テーブルが次の 2 か所に示されています。
    • 一般的な変換を実行するための変換データフロー。
    • セマンティック モデル作成者に出力を配信するための最終データフロー。 計算テーブルはデータを再び保持する (データフローの更新後) ため、データ モデラーは最終データフローの計算テーブルにアクセスできます。 この場合、データ モデラーにはワークスペースのビューアー ロールのアクセス権を付与する必要があります。

注意

セルフサービスからエンタープライズ対応にデータフローを変えることが可能な、多くの設計手法、パターン、ベスト プラクティスがあります。 また、ライセンス モードが Premium per user または Premium per capacity に設定されているワークスペース内のデータフローは、高度な機能の恩恵を受けることができます。 リンク テーブルと計算テーブル ("エンティティ" とも呼ばれます) は、データフローの再利用性を高めるのに不可欠な 2 つの高度な機能です。

拡張コンピューティング エンジン

拡張コンピューティング エンジンは、Power BI Premium で使用できる高度な機能です。

重要

この記事では、Power BI Premium またはその容量サブスクリプション (P SKU) に言及することがあります。 現在、Microsoft は購入オプションを統合し、容量あたりの Power BI Premium SKU を廃止していることに注意してください。 新規および既存のお客様は、代わりに Fabric 容量サブスクリプション (F SKU) の購入をご検討ください。

詳細については、「Power BI Premium ライセンスに関する重要な更新」と「Power BI Premium のよく寄せられる質問」を参照してください。

拡張コンピューティング エンジンにより、データフローを参照 (リンク先) するリンク テーブル (同じワークスペース内) のパフォーマンスが向上します。 拡張コンピューティング エンジンから最大限のメリットを得るには、次の手順を実行します。

  • ステージング データフローと変換データフローを分割します。
  • 同じワークスペースを使用して、ステージング データフローと変換データフローを格納します。
  • クエリ ステップの早い段階でクエリ フォールディングを実行できる複雑な操作を適用します。 折りたたみ可能な操作を優先すると、最適な更新パフォーマンスを実現するのに役立ちます。
  • 増分更新を使用して、更新期間とリソースの消費量を減らします。
  • 開発フェーズの早い段階で頻繁にテストを実行します。

データフローとセマンティック モデルの更新

データフローは、セマンティック モデルのデータ ソースです。 ほとんどの場合、複数のデータ更新スケジュールが含まれます。各データフローに 1 つと各セマンティック モデルに 1 つです。 また、セマンティック モデルからデータフローまで DirectQuery を使用することもできます。これは Power BI Premium と拡張コンピューティング エンジンを必要とします (シナリオ図には示されていません)。

Azure Data Lake Storage Gen2

ADLS Gen2 アカウントは、階層型名前空間が有効になっている特定の種類の Azure Storage アカウントです。 ADLS Gen2 には、分析ワークロードの処理において、パフォーマンス、管理、およびセキュリティのメリットがあります。 既定で、Power BI データフローでは、内部ストレージが使用されます。これは、Power BI サービスによって管理される組み込みのデータ レイク アカウントです。 必要に応じて、組織は、独自の ADLS Gen2 アカウントに接続することによって、独自のデータ レイクの持ち込みが可能になります。

独自のデータ レイクを使用するメリットを以下に示します。

  • ユーザー (またはプロセス) は、データ レイクに格納されているデータフロー データに直接アクセスできます。 これは、データフローの再利用が Power BI の範囲を超えて発生した場合に役に立ちます。 たとえば、Azure Data Factory はデータフロー データにアクセスできます。
  • その他のツールまたはシステムでは、データ レイク内のデータを管理できます。 その場合、Power BI は、データを管理するのではなく、使用します (シナリオ図には示されていません)。

リンク テーブルまたは計算テーブルを使用する場合は、各ワークスペースが同じ ADLS Gen2 ストレージ アカウントに割り当てられていることを確認します。

注意

ADLS Gen2 内のデータフロー データは、Power BI 固有のコンテナー内に格納されます。 このコンテナーは、セルフサービス データ準備の使用シナリオ図に示されています。

管理ポータルの設定

管理ポータルでは、次の 2 つの重要な設定を管理します。

ゲートウェイの設定

通常、プライベート組織ネットワークまたは仮想ネットワーク内に存在するデータ ソースに接続するには、オンプレミス データ ゲートウェイが必要です。

データ ゲートウェイは、次の場合に必要です。

  • プライベート組織データに接続する Power Query Online のデータフローを作成する。
  • プライベート組織データに接続するデータフローを更新する。

ヒント

データフローには、"標準モード" で一元化されたデータ ゲートウェイが必要です。 データフローを操作する場合、"個人用モード" のゲートウェイはサポートされません。

システム監視

アクティビティ ログには、Power BI サービス内で発生したユーザー アクティビティが記録されます。 Power BI 管理者は、収集されたアクティビティ ログ データを使用して、使用パターンや導入を理解する際に役立つ監査を実行できます。 アクティビティ ログは、ガバナンスの取り組み、セキュリティの監査、コンプライアンスの要件をサポートするためにも重要です。 高度なデータ準備シナリオでは、アクティビティ ログ データが、データフローの管理と使用を追跡するのに役立ちます。

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