使用企業版實例時,可以配置數據流轉規則,將數據轉發到實例內的時序數據存儲中存儲。本文以物模型數據上報Topic為例,介紹流轉消息數據的完整流程。

前提條件

已創建數據源DataSource,并添加物模型數據上報Topic。具體步驟,請參見添加待流轉的數據源

背景信息

實例內的時序數據存儲結構,及其使用說明,請參見時序數據存儲管理

本文示例中,寫入時序數據庫的數據如下:

  • timestamp:使用函數timestamp()獲取設備上報數據的當前時間。
  • tag:使用函數deviceName()獲取設備名稱,寫入標簽{"deviceName":deviceName()}
  • metric:使用JSONPath方法,獲取設備上報的物模型屬性TemperatureHumidity的值,分別寫入溫、濕度的時序數據。

限制說明

  • 僅華東2(上海)、華北2(北京)、華南1(深圳)地域的企業版實例,支持實例內的時序數據存儲。
  • 只支持JSON格式數據轉發。
  • 轉發的消息中,除了配置的timestamptag值字段外,其他字段都將作為metric寫入時序數據存儲。metric的數據類型支持數值型、字符串,其他類型會導致寫入失敗。

創建數據目的

  1. 登錄物聯網平臺控制臺
  2. 實例概覽頁面,選擇目標環境,找到對應的實例,單擊實例ID或備注名稱。
    重要 目前僅開通企業版實例服務的地域下,執行此步驟。其他地域,請跳過此步驟。地域及實例的支持說明,請參見實例概述
    實例概覽
  3. 在左側導航欄,選擇消息轉發 > 云產品流轉
  4. 可選:云產品流轉頁面,單擊右上角體驗新版,進入新版功能頁面。
    說明 如果您已執行過此操作,再次進入云產品流轉頁面,會直接進入新版功能頁面。
  5. 單擊數據目的頁簽,然后單擊創建數據目的
  6. 創建數據目的對話框,輸入數據目的名稱,例如DataPurpose,按照以下參數說明,完成配置,然后單擊確定
    參數描述
    選擇操作選擇存儲到實例內的時序數據存儲中
    地域與您的物聯網平臺實例所在地域一致。
    metric數據類型選擇metric的數據類型。支持數值型字符串

    您可單擊幫助圖標幫助查看詳細說明。

配置并啟動解析器

  1. 創建解析器,例如DataParser。具體操作,請參見創建解析器
  2. 解析器詳情頁面,關聯數據源。
    1. 在配置向導的數據源下,單擊關聯數據源
    2. 在彈出的對話框中,單擊數據源下拉列表,選擇已創建的數據源DataSource,單擊確定
  3. 解析器詳情頁面,關聯數據目的。
    1. 單擊配置向導的數據目的,然后單擊數據目的列表右上方的關聯數據目的
    2. 在彈出的對話框中,單擊數據目的下拉列表,選擇已創建的數據目的DataPurpose,單擊確定
    3. 在數據目的列表,查看并保存數據目的ID,例如為1000
      后續解析腳本中,需使用此處的數據目的ID
  4. 解析器詳情頁面,單擊解析器
  5. 在腳本輸入框,輸入解析腳本。腳本編輯方法,請參見腳本示例
    函數參數說明,請參見函數列表
    //通過payload函數,獲取設備上報的消息內容,并按照JSON格式轉換。
    var data = payload("json");
    //篩選出上報的溫濕度值。
    var h = data.items.Humidity.value;
    var t = data.items.Temperature.value;
    //直接流轉物模型上報數據。
    writeTsdb(1000,timestamp(),"temperature", t , {"deviceName":deviceName()});
    writeTsdb(1000,timestamp(),"humidity", h , {"deviceName":deviceName()});
  6. 單擊調試,根據頁面提示,選擇產品和設備,輸入Topic和Payload數據,驗證腳本可執行。
    參數示例如下:示例

    運行結果如下,表示腳本執行成功。

    調試結果
  7. 單擊發布
  8. 回到云產品流轉頁面的解析器頁簽,單擊解析器DataParser對應的啟動按鈕,啟動解析器。

執行結果

時序數據將通過數據流轉,寫入實例內的時序數據存儲。您可以通過以下兩種方式進行查詢: