見出し画像

Microsoft Fabricを使用してストリーミングデータを可視化してみた

こんにちは!アバナード関西の中村です。

昨年にFabricがGAとなって以降、Fabricに興味を持たれた方も多いのではないでしょうか。

過去にもFabricに関する記事を投稿していますので、良かったらご覧ください。

今回は以下のような仕組みを作ってみました:

使用したものは以下になります:
M5StackCore2+ミニ心拍センサユニット(Heart Rate Unit)
Azure IoT Hub
Fabric Real-Time Analytics、 Power BI


では、早速、詳細を説明していきたいと思います。

①M5Core2でプログラム作成

手元にあったセンサーが「Heart Rate Unit」だったので、心拍数(「Heart Rate」)および血中酸素飽和度(「SpO2」)を5秒間隔で読み取るプログラムを作成してみました。

M5Core2とMini Heart Rate Unit (MAX30100) Pulse Oximeter 
Startボタンを押すと測定開始、測定値が画面に表示され、finishボタンで測定が停止する仕組み

②Azure IoT Hubでデータ受信

Azure IoT Hubでデバイス用のエンドポイントを作成し、①で送信したデータを受信できるようにします。

③FabricのReal-Time Analyticsを使用してセンサーデータを取得

FabricのReal-Time Analyticsを使用し、センサーデータを取得、取得したデータをデータベースへ格納します。

  • Fabric → Real-Time Analyticsを選択し、KQLデータベースを新規作成します。

Real-Time Analytics ホーム画面
  • 次に、EventStreamを新規作成し、ソースデータ(Azure IoT Hub)およびデータ格納先(KQLデータベース)を設定します。

Eventstream画面
左側がAuzre IoT Hub、右側がKQLデータベース
  • 設定後、KQLデータベース画面に戻り、KQLクエリセットを新規作成します。

KQLデータベース画面
KQLクエリセット作成画面

④Power BI レポートを作成する

最後にPower BIを使用してセンサーデータを可視化します。

  • KQLクエリセット作成画面またはKQLデータベース画面からPower BI レポート作成画面を開きます。

※こちらはまだプレビュー機能になります
  • レポートにビジュアルを追加します。

  • 最後にレポートを保存します

保存後、レポートをダウンロードし、最新のセンサーデータが表示されるよう編集を行います。
編集したレポートをPBISの既存のワークスペースへ発行します。

以上で準備は整いました。
それでは、M5Core2からデータを送信してみます。

データ送信開始

Fabric上でPower BIレポートを開きます。
最初は何も表示されていません。

数秒後、更新ボタンを押すと最新のデータがレポートに反映されていることが分かります。

更に数秒後、更新ボタンを再度押してみます。更にデータが取り込まれていることが分かります。

以上、
「Microsoft Fabricを使用してストリーミングデータを可視化してみた」
でした!

作ってみた感想として、ストリーミングデータの取得、格納、可視化までを実現するには、通常であれば複数のAzureサービスの作成(Azure Stream Analytics、Azure Data Explorer、Azure Storageなど)が必要なため作業が煩雑になりますが、全てを1つのプラットフォームで行えることはやはり便利だなと感じました。

次回はFabricでプレビュー機能として利用可能なAIサービスを触ってみたいなと思っています。

最後まで読んで頂きありがとうございました。

アバナード関西オフィス
中村 佳寿美(Kasumi Nakamura)

いいなと思ったら応援しよう!