Azure

IoTHubとIoT オンライン シミュレーターで始めるStream Analytics

はじめに

IoTHubとStream AnalyticsとIoT オンライン シミュレーターを使った方法が紹介されているので試していきたいと思います。

構成

方法はドキュメントに記載されています。

クイックスタート: Azure portal を使用して Stream Analytics ジョブを作成する | Microsoft Docs
クイックスタート: Azure portal を使用して Stream Analytics ジョブを作成する | Microsoft Docs

このクイック スタートでは、Stream Analytic ジョブの作成、入力と出力の構成、およびクエリの定義によって作業を開始する方法を示します。

docs.microsoft.com

構成は単純ですIoT機器からデータを受け取ったIoTHubがStream Analyticsに流します。Stream Analyticsはblobに保存します。

IoTHubの作成

IoTHubを作成ます。

IoTHub名はドキュメント通りだと作成できないので変更が必要です。一意の値である必要があるようです。

領域はIoT機器の近い場所が良いと思います。

 

パブリックアクセスです。

 

今回はFreeで確認します。本番環境ではサイジングが必要になるでしょう。作成します。

作成完了、デバイスを開きます。追加します。

デバイスIDも分かりやすい名前を付けます。

作成したデバイスを開き、接続文字列をコピーしておきます。

ストレージアカウントの作成

ストレージアカウントを作成します。同じリージョンで作成するのが良いでしょう。

作成後にコンテナーを作成します。任意の名前です。

 

Stream Analytics ジョブの作成

Stream Analytics ジョブを作成します。

  • ジョブ名:任意
  • 場所:IoTHubと同じ場所

作成後はIoTHubを接続します。

作成されてStream Analyticsジョブから入力を開きます。ストリーム入力の追加でIoTHubを選択します。

 

入力のエイリアスは任意の名前を付けます。

IoTHubは上記で作成したものを選択します。

次に出力先を設定します。blobになります。

出力を開き、追加からBlob Storageを選択します。

出力エイリアスは任意の名前を付けます。

ストレージアカウント、コンテナーは上記で作成したものを選択します。

次に27℃以上だと出力するようにクエリを設定します。クエリの保存を忘れずに行います。

SELECT
    *
INTO
    BlobOutput
FROM
    IoTHubInput
WHERE
    Temperature > 27

 

以上ですべての設定は完了です。

次にIoT機器から温度を含んだ情報を送信します。

Raspberry Pi Azure IoTオンラインシミュレーター

AzureではRaspberry Pi Azure IoTオンラインシミュレーターが用意されています。

いちいちRaspberry PiなどのIoT機器を用意する必要がありません。

Raspberry Pi Azure IoT Web Simulator
Raspberry Pi Azure IoT Web Simulator

This is a Web simulator for Raspberry Pi as client and Azure IoT Hub as service. You can enjoy Azure ...

azure-samples.github.io

 

15行目を編集します。

const connectionString = '[Your IoT hub device connection string]';

[Your IoT hub device connection string]に上記でコピーしたIoTHubの接続文字列を入力します。

編集後に右下のRunをクリックし開始します。

Stream Analyticsジョブの開始

Stream Analyticsジョブを開き上部の開始をクリックします。

以上でIoT機器からの情報を収集しBlobに保存が開始します。

確認

blobに保存されているか確認します。27度以上のものが保存ざれていることが確認できます。

以上ですべての工程は完了です。

まとめ

あまり利用することのないStream Analyticsの紹介をしました。IoT機器を利用して情報収集を行い分析を行う場合に使うなどStream系なもので使うので覚えておくとよいと思います。

-Azure
-,