リアルタイムのダッシュ ボードの作成
Power BI ダッシュボードには、常時、Power BI サービスで認識されている最新のデータが表示されます。 そのため、ダッシュボードはリアルタイム監視のシナリオをサポートするのに最適です。
リアルタイム ダッシュボードをサポートしている Power BI データセットは、4 種類あります。 これらは次のとおりです。
- ストリーミング データセット
- プッシュ データセット
- ハイブリッド データセット
- PubNub ストリーミング データセット
リアルタイム ダッシュボードやその関連データセットを専用の容量に格納しなければならないという要件はありません。
ヒント
DirectQuery モデルを表す通常のデータセットにタイルが接続される場合は、ダッシュボードが 15 分ごとに更新されるという点に注意してください。 詳細については、ユニット 3 を参照してください。
ダッシュボードでは、レポートにはない面白い機能が提供されます。 ダッシュボード タイル (1 つの数値が表示されます) を設定して、データ値が特定のしきい値に達するとアラートが生成されるようにすることができます。 たとえば、Adventure Works の製造工場では、多数の IoT デバイスが設定されています。 Power BI ダッシュボードには、リアルタイムの製造メトリックが表示され、注意が必要なデバイスがある場合には、メンテナンス スタッフにそのことが通知されます。
ストリーミング データセットを使用する
ストリーミング データセットでは、約 1 秒の待機時間でリアルタイムのデータが提供されます。 リアルタイムのダッシュボード タイルでは、データがスムーズに更新されます。
ストリーミング データセットでは、最大 60 分間にわたって、データが一時キャッシュにキャッシュされます。 データ モデルがないため、ストリーミング データセットに接続する Power BI レポートを作成することはできません。 代わりに、ストリーミング タイルをダッシュボードに追加することで、ストリーミング データを視覚化できます。 ストリーミング タイルでは、ストリーミング データセットからのリアルタイムのデータ ソースが視覚化されます。 タイルには雷アイコンが表示されるので、ダッシュボード内で簡単に識別できます。
ストリーミング データセットは 1 つのテーブルを表すので、設計がシンプルです。 テーブル列は、テキスト、数値、または日付のいずれかになります。 ストリーミング データセットは、Power BI サービスで作成することも、Power BI REST API を使ってプログラムで作成することもできます。
開発者は、データセットのエンドポイントに JSON ドキュメントを送信することで、データセットへの行挿入をプログラムによって行うことができます。 エンドポイント URL には認証キーが含まれます。
ストリーミング データセットを使用してリアルタイム ダッシュボードを作成する方法を次に示します。
ストリーミング データセットを作成します。
ダッシュボードにストリーミング タイルを追加します。
プログラムによって、ストリーミング データセットに行を挿入します。
ただし、注意すべき重要な制限事項がいくつかあります。
データ保持期間が 60 分なので、その時間を超えて履歴を監視することはできません。
最大インジェスト率は 5 要求/秒です。
新規行の追加要求のパケット サイズは、15 KB を超えることはできません。
Power BI レポートからストリーミング データセットに接続することはできません。
ダッシュボードではフィルター処理がサポートされていないため、ストリーミング タイルをフィルター処理することはできません。
プッシュ データセットを使用する
プッシュ データセットでは、3 秒から 5 秒の待機時間でリアルタイム データが提供されます。 構造的には Power BI インポート データセットと密接に関連していますが、Power BI Desktop を使ってプッシュ データセットを作成することはできません。 プッシュ データセットには、複数のテーブル、リレーションシップ、メジャーを含めることができます。 ただし、階層やセキュリティ ロールなど、一部のモデル オブジェクトは含めることができません。
データセットの種類名が示すように、データはデータセット テーブルにプッシュされます。 データがプッシュされると、関連するダッシュボード タイルが Power BI によって直ちに更新されます。
プッシュ データセットは、Power BI サービスで (または後述するハイブリッド データセットとして) 作成することも、Power BI REST API を使ってプログラムで作成することもできます。 REST API 操作を行うためには、開発者はまず Microsoft Entra アクセス トークンを取得する必要があります。 開発者は、API を使用してデータ行を特定のテーブルにプッシュできます。 また、データセット スキーマを変更したり、テーブルからすべての行を削除したり、データセットを削除したりするために使用できる API 操作もあります。
さらに、Azure Stream Analytics (ASA) を使用してプッシュ データセットを作成し、そこにデータの行を出力することもできます。 ASA は複合的なイベント処理エンジンなので、数千の IoT デバイスからでも、大量の高速ストリーミング データをプッシュできます。 詳細については、Azure Stream Analytics からの Power BI 出力に関するページを参照してください。
ヒント
ASA を Azure Machine Learning (AML) と統合して、機械学習による予測を出力することもできます。 たとえば、ASA ジョブ出力によって、メンテナンスが必要な IoT デバイスを予測することも可能です。 メンテナンスが必要なときには通知が送られるように、Power BI ダッシュボード タイルを設定することもできます。 詳しくは、Azure Stream Analytics と Azure Machine Learning の統合に関する記事をご覧ください。
プッシュ データセットを使用してリアルタイム ダッシュボードを作成する方法を次に示します。
プッシュ データセットを作成します。
プッシュ データセットに接続する Power BI レポートを作成します。 任意の種類のビジュアル (カスタム ビジュアルを含む) を使用して、データセット データを視覚化します。
レポートのビジュアルをダッシュボードにピン留めします。
必要であれば、ダッシュボードの Q&A エクスペリエンスを使用して他のタイルを追加します。
プログラムによって、プッシュ データセット テーブルに行をプッシュします。
ただし、注意すべき重要な制限事項がいくつかあります。
データセットには、75 を超えるテーブルを含めることはできません。また、テーブルには 75 を超える列を含めることはできません。
basicFIFO アイテム保持ポリシーが有効になっている場合を除き、プッシュ データセット テーブルに、500 万行を超える行を格納することはできません。 有効になっている場合、テーブルには約 200,000 行のデータが格納され、古い行は Power BI によって新しい行に置き換えられます。
1 つの要求で 10,000 行を超える行をプッシュすることはできません。
テーブルに格納されているデータが 250,000 行を超えている場合を除き、インジェスト率は 1 時間あたり 100 万行に制限されます。 超えている場合、インジェスト率の制限は 1 時間あたり 120 行となります。
ハイブリッド データセットを使用する
ハイブリッド データセットでは、ストリーミング データセットとプッシュ データセットの両方が同時に使用されます。 これにより、両方の種類のデータセットの利点が提供されます。 ハイブリッド データセットを使用すると、ストリーミング タイルと通常のタイルのリアルタイム データを視覚化し、それらを Power BI レポートや Q&A からピン留めすることができます。 また、ハイブリッド データセットを使用すると、リアルタイム ソリューションで、60 分以上前に発生したアクティビティを監視および分析することができます。
Power BI サービスでストリーミング データセットを作成する場合は、[履歴データの解析] オプションを有効にすることで、データセットをハイブリッド データセットにすることができます。
PubNub ストリーミング データセットを使用する
PubNub ストリーミング データセットは、特殊な種類のストリーミング データセットです。 PubNub では、リアルタイム プラットフォームを確立する必要があります。 Power BI Web クライアントでは、PubNub SDK を使用して既存の PubNub データ ストリームが読み取られます。 ストリーミング データセットと同様、基になるデータ モデルがないため、Power BI レポート ビジュアルを使用することはできません。
代わりに、ダッシュボードのストリーミング タイルは PubNub ストリーミング データセットに接続されます。 これらのタイルは、リアルタイム データをすばやく表示できるように最適化されます。 Power BI は PubNub データ ストリームに直接接続されるので、データがプッシュされてからタイルが更新されるまでの待機時間はほとんどありません。
ストリーミング データセットとプッシュ データセットを比較する
次の表は、ストリーミング データセットとプッシュ データセットの機能を比較したものです。
機能 | ストリーミング データセット | プッシュ データセット |
---|---|---|
Latency | 最大 1 秒 | 3 秒から 5 秒 |
データの保持 | 約 60 分 | テーブルあたり 500 万行。basicFIFO アイテム保持ポリシーが設定されている場合は 200,000 行 |
最大インジェスト率 | 5 要求/秒、要求あたり 15 KB | 1 要求/秒、要求あたり 16 MB (最大 10,000 行) |
データ スループットの制限 | なし | 100 万行/時間、テーブルが 250,000 行を超える場合は 120 行/時間 |
データセット構造 | 1 つのテーブル | フィルター処理と集計をサポートした高度なデータ モデル |
ビジュアルの種類 | ストリーミング タイルのみ | レポート ビジュアル (カスタム ビジュアルを含む) |
アニメーションの更新 | スムーズで滑らか | 多少カクカクする |