[Azure] Event Hubs / Stream Analyticsを使ってみた

Event Hubの作成

Event Hubの作成手順はざっくり以下。

 Event Hubにイベントを送信する際は送信デバイス側で以下を指定します。

Stream Analyticsの作成

Stream Analytics Jobを作成します。そのあとInput、Output、Query等の設定を行います。

最初Input、Outputの設定だけ実施し、データがOutputに流れませんでしたが、Queryの内容を今回定義したInput、Outputの名前に修正することで解決しました。データを加工しない場合もQueryを編集する必要があるのですね。

f:id:nakamoz:20190129123355p:plain

 

f:id:nakamoz:20190129125741p:plain

 

f:id:nakamoz:20190129125745p:plain

 

実際にデータを流してみる

以下で紹介されているサンプルプログラムを使ってPCからデータをEventHubに流しました。

リアルタイム イベントのデータの異常を視覚化する - Azure Event Hubs | Microsoft Docs

データの流れは以下です。今回はデータ加工は一切していません。
PC → Event Hub → Stream Analytics →SQL Database

Stream AnalyticsからSQL Databaseに出力される際に、JSONデータのメンバをDBのカラムに対応付けしてくれます。そのためそれに応じたテーブル定義を作成しておく必要があります。

なお、投入したJSONのテストデータに加えてEventHubで追加されるメンバがあるようです。(以下図、右3カラム)

f:id:nakamoz:20190129125818p:plain