物联网平台设备数据同步到RDS & MySQL数据库(保姆级教学)
Posted 糖沁
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了物联网平台设备数据同步到RDS & MySQL数据库(保姆级教学)相关的知识,希望对你有一定的参考价值。
物联网平台设备数据同步到RDS & mysql数据库(保姆级教学)
目标实现:
阿里云物联网平台某设备实时数据(MQTT协议上云)同步存储到RDS MySQL数据库
实现步骤:
注意:以下实现默认MQTT上云已经完成,可实时上传数据
1、物联网平台接收到数据通过规则引擎转发至DataHub。
2、在DataHub中通过DataConnector将数据同步到RDS MySQL数据库中
细节!!!拿来吧你!
1、创建RDS MySQL数据库表
这步的依据是什么?
答:物联网平台的设备有什么数据?以我这边的情况为例,有甲醛、PM2.5。
请思考:是不是现在新建一张数据表,表中创建两个就可以字段,分别是HCHO(甲醛)、PM25(PM2.5)就可以了呢?
答:表结构实际上有点问题,因为这样的话那主键未明确
,后面还要查出来看的,不单单是存着就好,于是这里决定再加一个字段id作为主键(或许也可考虑复合主键,),并设置自动递增,因为原设备上云数据中没有对应id的值
,然后可以再加两个字段create_time 和 devicename
,create_time 和 devicename的值
可通过阿里云内置函数
获取,后面会讲到。
至此,第一步就完成了
2、创建DataHub项目
DataHub通俗理解:它是一条线,把两个阿里云的产品连起来,通过一些转发规则完成产品之间的数据流转(我瞎扯的可能不准确,具体可看官网文档)
1、开通服务(有个梗:这游戏求你下一个吧,不用钱好吧)
2、创建项目
点击新建项目,随便填,我这里填项目名alice_air
3、新建Topic
Topic通俗理解:一个话题,物联网平台后面需要去订阅这个话题,把数据同步到Datahub
4、同步到RDS MySQL数据库
注意:我这里先配完DataHub同步数据库,后配置物联网同步到DataHub,当然你也可以先配物联网同步到DataHub,看看DataHub有没有
实时流量显示
点击查看
点击同步
选择RDS & MySQL
新建Connector
(配置对应的MySQL Host,数据库、数据表)
至此,第二步也完成了。
3、规则引擎
这步是为了把物联网平台数据转发到DataHub
1、云产品流转
2、创建规则
3、选择json(我这边设备数据是通过json格式上云)
4、编写SQL
5、转发数据到DataHub,添加规则
注意
:${key},key是什么,key就是编写SQL
时,as xxx
的那个xxx
items.HCHO.value as HCHO ==> ${HCHO}
最后确定
,完美撒花?NO,注意,记得启动
,这下应该完美撒花了。
经过以上步骤,如果数据库并没有新增任何数据记录,可一步一步排查问题。
1、先确定设备数据是不是在实时上传
,在物联网平台查看设备物模型数据
2、看看DataHub有没显示实时流量
数据,没有的话说明云产品流转
这块没弄好
3、如果DataHub有数据流量显示了,说明很可能是配置MySQL数据库
有问题,看看账号密码,host地址,和网络类型等。
以上是关于物联网平台设备数据同步到RDS & MySQL数据库(保姆级教学)的主要内容,如果未能解决你的问题,请参考以下文章
如何把自己的设备从一个物联网云平台整体迁移到另一个物联网平台?