ルールエンジンのデータ転送機能を使用して、Wide Column モデルの Tablestore(OTS)インスタンスにデータを転送できます。このトピックでは、データ転送プロセスについて説明します。この例では、Thing Specification Language(TSL)通信トピックをソース トピックとして使用します。
前提条件
Wide Column モデルの OTS インスタンスへのデータ転送をサポートするリージョンに、Wide Column モデルの OTS インスタンスにデータを転送できる IoT Platform インスタンスが作成されていること。詳細については、「リージョン」をご参照ください。
DataSource という名前のデータソースが作成され、TSL 通信トピックがデータソースに追加されていること。詳細については、「データソースを作成する」をご参照ください。
データを受信するために使用する OTS インスタンスとテーブルが作成されていること。詳細については、OTS ドキュメントをご参照ください。
重要Enterprise Edition の IoT Platform インスタンスを使用する場合、OTS インスタンスが存在するリージョンは、IoT Platform インスタンスが存在するリージョンと同じである必要があります。
背景情報
Wide Column モデル: このモデルは、Bigtable モデルまたは HBase モデルに似ています。このモデルは、メタデータやビッグデータ処理など、さまざまなシナリオに適しています。このモデルは、データバージョン、Time To Live(TTL)、プライマリキー列の自動インクリメント、条件付き更新、ローカルトランザクション、アトミックカウンター、フィルターなど、複数の機能をサポートしています。詳細については、「Wide Column モデル」をご参照ください。
使用上の注意
データ転送機能の新バージョンまたは旧バージョンを使用して、OTS にデータを転送できます。旧バージョンのデータ転送機能の使用方法の詳細については、「OTS にデータを転送する」をご参照ください。
データ転送先を作成する
- IoT Platform コンソール にログインします。
[概要] ページで、[すべての環境] をクリックします。[すべての環境] タブで、管理するインスタンスを見つけ、インスタンス ID またはインスタンス名をクリックします。
- 左側のナビゲーション ウィンドウで、 を選択します。
[データ転送] ページの右上隅にある [新しいバージョンに移動] をクリックして、新しいバージョンに移動します。
説明この手順を実行した場合、[メッセージ転送] > [データ転送] を選択すると、新しいバージョンの [データ転送] ページが表示されます。
[データ転送先] をクリックします。[データ転送先] タブで、[データ転送先を作成] をクリックします。
[データ転送先を作成] ダイアログ ボックスで、データ転送先名を入力します。この例では、DataPurpose を使用します。パラメータを設定し、[OK] をクリックします。
説明JSON 形式のデータのみ転送できます。

パラメータ
説明
操作
[データを Tablestore に保存] を選択します。
リージョン
OTS インスタンスが存在するリージョンを選択します。
インスタンス
OTS インスタンスを選択します。
[インスタンスの作成] をクリックして OTS コンソールに移動し、OTS インスタンスを作成できます。詳細については、OTS ドキュメントをご参照ください。
ストレージ クラス
[wide Column モデル] を選択します。
データ テーブル
データを受信するために使用する OTS テーブルを選択します。
[データ テーブルの作成] をクリックして OTS コンソールに移動し、OTS テーブルを作成できます。
ロール
IoT Platform に OTS へのデータ書き込みを承認します。
Resource Access Management(RAM)ロールがない場合は、[RAM ロールの作成] をクリックして RAM コンソールに移動し、RAM ロールを作成して、そのロールに権限を付与します。詳細については、「RAM ロールの作成」をご参照ください。
パーサーを設定して起動する
DataParser という名前のパーサーを作成します。詳細については、「パーサーを作成する」をご参照ください。
[パーサーの詳細] ページで、パーサーを作成済みのデータソースに関連付けます。
ウィザードの [データソース] ステップで、[データソースの関連付け] をクリックします。
表示されるダイアログ ボックスで、データソース[データソース] ドロップダウン リストから [OK] を選択し、 をクリックします。
[パーサーの詳細] ページで、パーサーを作成済みのデータ転送先に関連付けます。
ウィザードの [データ転送先] をクリックします。[データ転送先] セクションで、[データ転送先の関連付け] をクリックします。
表示されるダイアログ ボックスで、データ目的[データ転送先] ドロップダウン リストから [OK] を選択し、 をクリックします。
[データ転送先] セクションで、[データ転送先 ID] を表示して保存します。この例では、ID は [1000] です。
パーサースクリプトを記述する際は、[データ転送先 ID] を使用する必要があります。
[パーサーの詳細] ページで、[パーサースクリプト] をクリックします。
コードエディタで、スクリプトを入力します。スクリプトの変更方法の詳細については、「スクリプト構文」をご参照ください。
関数パラメータの詳細については、「関数」をご参照ください。
// payload() 関数を使用して、デバイスから送信されたデータを取得し、JSON 形式のデータに変換します。 var data = payload("json"); // 送信されたプロパティ値を取得します。 var h = data.items.Humidity.value; var t = data.items.Temperature.value; // deviceName プライマリキーと id プライマリキーをテーブルに追加します。writeTableStore() メソッドを使用して、column:value 形式で湿度と温度の値を列に書き込むことができます。 writeTableStore(1000, {"deviceName":deviceName(), "id":timestamp(), "temperature":t, "humidity":h});[デバッグ] をクリックします。表示されるダイアログ ボックスで、プロダクトとデバイスを選択し、トピックを指定して、ペイロードデータを入力し、スクリプトが想定どおりに実行されるかどうかを確認します。
次の図は、パラメータを示しています。

次の結果は、スクリプトが想定どおりに実行されたことを示しています。

[公開] をクリックします。
[パーサー][データ転送] ページの データパーサー[開始] タブに移動します。 パーサーを見つけ、[アクション] 列の をクリックしてパーサーを起動します。
データがプッシュされた後、OTS コンソールにログインします。データを受信するために使用するテーブルの [データのクエリ] タブに移動し、指定されたデータが受信されているかどうかを確認します。
