こんにちは、Power BI サポート チームの山本です。
Power BI では、様々なタイプのデータセットを作成することができますが、その中でもデータを即時に集約・可視化することに特化したリアルタイム データセットという種類があります。
今回はリアルタイム データセットとはどのようなもので、どのように扱うことができるか、紹介していきます。
重要
本記事は弊社公式ドキュメントの公開情報を元に構成しておりますが、
本記事編集時点と実際の機能に相違がある場合がございます。
最新情報につきましては、参考情報として記載しておりますドキュメントをご確認ください。
目次
リアルタイム データセットとは
リアルタイム データセットとは、Power BI サービスで作成できるデータセットの種類であり、データソースからプッシュされたデータを、ダッシュボードを通じてリアルタイムに表示することができるデータセットです。
ヒント
リアルタイム データセットは Power BI サービスでのみ作成でき、Power BI Desktop では作成できません。
またリアルタイム データセットは、マイワークスペースや共有ワークスペースどちらでも作成することができ、通常のデータセットと同じライセンスモデルでご利用いただけます。
リアルタイム データセットには「プッシュ データセット」、「ストリーミング データセット」、「PubNub ストリーミング データセット」の3つの種類区分があります。
- プッシュ データセット
リアルタイム データセットにおいて、データを保管するデータベースを保持するデータセットであり、過去のデータを履歴として蓄積することが可能です。 - ストリーミング データセット
入力されたデータを保存できるデータベースが存在しませんが、データをデータベースに入力したりデータベースから読み取ったりする必要がないため、リアルタイムデータを素早く表示することに特化しています。 - PubNub ストリーミング データセット
PubNub SDK を使用して、既存の PubNub データ ストリームからデータを読み込むことができるストリーミング データセットです。
PubNub データストリームに直接接続し、データを可視化するため、Power BI にデータは保存されません。
さらにデータセットを作成する際に [履歴データの解析] を有効にすることで、プッシュ データセットとストリーミング データセット両方の機能を持つ プッシュ ストリーミング データセットを作成することが可能です。
- プッシュ ストリーミング データセット
これは、プッシュデータセットとしての履歴保持のメリットを持ちつつ、送信されるデータサイズが 15KB 以内の場合、ストリーミング データセットと同様にダッシュボードでのリアルタイム表示が可能という特徴があります。
以下にそれぞれのデータセットの特徴をまとめました。
プッシュ データセット | ストリーミング データセット | プッシュ ストリーミング データセット | PubNub ストリーミング データセット | |
---|---|---|---|---|
データの保存性 | 保持 | 1時間の一時キャッシュ | 保持 | 非保持 (PubNub から読み込み) |
表示方法 | レポート (ダッシュボードにピン止めも可) | ダッシュボードタイル (カスタム ストリーミング データとして接続) | レポート・ダッシュボードタイル (カスタム ストリーミング データとして接続) | ダッシュボードタイル (カスタム ストリーミング データとして接続) |
表示速度 | 〇 | ◎ | ◎ | ◎ |
ダッシュボード タイルの更新 | 通常更新 | リアルタイム更新 | 送信データサイズが 15KB 以内の場合、ダッシュボードのカスタム ストリーミング データとしてリアルタイム更新 | リアルタイム更新 |
送信データサイズの上限 | 16MB/送信 | 15KB/送信 | 16MB/送信 | PubNub 側に依存 |
スループットの上限 | 100万行/時間当たり | なし | なし(送信データサイズが 15KB を超過する場合、100万行/時間当たり) | PubNub 側に依存 |
ヒント
プッシュ データセットやプッシュ ストリーミング データセットで、レポートのライブページをダッシュボードにピン止めする場合、リアルタイムにデータは反映されず、一定秒数待つかレポート側での更新を確認する必要があります。
リアルタイム表示が必要な場合、ビジュアル自体のピン止めをご検討ください。
リアルタイム データセットを作ってみよう
リアルタイム データセットは、その特性上、温度や湿度などの環境データや工場のセンサーデータなど、常に測定できるデータを収集し、可視化することに向いていますが、手動でのデータ追加や Power Automate を使用してデータを送信したりすることも可能です。
今回はストリーミング データセットを使用して、PowerShell から REST API を実行する形でデータ送信を検証してみます。
PowerShell を使用したデータ送信の検証
- Power BI サービスのワークスペースにアクセスし、[+ 新規 > ストリーミング データセット] をクリックします。
ヒント
リアルタイム データセットの作成は、Power BI サービス (GUI) のほか、REST API を使用して CLI でも作成することが可能です。
- データのソースとして [API] をクリックし、[次へ] をクリックします。
- データセット名を入力し、データを格納するカラム名・データ型を決めます。
データ型は「テキスト」型、「数値」型、「日時」型から選択できます。
またストリーミング データセットとして作成するため [履歴データの解析] はオフ
のままにします。
最後に [作成] ボタンをクリックします。
- ストリーミング データセットが作成されました。
続けて、実際にデータを格納してみます。
[PowerShell] タブをクリックし、表示されているスクリプトをコピーしておきます。
警告
この方法で取得した URL または endpoint には、データセットの送信要求が自動的に承認される rowkey が付与されており、Azure AD 認証なしでデータの送信が可能となります。運用データをご利用いただく場合、URL や rowkey の取り扱いにはご注意ください。
- データを表示するためのダッシュボードを作成します。
ワークスペースの [+新規 > ダッシュボード] をクリックし、ダッシュボード名を入力します。
- [編集 > タイルの追加] をクリックし、リアルタイムデータの [カスタム ストリーミング データ] をクリックし、[次へ] をクリックします。
- 先ほど作成したデータセットを選択し、[次へ] をクリックします。
- 視覚化デザインでは、表示するビジュアルの種類を選ぶことができ、また表示する列や値を選ぶことが可能です。
ここでは、視覚化タイプは [カード] のまま、フィールドの [+ 値の追加] をクリックし、[Score] を選択します。
- タイルの詳細では、タイトルやサブタイトルなどの設定が可能です。
ここでは特に変更せず [適用] をクリックします。
- ダッシュボード上に score のカードビジュアル タイルが表示されました。
- 実際にストリーミング データセットにデータを追加します。
コピーしたスクリプトを PowerShell で実行します。
ダッシュボードを開いた画面と比べてみると、実行されたデータがすぐ反映されることが確認できます。
(ストリーミング データを表すカスタム ストリーミング データによるタイルの場合、稲妻マークがタイトルの横に表示されます。)
ヒント
PowerShell や API の実行が 401 (Unauthorized) エラーとなる場合、テナントでリソース キー認証がブロックされている可能性があります。
Power BI 管理者から テナント設定
にアクセスし、リソース キー認証のブロック
が有効化されていないかご確認ください。
[参考情報]
Power BI のリアルタイム ストリーミング
以上、本ブログが少しでも皆様のお役に立てますと幸いでございます。
アンケートご協力のお願い
Japan CSS Support Power BI Blog では、作成する記事やブログの品質向上を目的に、匿名回答でのアンケートを実施しております。
ユーザー様のご意見・ご要望を参考に今後もお役に立てるブログを目指してまいりますので、ぜひご協力いただけますと幸いでございます。
※ 所要時間は1分程度となります。
【ご協力のお願い】Microsoft Japan CSS Power BI Blog ご利用に関するアンケート
※本情報の内容(添付文書、リンク先などを含む)は、作成日時点でのものであり、予告なく変更される場合があります。