多くのシナリオでは、デバイスから IoT Platform に送信されたデータを処理したり、ビジネスアプリケーションでデータを使用したりする必要があります。IoT Platform では、サーバー側サブスクリプション機能または Alibaba Cloud サービスへのデータ転送機能を使用して、デバイスデータを転送できます。このトピックでは、データ転送機能を適用できるシナリオと、機能の利点と欠点について説明します。ビジネス要件に基づいて機能を選択できます。
データ転送機能
機能 | 説明 | 参照資料 |
Alibaba Cloud サービスへのデータ転送 | 基本的なデータフィルタリングと処理をサポートしています。データ転送ルールを設定して、デバイスデータをフィルタリングおよび処理し、他の Alibaba Cloud サービスに転送できます。 | 詳細については、「データ転送ルールの設定」をご参照ください。 |
サーバー側サブスクリプション | Advanced Message Queuing Protocol(AMQP)または Simple Message Queue (formerly MNS) (SMQ) クライアントを使用してデバイスメッセージを取得できます。サーバー側サブスクリプション機能は使いやすく効率的です。ただし、この機能を使用してデバイスメッセージをフィルタリングおよび処理することはできません。 |
|
機能とソリューションの比較
機能比較
機能 | シナリオ | 利点 | 欠点 | 制限 |
Alibaba Cloud サービスへのデータ転送 |
|
| SQL 文を作成し、データ転送ルールを設定する必要があるため、この機能には技術的な専門知識が必要です。 | 制限の詳細については、「データ転送の制限」をご参照ください。 |
サーバー側サブスクリプション |
| この機能は使いやすく効率的です。 | この機能を使用してデータをフィルタリングおよび処理することはできません。 |
制限の詳細については、「サーバー側サブスクリプションの制限」をご参照ください。 |
さまざまな Alibaba Cloud サービスにデータが転送されるソリューションの比較
データの転送先 | シナリオ | 利点 | 欠点 | 参照資料 |
Message Queue for Apache RocketMQ | 多数のデバイスからのデータに対して詳細な処理を実行する場合は、デバイスデータを Message Queue for Apache RocketMQ に転送できます。 デバイスデータのスループットが 1,000 QPS を超える場合は、デバイスデータを Message Queue for Apache RocketMQ に転送することをお勧めします。 |
| インターネット経由で Alibaba Cloud サービスにアクセスする場合、Message Queue for Apache RocketMQ のパフォーマンスはそれほど良くありません。Enterprise Platinum Edition インスタンスは、Standard Edition インスタンスよりも優れたパフォーマンスを提供します。 |
|
Simple Message Queue (formerly MNS) (SMQ) | インターネット経由で Alibaba Cloud サービスにアクセスする場合に、デバイスデータに対して詳細な処理を実行する場合は、デバイスデータを MNS に転送できます。 デバイスデータのスループットが 1,000 QPS 未満の場合は、MNS にデータを転送することをお勧めします。 |
| ただし、MNS は Message Queue for Apache RocketMQ よりもわずかにパフォーマンスが劣ります。 |
|
ApsaraDB RDS | データを保存したいだけの場合は、デバイスデータを ApsaraDB RDS に転送できます。 | データはデータベースに書き込まれます。 | 該当なし |
|
時系列データベース (TSDB) | デバイスデータに基づいてビジネスを分析および監視する場合は、デバイスデータを TSDB に転送できます。 | データは TSDB に書き込まれます。 | 該当なし |
|
Tablestore | データを保存したいだけの場合は、デバイスデータを Tablestore に転送できます。 | データは Tablestore に書き込まれます。 | 該当なし |
|
Function Compute | デバイス開発プロセスを簡素化し、デバイスデータを柔軟に処理する場合は、デバイスデータを Function Compute に転送できます。 |
| Function Compute のコストは、他のソリューションよりもわずかに高くなります。 |
|
使用上の注意
サーバー側サブスクリプション
機能の説明 | 備考 |
サーバーは、AMQP SDK または Simple Message Queue (formerly MNS) (SMQ) SDK を使用して、製品のすべてのサブスクライブされたデバイスメッセージを受信できます。デバイスメッセージには、アップストリームメッセージ、ステータス変更、ライフサイクル変更、履歴 TSL データ、無線(OTA)アップデートのステータス、ゲートウェイとサブデバイスの接続、トポロジの変更に関するメッセージが含まれます。 |
|
Message Queue for Apache RocketMQ へのデータの転送
機能の説明 | 制限 | 備考 |
IoT Platform の指定されたトピックからのメッセージを Message Queue for Apache RocketMQ のトピックに転送できます。その後、Message Queue for Apache RocketMQ SDK を使用してメッセージを受信できます。
|
|
|
Simple Message Queue (formerly MNS) (SMQ)へのデータの転送
機能の説明 | 制限 | 備考 |
IoT Platform の指定されたトピックからのメッセージを MNS のトピックに転送できます。その後、MNS SDK を使用してこれらのメッセージを受信できます。インターネット経由で MNS にアクセスできます。デバイスメッセージのスループットが 1,000 QPS 未満の場合は、MNS を使用することをお勧めします。 | MNS トピックの制限の詳細については、「制限」をご参照ください。 | メッセージの転送に失敗した場合、ルールエンジンはメッセージの転送を再試行します。指定された回数の再試行に失敗した場合、メッセージは破棄されます。メッセージベースのサービスでは遅延が発生する可能性があります。データ損失または伝送遅延の影響を最小限に抑えるために、予防措置を講じることをお勧めします。 |
Function Compute へのデータの転送
機能の説明 | 制限 | 備考 |
IoT Platform の指定されたトピックからのメッセージを Function Compute に転送できます。その後、Function Compute を使用してこれらのメッセージを処理できます。Function Compute は、ビジネス開発を簡素化するフルマネージドサービスです。 | Function Compute の制限の詳細については、「制限」をご参照ください。 |
|