Stream Analytics ノー コード エディターから生成された Power BI データセットを使用してリアルタイム ダッシュボードを構築する
この記事では、ノー コード エディターを使用して Stream Analytics ジョブを簡単に作成し、処理されたデータを Power BI データセットに生成する方法について説明します。 Event Hubs から継続的に読み取り、データを処理して Power BI データセットに出力して、リアルタイムの Power BI ダッシュボードを構築します。
前提条件
- Azure Event Hubs リソースはパブリックにアクセスできる必要があり、ファイアウォールの内側に置いたり、Azure Virtual Network でセキュリティ保護したりすることはできません
- 既存の Power BI ワークスペースがあり、そこにデータセットを作成するアクセス許可が必要です。
- Event Hubs のデータは、JSON、CSV、または Avro 形式でシリアル化される必要があります。
選択したデータで Power BI データセットを作成する Stream Analytics ジョブを開発する
Azure portal で、Azure Event Hubs インスタンスを見つけて選択します。
[機能]>[データの処理] の順に選択し、[Power BI を使用して凖リアルタイム データ ダッシュボードを作成する] カードで [開始] を選択します。
Stream Analytics の名前を入力して、[作成] を選択します。
[Event Hubs] ウィンドウでデータの種類として [シリアル化] を指定し、ジョブが Event Hubs に接続するのに使用する [認証方法] を指定します。 次に、 [接続](Connect) を選択します。
接続が正常に確立されて、Event Hubs のインスタンスにデータ ストリームが流れるようになると、次の 2 つのことがすぐに表示されます。
[管理] タイルを選びます。 [フィールドの管理] 構成パネルで、出力するフィールドを選択します。 すべてのフィールドを追加する場合は、[すべてのフィールドを追加] を選択します。
[Power BI] タイルを選択します。 [Power BI] 構成パネルで、必要なパラメーターを入力して接続します。
- データセット: これは、Azure Stream Analytics ジョブの出力データが書き込まれる Power BI の宛先です。
- テーブル: これは、出力データが送信されるデータセット内のテーブル名です。
必要に応じて、[静的プレビューの取得] または [静的プレビューの更新] を選んで、イベント ハブに取り込まれるデータのプレビューを表示します。
ジョブを開始するには、次のものを指定します。
[開始] を選ぶと、2 分以内にジョブの実行が開始され、タブ セクションにメトリックが表示されます。
[Stream Analytics ジョブ] タブの [データの処理] セクションでジョブを確認することもできます。必要に応じて、[メトリックを開く] を選択して監視するか、停止して再起動します。
Power BI でリアルタイム ダッシュボードを構築する
これで、Azure Stream Analytics ジョブが実行され、構成した Power BI データセットのテーブルにデータが継続的に書き込まれます。 Power BI ワークスペースでリアルタイム ダッシュボードを作成できるようになりました。
- 上記の Power BI 出力タイルで構成した Power BI ワークスペースに移動し、左上隅にある [+ 新規] を選択してから、[ダッシュボード] を選択して新しいダッシュボードに名前を付けます。
- 新しいダッシュボードが作成されると、新しいダッシュボードが表示されます。 [編集] を選択し、上部のメニュー バーで [+ タイルの追加] を選択します。 右側のペインが開きます。 [カスタム ストリーミング データ] を選択して、次のページに移動します。
- Power BI ノードで構成したストリーミング データセット ( nocode-pbi-demo-xujx など) を選択し、次のページに移動します。
- タイルの詳細を入力し、次の手順に従ってタイルの構成を完了します。
- その後、そのサイズを調整し、次の例に示すように継続的に更新されたダッシュボードを取得できます。
Event Hubs の geo レプリケーション機能を使用する場合の考慮事項
最近、Azure Event Hubs では geo レプリケーション機能のプレビューがローンチされました。 この機能は、Azure Event Hubs の geo ディザスター リカバリー 機能とは異なります。
フェールオーバーの種類が [強制] で、レプリケーションの整合性が [非同期] の場合、Stream Analytics ジョブでは、Azure Event Hubs 出力への出力が 1 回のみ行われることは保証されません。
フェールオーバー期間中および Event Hubs によるスロットリング中に、プライマリとセカンダリの間のレプリケーションのラグが最大構成ラグに達すると、Event Hubs を出力とするプロデューサーである Azure Stream Analytics がジョブでウォーターマーク遅延を検出する場合があります。
Event Hubs を入力とするコンシューマーである Azure Stream Analytics が、フェールオーバー期間中にウォーターマーク遅延を検出し、フェールオーバーの完了後、データをスキップするか、重複データを検出する場合があります。
これらの注意事項により、Event Hubs のフェールオーバーが完了した直後に、適切な開始時刻で Stream Analytics ジョブを再起動することをお勧めします。 また、Event Hubs の geo レプリケーション機能はパブリック プレビュー段階であるため、現時点で運用環境の Stream Analytics ジョブにこのパターンを使用することはお勧めしません。 現在の Stream Analytics の動作は、Event Hubs の geo レプリケーション機能が一般公開される前に改善され、Stream Analytics の運用ジョブで使用できるようになります。
次のステップ
Azure Stream Analytics の詳細と、作成したジョブを監視する方法を理解してください。