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秒間隔で読み取るプログラムを作成してみました。
②Azure IoT Hubでデータ受信
Azure IoT Hubでデバイス用のエンドポイントを作成し、①で送信したデータを受信できるようにします。
③FabricのReal-Time Analyticsを使用してセンサーデータを取得
FabricのReal-Time Analyticsを使用し、センサーデータを取得、取得したデータをデータベースへ格納します。
Fabric → Real-Time Analyticsを選択し、KQLデータベースを新規作成します。
次に、EventStreamを新規作成し、ソースデータ(Azure IoT Hub)およびデータ格納先(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)