ストリーミング インジェストのスループット制限
手記
Time Series Insights サービスは、2024 年 7 月 7 日に廃止されます。 既存の環境をできるだけ早く別のソリューションに移行することを検討してください。 非推奨と移行の詳細については、
Azure Time Series Insights Gen2 ストリーミング データのイングレスの制限事項については、以下で説明します。
ヒント
「すべての制限」の包括的な一覧については、「Azure Time Series Insights Gen2 環境 を計画する」をお読みください。
環境ごとの制限事項
一般に、イングレス レートは、組織内のデバイスの数、イベントの発生頻度、および各イベントのサイズの要因と見なされます。
- イベントの発生頻度 × デバイスの数 × 各イベントのサイズ。
既定では、Azure Time Series Insights Gen2 環境ごとに、1秒あたり最大 1 メガバイト (MBps) の速度または 1000 個のイベントを格納する速度で
ヒント
- 取り込み速度が最大 2 MBps の環境サポートは、要求によって提供できます。
- Azure portal からサポート チケットを送信して、より高いスループットが必要な場合は、お問い合わせください。
例 1:
Contoso Shipping には、1 分あたり 3 回イベントを生成する 100,000 台のデバイスがあります。 イベントのサイズは 200 バイトです。 Azure Time Series Insights Gen2 イベント ソースとして 4 つのパーティションを持つ IoT Hub を使用しています。
- Azure Time Series Insights Gen2 環境のインジェスト率は、100,000 デバイス * 200 バイト/イベント * (3/60 イベント/秒) = 1 MBpsになります。
- バランスの取れたパーティションを想定すると、パーティションあたりのインジェスト率は 0.25 MBps になります。
- Contoso Shipping の取り込み率はスケール制限の範囲内です。
- Azure Time Series Insights Gen2 環境のインジェスト率は、100,000 デバイス * 200 バイト/イベント * (3/60 イベント/秒) = 1 MBpsになります。
例 2:
Contoso Fleet Analytics には、1 秒ごとにイベントを生成する 10,000 台のデバイスがあります。 パーティション数が 2 のイベント ハブを Azure Time Series Insights Gen2 イベント ソースとして使用しています。 イベントのサイズは 200 バイトです。
- 環境インジェスト率は次のようになります。10,000 デバイス * 200 バイト/イベント * 1 イベント/秒 = 2 MBps。
- バランスの取れたパーティションを想定すると、パーティションあたりのレートは 1 MBps になります。
- Contoso Fleet Analytics のインジェスト率は、環境とパーティションの制限を超えています。 Azure portal から Azure Time Series Insights Gen2 に要求を送信して環境のインジェスト率を高め、制限内に収まるパーティションを増やしたイベント ハブを作成できます。
- 環境インジェスト率は次のようになります。10,000 デバイス * 200 バイト/イベント * 1 イベント/秒 = 2 MBps。
ハブ パーティションとパーティションごとの制限
Azure Time Series Insights Gen2 環境を計画するときは、Azure Time Series Insights Gen2 に接続するイベント ソースの構成を検討することが重要です。 Azure IoT Hub と Event Hubs はどちらもパーティションを利用して、イベント処理の水平方向のスケーリングを有効にします。
パーティション は、ハブ内にあるイベントの順序付けされたシーケンスです。 パーティション数はハブの作成フェーズ中に設定され、変更できません。
Event Hubs のパーティション分割ベストプラクティスに関しては、「必要なパーティション数はいくつか?」をご確認ください。
手記
Azure Time Series Insights Gen2 で使用されるほとんどの IoT Hub には、4 つのパーティションのみが必要です。
Azure Time Series Insights Gen2 環境用の新しいハブを作成する場合でも、既存のハブを使用する場合でも、パーティションごとのインジェスト率を計算して、制限内にあるかどうかを判断する必要があります。
Azure Time Series Insights Gen2 には、現在、パーティションあたりの一般的な の制限は 0.5 MBps または 500 イベントで、1 秒あたりに格納。 データのモデル化方法に応じて、オブジェクトの配列を複数のイベントに分割できます。オブジェクトの配列が複数のイベントを生成するかどうかを確認する方法 。
IoT Hub 固有の考慮事項
IoT Hub でデバイスが作成されると、パーティションに永続的に割り当てられます。 そうすることで、IoT Hub はイベントの順序付けを保証できます (割り当てが変更されないため)。
固定パーティション割り当ては、IoT Hub ダウンストリームから送信されたデータを取り込む Azure Time Series Insights Gen2 インスタンスにも影響します。 複数のデバイスからのメッセージが同じゲートウェイ デバイス ID を使用してハブに転送されると、パーティションごとのスケール制限を超える可能性がある、同じパーティションに同時に到着する可能性があります。
影響:
- 1 つのパーティションで制限を超える継続的なインジェスト率が発生する場合、Azure Time Series Insights Gen2 では、IoT Hub データ保持期間を超える前にすべてのデバイス テレメトリが同期されない可能性があります。 その結果、インジェストの制限を一貫して超えると、送信されたデータが失われる可能性があります。
このような状況を軽減するには、次のベスト プラクティスをお勧めします。
- ソリューションをデプロイする前に、環境ごとおよびパーティションごとのインジェスト率を計算します。
- IoT Hub デバイスが可能な限り負荷分散されていることを確認します。
大事な
IoT Hub をイベント ソースとして使用する環境では、使用中のハブ デバイスの数を使用してインジェスト率を計算し、パーティションあたりのレートが 0.5 MBps の制限を下回っていることを確認します。
- 複数のイベントが同時に到着した場合でも、制限を超えるわけではありません。
ハブのスループットとパーティションの最適化の詳細については、次のリソースを参照してください。
次の手順
- データ ストレージ について読む