ルールエンジンのデータ転送機能を使用して、データを Tablestore に転送できます。
前提条件
-
Enterprise Edition インスタンスにデバイスが接続済みであること。詳細については、「デバイスの接続とデータレポート」をご参照ください。
-
Tablestore がアクティベート済みであること。詳細については、「Tablestore のアクティベート」をご参照ください。
データテーブルの作成
-
Tablestore コンソールにログインします。上部メニューで、[日本 (東京)] リージョンを選択します。
重要Enterprise EditionのIoT Platformインスタンスを使用する場合、OTSインスタンスが存在するリージョンは、IoT Platformインスタンスが存在するリージョンと同じである必要があります。
-
[インスタンスの作成] をクリックします。「インスタンスの作成」ダイアログボックスで、インスタンス名 (例: IoTDataStore) を入力し、他のパラメーターはデフォルト値のままにして、[OK] をクリックします。
詳細については、「Tablestore インスタンスの作成」をご参照ください。
-
IoTDataStore インスタンスの [インスタンス詳細] タブで、[テーブルの作成] をクリックします。データテーブルに iot_data などの名前を入力し、2つのプライマリキー deviceName (String) と timestamp (Integer) を追加します。詳細については、「データテーブルの作成」をご参照ください。
データ転送ルールの設定
-
[IoT テスト環境] インスタンスの左側のナビゲーションペインで、 を選択します。
[データ転送] ページで、[ルールの作成] をクリックします。
重要最新バージョンのデータ転送ページが表示されたら、ページの右上隅にある [前のバージョンに戻る] をクリックします。 以前のバージョンのデータ転送ページが表示されたら、[ルールの作成] をクリックします。
-
[データ転送ルールの作成] ダイアログボックスで、たとえば ThermostatDataForwarding などのルール名を入力し、データ形式を [JSON] に設定し、[OK] をクリックします。
-
ルールを作成すると、[データ転送ルール] ページが表示されます。このページで、メッセージデータを処理するための SQL 文を記述し、データ転送先を設定します。
このページは[データ処理]と[データ転送]の 2 つのセクションで構成されており、[データ処理]セクションにはルールクエリ文と[SQL の作成]ボタンが、[データ転送]セクションにはデータの転送先の一覧と[操作の追加]ボタンがあります。
-
[SQL の作成] をクリックします。表示されたダイアログボックスで、SELECT 句のフィールドとして、トピックデータソースのデータ型に [TSL Data Reporting]、製品に [Home Thermostat]、デバイスに [Device1]、モジュールに [Default Module]、トピックに [thing/event/property/post] を選択し、[OK] をクリックします。
-
[データ転送] セクションで、[操作の追加] をクリックして、iot_data データテーブルをデータ転送先として設定します。 詳細については、「Tablestore にデータを転送する」をご参照ください。
[操作の編集] ダイアログボックスで、[操作] に [データを Table Store に転送] を、[リージョン] に [中国 (上海)] を、[インスタンス] に [IoTDataStore] を、[データテーブル] に [iot_data] を選択します。 [プライマリキー] で、deviceName キーの値を [${deviceName}] に、timestamp キーの値を [${time}] に設定します。 [ロール] に [AliyunIOTAccessingOTSRole] を選択し、[OK] をクリックします。
[操作の編集] ダイアログボックスで、次のパラメーターを設定します:
[操作]: データを Tablestore に転送
[地域]: 日本 (東京)
[インスタンス]: IoTDataStore
[データテーブル]:iot_data
[プライマリキー]: deviceName, 値:
${deviceName}[主キー]:タイムスタンプ、値:
${time}[ロール]:AliyunIOTAccessingOTSRole
-
-
設定を完了したら、[データ転送] ページに戻り、作成したルールを見つけてアクション列の [開始] をクリックすると、設定に従ってルールがデータを転送します。
仮想デバイスがデータを報告した後、Tablestore の iot_data データテーブルでリアルタイムにデータを表示できます。
データテーブルには、deviceName (プライマリキー)、timestamp (プライマリキー)、humidity、および temperature の 4 つのフィールドが含まれています。各行は、デバイスから報告された温度と湿度の測定値を表します。
また、Enterprise Edition インスタンスの Log Service で完全な転送ログを表示して、転送の問題をトラブルシューティングすることもできます。
[Cloud Run ログ] タブで、対応する [製品] を選択してログエントリを表示します。 ログエントリには、時刻、 TraceID、MessageId、 メッセージ内容、 DeviceName、 ビジネスタイプ、アクション、内容、ステータスなどの情報が含まれます。 ルールエンジンや TSL などの [ビジネスタイプ] でフィルタリングすることで、データフローを追跡できます。 [ステータス] が 200 の場合は、データ処理が成功したことを示します。