処理されたデータを Table Store に転送するようにルールエンジンを設定することができます。

始める前に

転送を設定する前に、「ルールの作成と設定」の手順に従い、データをフィルタリングする SQL スクリプトを作成します。

手順

  1. [データ転送] の横にある [操作の追加] をクリックして、[操作の追加] ページを開きます。 [Table Storeに保存] をクリックします 。
  2. ページの指示に従ってパラメーターを設定します。
    • 操作の選択: Table Store を選択します。
    • リージョン、インスタンス、およびデータシート: データの転送先テーブルの各フィールドを指定します。
    • プライマリキーフィールド: Table Store 内のすべてのテーブルにはプライマリキー列があります。 データの転送先テーブルを選択すると、コンソールはこのテーブルのプライマリキーフィールドを自動的に読み取ります。 プライマリキーフィールドの値を設定する必要があります。
    • ロール: Table Store にデータを書き込む権限を IoT Platform に与えます。 まず、Table Store にデータを書き込む権限を含むロールを作成します。 そして、このロールをルールエンジンに割り当てます。 これでルールエンジンは、処理されたデータをテーブルに書き込むことができるようになります。

次のタスク

JSON のデータレコード {"device":"bike","product":"xxx","data2":[{...}]} は、SQL を使用して抽出されます。 この JSON データレコードは、 Table Store に格納する必要があります。 転送先テーブルのプライマリキー列は、deviceproduct、および id です 。

設定と効果:

  1. コンソールで、プライマリキーフィールド "device" の値を ${device} に設定します。 転送ルールをトリガーするメッセージが到着すると、JSON データレコード内の device フィールドの値が、転送先テーブルの device 列に保存されます。 前述の設定と効果は、プライマリキーフィールド "product" の場合も同様です。
    ${} はエスケープ文字です。 このエスケープ文字を使用しない場合、プライマリキーフィールドの値として指定する定数は、プライマリキー列に保存されます。
  2. 転送ルールは、自動インクリメント列を自動的に検出します。 自動インクリメント列には、新しいレコードがテーブルに挿入されるたびに、自動的に一意の値が割り当てられます。 この列の値は編集できません。
  3. IoT Platform は、JSON データレコードに含まれる、プライマリキーではないフィールドの値を自動的に解析し、転送先テーブルの対応する列を作成することができます 。 この例では、data1 と data2 という 2 つの列が自動的に作成され、対応する値が各列に保存されます。
    現在、トップレベルの JSON 構造のみを解析できます。 入れ子になった JSON 構造の解析はサポートされていません。 したがって、この例では、入れ子になった構造を持つ JSON オブジェクト全体が data2 列に保存されます。 入れ子になった JSON 構造体はそれ以上解析されません。 入れ子になった要素を保存するための追加の列は作成されません。