ソリューションに適した IoT Hub のレベルとサイズを選択する

すべての IoT ソリューションは異なるので、Azure IoT Hub には価格とスケールに基づいて複数のオプションが用意されています。 この記事は、IoT Hub のニーズを評価するときに役立ちます。 IoT Hub の各レベルの価格については、「Azure IoT Hub の価格」をご覧ください。

ソリューションに適した IoT Hub のレベルを決定するには、次の 2 つの質問に答えてください。

どのような機能を使う予定か?

Azure IoT Hub には Basic と Standard の 2 つのレベルがあり、サポートする機能が異なります。 IoT ソリューションが主にデバイスからデータを収集して集中的に分析するものである場合は、おそらく Basic レベルが適しています。 さらに高度な構成を使って、IoT デバイスをリモート制御したり、ワークロードの一部をデバイス自体に分散させたりしたい場合は、Standard レベルを検討する必要があります。

各レベルに含まれる機能について詳しくは、後の「Basic レベルと Standard レベル」をご覧ください。

移動するデータの 1 日当たりの量はどれくらいか?

各 IoT Hub レベルは、1 日に処理できるデータ スループットの量に基づいて、3 つのサイズで利用できます。 これらのサイズは、1、2、3 という数字で示されます。 サイズによってベースラインの 1 日あたりのメッセージの制限が決まります。その後、ユニットを追加して IoT ハブをスケールアウトできます。 たとえば、レベル 1 の IoT ハブの各ユニットは、1 日に 400,000 件のメッセージを処理できます。 5 ユニットのレベル 1 IoT ハブでは、1 日に 2,000,000 メッセージを処理できます。 または、各ユニットに 1 日に 6,000,000 メッセージの制限があるレベル 2 のハブに移動します。

メッセージの要件と制限の決定の詳細については、「レベルのエディションとユニット」に続行してください。

機能を選択する: Basic レベルと Standard レベル

Basic レベルの IoT Hub では利用可能な機能のサブセットが有効になり、デバイスからクラウドへの単方向通信だけが必要な IoT ソリューション用です。 IoT Hub の Standard レベルではすべての機能が有効になり、双方向通信機能を利用する IoT ソリューション向けです。 Basic レベルでは機能のサブセットが有効になり、デバイスからクラウドへの単方向通信だけが必要な IoT ソリューションを対象にしています。

提供されるセキュリティ機能と認証機能は、どちらのレベルも同じです。

機能 Basic レベル Standard レベル
device-to-cloud テレメトリ はい はい
デバイスごとの ID はい はい
メッセージ ルーティングメッセージ エンリッチメントEvent Grid の統合 はい はい
HTTP、AMQP、MQTT プロトコル はい はい
Device Provisioning Service はい はい
監視と診断 はい はい
cloud-to-device メッセージング はい
デバイス ツインモジュール ツイン、およびデバイス管理 はい
デバイス ストリーム (プレビュー) はい
Azure IoT Edge はい
IoT プラグ アンド プレイ はい

IoT Hub では、テストおよび評価のための Free レベルも提供されています。 Free レベルは、機能的には Standard レベルと同じですが、メッセージングの許容量が限られます。 Free レベルから Basic レベルまたは Standard レベルにアップグレードすることはできません。

IoT Hub の REST API

IoT Hub の Basic レベルと Standard レベルでサポートされる機能が違うことは、一部の API 呼び出しが Basic レベルの IoT ハブでは動作しないことを意味します。 次の表では、利用できる API を示します。

API Basic レベル Standard レベル
デバイスの作成または更新デバイスの取得デバイスの削除 はい はい
モジュールの作成または更新モジュールの取得モジュールの削除 はい はい
レジストリの統計情報の取得 はい はい
サービスの統計情報の取得 はい はい
IoT Hub にクエリを実行する はい はい
ファイル アップロード SAS URI の作成 はい はい
デバイス バインド通知の受け取り はい はい
デバイス イベントの送信 はい はい
モジュール イベントの送信 AMQP と MQTT のみ AMQP と MQTT のみ
ファイル アップロード ステータスの更新 はい はい
デバイスの一括操作 はい (IoT Edge 機能を除く) はい
インポート エクスポート ジョブの作成インポート エクスポート ジョブの取得インポート エクスポート ジョブの取り消し はい はい
デバイス ツインの取得デバイス ツインの更新 はい
モジュール ツインの更新モジュール ツインの更新 はい
デバイス メソッドの呼び出し はい
デバイス バインド通知の破棄 はい
デバイス バインド通知の完了 はい
ジョブの作成ジョブの取得ジョブの取り消し はい
ジョブのクエリ はい

メジャー グループ

Azure IoT Hub には、パーティションを含む Azure Event Hubs の多数のコア コンポーネントが含まれています。 IoT ハブのイベント ストリームには、さまざまな IoT デバイスによって報告される受信テレメトリ データが入力されます。 イベント ストリームに対する読み取りと書き込みが同時に行われるときに発生する競合を削減するために、イベント ストリームのパーティション分割が使用されます。

パーティション数の制限は IoT ハブの作成時に選択され、変更することはできません。 Basic レベルの IoT ハブと Standard レベルの IoT ハブの device-to-cloud パーティションの上限は 32 です。 ほとんどの IoT ハブでは、4 つのパーティションのみが必要となります。 パーティション数を決定する方法の詳細については、Azure Event Hubs の FAQ にある「パーティションはいくつ必要ですか?」を参照してください。

レベルのアップグレード

IoT ハブの作成後に、既存の操作を中断することなく、Basic レベルから Standard レベルにアップグレードできます。 Standard レベルから Basic レベルへのダウングレードはできません。 詳しくは、「IoT Hub のアップグレード方法」をご覧ください。

Basic レベルから Standard レベルに移行しても、パーティション構成は変わりません。

Note

Free レベルでは、Basic または Standard レベルへのアップグレードはサポートされません。

サイズを選択する: エディションとユニット

ソリューションに最適な機能を提供するレベルを選択したら、ソリューションに最適なデータ容量を提供するサイズを決定します。

各 IoT Hub レベルは、1 日に処理できるデータ スループットの量に基づいて、3 つのサイズで利用できます。 これらのサイズは、1、2、3 という数字で示されます。

階層サイズのペアは、エディションとして表されます。 サイズ 2 の Basic レベル IoT ハブは、エディション B2 になります。 同様に、サイズ 3 の Standard レベル IoT ハブは、エディション S3 になります。 価格を含む詳細については、「IoT Hub のエディション」を参照してください

IoT ハブのエディションを選択したら、ユニットの数を増やすことで、そのメッセージング容量を複数にできます。

各 IoT ハブに使用できるエディションは 1 つだけです。 たとえば、S1 の複数のユニットを含む IoT ハブを作成できます。 たとえば、S1 と B3 または S1 と S2 など、異なるエディションのユニットが混在する IoT Hub を作成することはできません。

次の表に、各サイズにおけるデバイスからクラウドへのメッセージの容量を示します。

サイズ ユニットごとの 1 日あたりのメッセージ数 ユニットごとの 1 日あたりのデータ数
1 400,000 1.5 GB
2 6,000,000 22.8 GB
3 300,000,000 1144.4 GB

サイズ 1 または 2 の IoT ハブの場合は最大 200 ユニット、サイズ 3 の IoT ハブの場合は最大 10 ユニットを購入できます。 1 日あたりのメッセージの制限と調整の制限は、すべてのユニットの合計容量に基づいています。 たとえば、サイズ 2 を 1 ユニット購入すると、サイズ 1 の 15 ユニットと同じ 1 日あたりのメッセージ制限が適用されます。

各 IoT Hub エディションの容量と制限の詳細については、「IoT Hub のクォータと調整」を参照してください。

エディションをアップグレードまたはダウングレードする

IoT ハブを作成した後、既存の操作を中断することなく、次のことを行えます。

  • エディション内で使用可能なユニット数の変更 (たとえば、B1 のユニット数を 1 から 3 にアップグレードするなど)
  • レベル内のエディション間でのアップグレードまたはダウングレード (B1 から B2 へのアップグレードなど)

詳しくは、「IoT Hub のアップグレード方法」をご覧ください。

自動スケール

お使いの IoT ハブで許可されているメッセージの上限に到達しそうな場合、自動的にスケーリングするための手順を使用して、同じ IoT Hub レベル内で IoT Hub ユニットを増やすことができます。

次のステップ