ナビゲーションをスキップする

Azure IoT Hub でデバイス メッセージをルーティングするための強力で直感的な方法

9月 24, 2018 に投稿済み

Program Manager, Azure IoT

Azure IoT Hub メッセージ ルーティングは IoT ソリューション開発を簡略化し、自動化された、スケーラブルで、信頼性の高い方法で、デバイスからクラウド サービスにメッセージを送信できます。また、ルーティング クエリを使用すると、カスタマイズされたフィルターを適用して、サービスに接続するエンドポイントに最も関連性の高いデータのみを送信できます。

メッセージ ルーティングに関する新たな機能を発表する予定です。この機能を使用すると、これまでも使用可能であったメッセージ プロパティとメッセージ本文に関してだけでなく、デバイス ツインのタグとプロパティに関してクエリを実行できます。さらに、メッセージ ルーティング用の新しい Azure portal エクスペリエンスでは、ルートとエンドポイント間のナビゲーションが簡単になり、エクスペリエンスがさらに向上しています。

IoT ソリューションには大量のデバイスのテレメトリ データを送信する処理が関係し、急激に負荷が過剰になる可能性があります。IoT Hub の新しいメッセージ ルーティング機能は、高度なフィルタリングの実装、大量のデータのリアルタイム送信などにより、デバイスからのメッセージのルートを自動的にセットアップする機能がいっそう強力かつ簡単になりました。たとえば、モーターや冷却装置などのさまざまなデバイスの種類に基づきデータを各種サービスに送信し、使用状況と失敗率を計算するというコネクテッド ファクトリ ソリューションを開発している場合について考慮します。デバイス ツインのタグとプロパティを利用して、デバイスの種類を特定し、さまざまなエンドポイントへのカスタマイズ済みルートを作成できます。これにより、最も関連性の高いデータのみを送信できるので、次のサービスにおけるフィルター処理と後処理を減らすことができます。

IoT Hub メッセージ ルーティングを使用すると、お客様はデバイスのテレメトリ メッセージ、デバイスのライフサイクル イベント、デバイス ツインの変更を Azure Blob Storage、Event Hubs、Service Bus キュー、Service Bus トピックに送信できます。IoT Hub は、各種プロトコルにおける相互運用性を確保するためにすべての device-to-cloud メッセージ用の共通形式を定義します。すべてのユーザーのシステム プロパティが追加され、メッセージのコンテンツが識別されます。またユーザーは選択したアプリケーション プロパティをメッセージに追加することもできます。

しくみは次のとおりです。

メッセージ システム プロパティのクエリには、前に「$」シンボルを付ける必要があります。アプリケーション プロパティのクエリは、「$」シンボルがない名前で使用されます。メッセージ本文のクエリには前に「$body」を付ける必要があります。同様に、デバイス ツインのクエリには前に「$twin」が付いていなければなりません。クエリ式では、ツイン タグまたはプロパティ参照を、本文参照、メッセージ システム プロパティ、メッセージ アプリケーション プロパティ参照と組み合わせることができます。メッセージ本文が JSON ではない場合、メッセージ ルーティングはメッセージのルーティングを行えますが、クエリはメッセージ プロパティとデバイス ツインに限定されます。クエリのサンプルを確認し、詳細を参照するには、ルーティング クエリ構文をご覧ください。

この機能は、IoT Hub が利用できるすべてのリージョンで使用可能です。皆様がこの機能をお試しいただき、ビジネスのためにさらに効率的な IoT ソリューションを構築されるのを楽しみにしております。作業を開始するには、このチュートリアルをお試しください。

プレビューの使用に関する皆様の感想をお聞きし、フィードバックをお送りいただけることをお待ちしています。IoT Hub メッセージ ルーティングで他の機能もお望みですか。Azure IoT User Voice フォーラムから皆様の提案を今後もお送りください。