日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

數據轉發到云原生數據庫PolarDB MySQL版

阿里云的PolarDB MySQL版是阿里巴巴自研的云原生HTAP數據庫,基于云原生架構、計算存儲分離、軟硬件一體化設計,為用戶提供具備超高彈性和性能、高可用和高可靠保障、高性價比的數據庫服務。物聯網平臺可以將設備的指定Topic消息,先經過解析腳本處理和過濾,再轉發到云原生數據庫PolarDB MySQL版數據表中存儲。本文以物模型數據上報Topic為例,介紹消息轉發至PolarDB MySQL版數據表的完整流程。

工作原理

image

云產品流轉將設備的Topic消息轉發到PolarDB MySQL版集群下數據庫的數據表中存儲,使用PolarDB MySQL版的數據庫服務。詳細內容,請參見PolarDB MySQL版

在上圖中:

應用場景

對設備存儲數據庫有如下要求的物聯網應用場景:

  • 大中型企業相關設備的生產數據庫。

  • 對設備數據安全性要求非常高的核心數據庫。

使用限制

  • 物聯網平臺實例及所在地域支持將數據轉發到云原生數據庫PolarDB MySQL版。支持的地域詳細信息,請參見各地域功能說明

  • 僅支持同地域轉發。例如:華東2(上海)的物聯網平臺實例數據只能轉發到華東2(上海)的PolarDB數據表中。

  • 僅支持轉發到專有網絡VPC下的PolarDB MySQL版集群中。

  • 僅支持PolarDB的MySQL 5.6、MySQL 5.7、MySQL 8.0.1和MySQL 8.0.2四種引擎類型。

  • 僅新版云產品流轉功能支持將數據流轉到云原生數據庫PolarDB MySQL版中。

  • 物聯網平臺實例下設備消息轉發的更多使用限制,請參見使用限制

前提條件

  • 已創建數據源具體步驟,請參見添加待流轉的數據源

    本文以物模型數據上報Topic為例,創建數據源DataSource并添加物模型數據上報Topic。

  • 已在您的物聯網平臺實例所在地域,創建專有網絡下的PolarDB MySQL版集群,并創建數據庫和數據表,以及創建管理數據庫的賬號和密碼。PolarDB MySQL實例的使用方法,請參見快速入門

背景信息

轉發的數據目的配置完成后,會自動完成以下配置,實現設備數據通過物聯網平臺的消息轉發功能流轉到云原生數據庫PolarDB MySQL版。

  • 物聯網平臺占用PolarDB MySQL版集群所在虛擬交換機的2個IP地址;將虛擬交換機的IPv4網段配置到PolarDB MySQL版集群的白名單中。

  • 在PolarDB MySQL版集群所在的VPC網絡下創建托管安全組,安全組名稱默認以sg-nsm-開頭。

創建數據目的

  1. 登錄物聯網平臺控制臺

  2. 實例概覽頁簽的全部環境下,找到對應的實例,單擊實例卡片。

  3. 在左側導航欄,選擇消息轉發 > 云產品流轉

  4. 云產品流轉頁面,單擊右上角體驗新版,進入新版功能頁面。

    說明

    如果您已執行過此操作,再次進入云產品流轉頁面,會直接進入新版功能頁面。

  5. 單擊數據目的頁簽,然后單擊創建數據目的

  6. 創建數據目的對話框,輸入數據目的名稱,例如DataPurpose,按照以下參數說明,完成配置,然后單擊確定

    參數

    描述

    選擇操作

    選擇存儲到云原生數據庫(PolarDB MySQL版)中

    授權

    單擊授權,系統創建角色和授權策略,授權物聯網平臺將數據寫入PolarDB MySQL版數據表。詳細說明,請參見數據轉發到云原生數據庫PolarDB MySQL版的服務關聯角色

    說明

    若已授權,忽略此操作。

    地域

    固定與您的物聯網平臺實例所在地域一致。

    PolarDB集群

    選擇數據轉發目的為您已創建的專有網絡(VPC)下的PolarDB集群。

    您可單擊創建集群,新增PolarDB MySQL版集群。具體操作,請參見購買集群

    數據庫

    選擇PolarDB MySQL版集群下接收數據的目標數據庫名稱。

    創建數據庫的具體操作,請參見創建數據庫

    賬號

    輸入管理數據庫的賬號和密碼。賬號應具有該數據庫的讀寫權限,否則消息轉發無法將數據寫入PolarDB MySQL版數據庫。

    數據庫管理賬號和密碼說明,請參見創建和管理數據庫賬號

    密碼

    表名

    輸入目標數據庫下接收數據的數據表名稱。消息轉發會把數據寫入這張表中。

配置并啟動解析器

  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;
    // PolarDB MySQL表結構為id[自增主鍵] deviceName、temperature、humidity、time,在writePolarDB方法中,可以按column:value的形式,將值寫入對應的列。
    // 設置溫度值大于30時觸發規則。
    if (t > 30) { 
        writePolarDB(1000, {"deviceName":deviceName(), "temperature":t, "time":timestamp(), "humidity":h});  
    }
  6. 單擊調試,根據頁面提示,選擇產品和設備,輸入Topic和Payload數據,驗證腳本可執行。

    調試參數示例:

    調試示例

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

    action: 
        transmit to polardb[destinationId=1000], data:{"temperature":38,"humidity":25,"time":1700631588609,"deviceName":"devce****"}
    variables: 
        data : {"deviceType":"CustomCategory","iotId":"JCp9***","requestId":"16269*******7","checkFailedData":{},"productKey":"ic*******z","gmtCreate":1626948134445,"deviceName":"devce****","items":{"temperature":{"time":1626948134319,"value":38},"humidity":{"time":1626948134319,"value":25}}}
        t : 38
        h : 25
  7. 單擊發布

  8. 回到云產品流轉頁面的解析器頁簽,單擊解析器DataParser對應的操作列的啟動,啟動解析器。

后續操作

  • 您可在物聯網平臺控制臺對應實例下監控運維 > 日志服務頁面的云端運行日志頁簽,查看設備到云消息云產品流轉的運行日志。具體操作,請參見云端運行日志

  • 您可登錄PolarDB控制臺,連接數據庫查詢存儲的物聯網平臺數據。具體操作,請參見連接數據庫集群

相關文檔

  • 設備接入物聯網平臺上報數據的操作指導,請參見設備接入引導

  • 您可在實例詳情頁面,查看消息轉發TPS可用資源,確保設備消息能正常轉發到PolarDB MySQL版存儲。具體操作,請參見查看實例信息和運行數據。如果可用資源不足,可進行升配。具體內容,請參見升配

  • 使用PolarDB MySQL版存儲數據時,費用、集群訪問(讀寫分離)、性能和容量、穩定性和存儲空間等常見問題,請參見PolarDB MySQL版的常見問題和解答