ITPub博客

首页 > 云计算 > 公有云实践 > IoT 设备数据的存储、解析和价值挖掘实践——实践类

IoT 设备数据的存储、解析和价值挖掘实践——实践类

公有云实践 作者:AIoT2688 时间:2023-02-15 16:26:07 0 删除 编辑

业务背景
随着物联网技术的快速发展成熟,物联网设备从一开始的传感器类感知设备向智能化设备升级,传统企业也开始将自身设备产生的数据作为企业的重要资产进行管理,如何稳妥的存储和备份这些设备数据资产,并在关键问题出现时进行回溯,以及通过对这些设备数据的深度分析来帮助企业实现经营提效变的尤为关键。
本实践以一个道路交通场景下设备运营管理的真实需求为背景来介绍如何使用物联网平台的数据服务完成对设备数据的存储、备份、预处理和深度分析,以达到企业经营提效的效果。

业务问题

设备数据量大,存储成本过高

当企业的设备规模达到十万甚至百万以上时,设备实时产生的数据量会非常大,如果企业有对数据长周期存储和追溯的需求,产生的数据存储成本会非常高,同时设备数据量大了以后也会对数据读写的性能和稳定性造成影响,带来额外的资源和运维成本。

设备种类繁多,数据格式不统一
道路交通场景下的设备种类丰富多样,如一体化锥桶、一体化快速封路器、收费站主动预警灯、车载预警LED屏等,不同类型的设备可能是由不同的生产商提供或者由不同的技术团队开发的,设备上报的数据格式千差万别难以统一,存储也无法实现标准化、结构化的存储,为企业后续的数据处理、分析和治理带来了很大的困扰。

缺少数据分析,价值难以挖掘
企业将设备数据采集上来以后,缺少专业的分析工具,无法对设备数据进行多维度的聚合分析,隐藏在数据中的业务价值也就难以挖掘,导致设备数据上云反而徒增了成本,没有起到经营提效的效果,也没有真正实现企业进行设备智能化升级的业务目标。

最佳实践

数据存储/备份 - 实现设备数据冷热分离,大幅降低存储成本

阿里云物联网平台提供了设备数据存储和备份的完整解决方案,减少了数据流转和中间存储带来的额外成本开销和架构复杂度。同时基于阿里云强大成熟的云计算底座,支持可扩展的海量数据存储、超高的数据压缩比和冷热数据存储分离等能力,可极大降低数据存储和备份的成本。

操作步骤概要
1进入物联网平台控制台,开通企业版实例,和数据服务相关的是如下4个规格。
控制台地址:

购买企业版实例
十
企业版实例提供更丰富的功能,更好的数据隔
离,更高的SLA保障.
快速入门
购买实例


IOPS
100
热数据存储IOPS
250000IOPS
500000IOPS
100IOPS
1000000IOPS
750000IOPS
免费赠送100热数据存储IOPS,IOPS为每秒写入和读取的所有数据的行数之和
GB
热数据存储空间
200000GB
100000GB
150000GB
1GB
50000GB
免费赠送1GB热数据存储空间,用于写入和读取设备上报的时序数据
10
GB
冷数据存储空间
50000GB
100000GB
200000GB
10GB
150000GB
免费赠送10GB冷数据存储空间,用于备份设备上报的历史数据并分析
数据处理单元
10000个
2500个
1个
7500个
5000个
数据服务默认开启,并免费赠送1个数据处理单元
image.png


开通完成后,点击企业版实例卡片进入实例详情页,再点击数据服务进入数据相关的功能页。

使用概览
物联网平台
数据服务
使用概览
实例详情
设备管理
物联网数据服务流程
消息转发
LU
N5
GU
数据服务
分析洞察
数据接入
数据指标
数据应用
数据解析
数据存储
管理您的指标,数据表等数
可视化配置数据格式转换和
使用SQL工作台进行数据实
通过数据源和数据解析将您
通过API或者可视化报表的方
数据高效读写和冷热分离,
使用概览
式使用您的数据
时和离线分析
聚合计算任务
TTL可灵活配置
的数据接入数据服务
据资产
数据接入
数据解析
常用链接
视频教学
数据存储
品
5分钟入门物联网大数据计算
阿里云开发者社区
数据指标
随看起来越多的物联网设备上云,物联网平台积累了越来越多的设备数据,如何挖掘设备数据背后更大
5分钟入门
快速入门
名称解释
应用场景
的价值,成为大家越来越关心的问题,本视频通过智能电表的每日用电量盐势分析这个场是,绘大家讲
物联网大数据
分析洞察
解一下如何使用阿里云物联网数据服务功能.
计算
数据应用
6分32秒
实例导入
监控运维
设备离线分析
阿里云开发省社区
一键导入公共实例任务到当前的企业实例
设备掉线怎么办?
物联网平台重要的功能之一就是设备上云,对设备进行状态监测,管理和分析.当设备出现掉线时,如
安全中心
数据分析
何快速发现并有效推断设备离线原因呢?本视须将介绍如何通过使用物联网平台上的数据服务功能来实
立即导入
让冰冷的设备
现对设备状态的监测和对设备离线原因的分析.
目新版反馈
"开口说话
image.png


2进入数据服务-数据存储的热数据存储功能页,实时保存设备上报的时序数据。

数据服务
使用概览
数据接入
数据解析
数据存储


●创建热数据存储规则

创建规则
热数据存储规则仅针对流转自定义TOPIC的设备数据,已使用物模型
的设备数据系统会默认写入热数据存储,无需额外配置规则
规则名称
热数据存储规则
规则描述
请输入规则描述
取消
确定
image.png


●配置数据源Topic(支持通配)

数据存储
数据服务
规则详情
物联网平台
规则详情
编辑
规则ID
2023/01/19 14:54:58
创建时间
规则描述
脚本
TOPIC(1)
请输入TOPIC
添加TOPIC
操作
消息类型
DEVICENAME
PRODUCTKEY
TOPIC
全部设备(+)
删除
自定义
/+/USER/#
image.png


●配置自定义存储脚本

数据服务
数据存储
规则详情
物联网平台
规则详情
编辑
创建时间
2023/01/19 14:54:58
规则ID
1001
规则描述
TOPIC(1)
脚本
编辑脚本 R(当前展示为:草稿)
//通过PAYLOAD函数,获取设备上报的消息内容,并按照JSON格式转换.
VAR DATAPAYLOAD("JSON');
2345
//筛选出上报的温湿度值.
VAR H - GETORNULL(DATA, "ITEMS", "HUMIDITY", "VALUE");
456789017345
VAR T DATAITEMS.TEMPERATURE.VALUE;
VAR C - GETORNULL(DATA, "ITEMS", "2CO", "VALUE");
VAR FIELDS
H,
T
#C":C
子
VAR PARAMS CONVERT2HOTSTORAGEDATA(FIELDS, TIMESTAMP());
WRITEHOTSTORAGE(PARAMS);
发布
调试
保存
image.png


●启动热数据存储规则

物联网平台
数据存储
数据服务
数据存储
冷数据存储
热数据存储
存储规则
存储配置
实时运行数据
X
确定要启动热数据存储规则吗?
创建规则
请输入规则名称
确认
取消
创建时间
规则名称
规则ID
删除
2023/01/19 14:54:58
热数据存储规则
未启动
查看
启动
image.png


3进入数据服务-数据接入功能页,开启产品级别的冷数据备份,低成本长周期保存设备数据。

数据服务
使用概览
数据接入

●配置产品备份(会备份产品下所有设备的数据)

备份
产品名称
EE1TN
备份类型
同地域
备份周期
1年
取消
确认

4进入数据服务-数据存储的冷数据存储功能页,查看产品备份任务状态。

数据服务
使用概览
数据接入
数据解析
数据存储


●查看产品备份状态

物联网平台
产品列表
数据接入
数据服务
产品列表
Q
请输入产品名称查询
全部备份周期
全部
已选择
备份起止时间
操作
备份状态
产品创建时间
备份周期
产品名称/PRODUCTKEY
节点类型
2023/01/19 -
停止
1个月
查看
设备
运行中
2022/122 14:22:24
2023/01/19
1TN
设备
备份
查看
2022/12/2113:59:34
未备份
停止
开启
编辑
备份
image.png


相关产品文档
如您想要了解更细节的产品功能使用指南,可以访问物联网平台的官网产品文档。
●热数据存储: https://help.aliyun.com/document_detail/464047.html
●冷数据备份: https://help.aliyun.com/document_detail/188662.htm
●冷数据配置: https://help.aliyun.com/document_detail/464053.html

数据解析 - 实现不同类型设备异构数据的统一化和预处理
IoT设备数据比起IT数据有如下三个特点:第一个特点是IoT数据是时序的,通常是基于时间范围分析,而且随着时间流逝数据价值衰减更明显,特别是监控场景下,对数据处理的实时性要求高;第二个特点是数据质量不稳定,设备上报的数据可能会受所处网络或者复杂工况影响,与典型的互联网数据对比往往需要进行数据预处理,比如插值计算和降采样等;第三个特点是碎片化比较严重,不同类型的设备或者同一类型不同生产商的设备在数据格式的定义上都完成不一样,给后续的数据处理带来了很大的麻烦。
阿里云物联网平台针对以上IoT数据的特点,提供了组件式的数据解析服务,包括可自定义解析脚本的数据格式转换,以及窗口聚合、超时插值、相邻消息计算、函数转化等内置算子,助力客户快速完成对设备数据的预处理。

操作步骤概要
1进入数据服务-数据解析功能页,创建数据解析任务。

数据服务
使用概览
数据接入
数据解析

物联网平台
数据解析
数据服务
数据解析
请输入任务名称/编号搜索
新建解析
所属产品
描述
任务名称/编号
操作
状态
数据源类型
数据解析任务
待上线
删除
查看
启动
AWBGZKHYOOWXYPVE
image.png


2点击查看进入任务编辑画布,配置数据源节点,选择设备上报数据的Topic(支持通配)。

数据解析任务
上次保存于:2023/01/19 15:09:18
启动
保存
数据解析工作台
校验
节点列表
源节点
输入
基本信息
数据源类型
源节点
LOT 实例 TOPIC
所属实例
源节点
自定义
IAT-
处理
所属产品
+
所属设备
表达式
全部设备
TOPIC类型
筛选器
自定义 TOPIC
数据结构
数据预览
输出
TOPIC名称
字段名称
/I2 ITN/$(DEVICENAME)/USER/UPDATE
没有数据
目标节点
格式解析
image.png


3编写自定义解析脚本(源节点需要将数据格式选择为原始数据),对设备数据进行处理。

数据解析任务  口
启动
上次保存于:2023/01/19 15:09:18
保存
数据解析工作台
校验
节点列表
源节点
输入
基本信息
格式解析
源节点
TOPIC 格式
原始数据
自定义
源节点
自定义
处理
+10
表达式
筛选器
数据预览
数据结构
输出
字段名称
没有数据
目标节点
image.png


数据解析任务
保存
上次保存于:2023/01/19 17:40:33
启动
数据解析工作台
校验
节点列表
自定义脚本
输入
缠辑脚本
脚本语言:
JAVASCRIPT (ECMASCRIPT 5)
FUNCTION EXECUTESCRIPT(DATA)
源节点
15
VAR UINT8ARRAY NEW UINT8ARRAY(DATA.LENGTH):
16
FOR (VARI
DATA.LENGTH;I+++)
17
UINT8ARRAY[I]
DATA[I]&OXFF;
自定义
18
19
源节点
DATAVIEW(UINT8ARRAY .BUFFER,);
VAR DATAVIEW
NEW
自定义
VAR JSONMAP
P 舟;
'VS']
JSONMAP
DATAVIEW.GETINT16(5):
TS'7
INT8ARRAY
JSONMAP
处理
DATAVIEW.GETFLOAT32(8);
JSONMAP['TN
RETURN JSONMAP;
国
+
模拟输入
运行结果
表达式
11二进制数据以0X开头的十六进制输入,字符申数据输入原始字符申
筛选器
数据结构
数据预览
输出
暂无可预览数据,请点击工具栏中的"请
目标节点
执行
image.png


除了可在自定义节点编写数据解析脚本外,也可以在数据源节点配置其他类型数据格式的转换,如下图所示。

数据解析任务
三
上次保存于:2023/01/19 17:40:33
启动
保存
数据解析工作台
校验
节点列表
源节点
输入
基本信息
格式解析
源节点
TOPIC 格式 ?
PROTOBUF
源节点
自定义
JSON
PROTOBUF
处理
BASE64(TO_JSON)
原始数据
+
表达式
筛选器
数据结构
数据预览
输出
暂无可预览数据,请点击工具栏中的"请
目标节点
image.png


4配置数据目标节点,将解析后的数据写入自定义存储表(解析后的数据字段需要和自定义存储表中的一致)。

数据解析任务口
上次保存于:2023/01/19 17:40:33
保存
启动
数据解析工作台
校验
节点列表
目标节点
输入
目标类型
LOT 实例自定义存储表
源节点
选择自定义存储表
数据存储类型
自定义
设备概览
自定义存储表
目标节点
源节点
自定义
+新建字段
数据类型
指标名称
唯一键
精度
描述
字段名称
处理
没有数据
表达式
筛选器
数据结构
数据预览
输出
暂无可预览数据,请点击工具栏中的请
目标节点
image.png


5配置完成后,将数据解析任务启动并发布上线。

数据解析任务口
上次保存于:2023/01/19 17:40:33
启动
保存
数据解析工作台
校验
节点列表
输入


数据解析
物联网平台
数据服务
数据解析
新速解析
请输入任务名称/编号搜素
操作
描述
状态了
所展产品
数据源类型
任务名称/编号
LOT 实例 TOPIC
查看
在线
停止制除
image.png


相关产品文档
如您想要了解更细节的产品功能使用指南,可以访问物联网平台的官网产品文档。
数据解析: https://help.aliyun.com/document_detail/307080.html

分析洞察 - 实现设备数据的实时和离线分析,深度挖掘业务价值
设备数据经过数据解析并输出到自定义存储表后,可以使用SQL开发工作台来分析这些数据,比如设备新增/活跃分析、设备工况和经营统计等,深度挖掘设备数据的业务价值。
分析洞察的结果配置为自定义服务API后,可以被客户的业务系统集成调用,客户只需专注于业务开发,无需关注设备数据的存储、备份、分析和API开放等技术细节,大大加快了业务应用的开发。

操作步骤概要
1进入数据服务-分析洞察功能页,创建SQL分析任务,再点击进入SQL开发工作台。

数据服务
使用概览
数据接入
数据解析
数据存储
数据指标
分析洞察


物联网平台/数据服务/分析洞察
分析洞察
任务运维心
请输入数据开发名称/编号
新建SQL分析
操作
状态(已上线)
创建时间
最后更新时间
数据开发名称/编号
览统计
已上线
查看
删除
开发工作台
2021-12-01 20:18:48
院统计_1
已上线
开发工作台
查看
2021-12-08 19:34:00
删除
2022-04-20 16:10:57
设备概览
已上线
查看
开发工作台
2021-12-02  16:59:33
2022-04-20 16:04:11
荆除
维度
已上线
查石
开发工作台
2022-04-20 10:59:10
2021-12-2117:01:41
删除
维度
已上线
查看
2021-12-01 19:48:08
开发工作台
刷除
2022-04-20 10:51:40
出口分分布
已上线
2022-04-20 00:01:58
查石
2021-12-23 17:27:01
国除
上报数据时间
已上线
2021-12-24 17:39:26
查看
开发工作台
2022-04-19 23:07:28
删除
image.png


2在SQL开发工作台编写SQL语句,对自定义存储表中的设备数据进行深度分析。

平台系统表
产品存储表(产品时序表)7
自定义存储表
2. SELECT AL,DEVICE.TYPE,QL.AN,Q2.TN, Q3.CN, TO-CHOR(TO-TIMESTAMP($FBIZBOTE] / 1800),'YYY-MN-DD) AS D
请输入存储表名称
SELECT CASE
IN
WHEN SUBSTRING(T.DEVICE NAME, 1, 1) I
智慧三角架
'S'THEN
ME,1, 1) IN
1''2)
WHEN SUBSTRING(T.DEVICE_NAME.
IN
-6.
WHEN SUBSTRING(T.DEVICE_NAME,
NE,1,1)
THEN
NHEN SUBSTRINGCT.DEVICE-NGME,1.1) IN (
送路作业车爱安全预置终站
NI
1, 1)
&'BTHEN车盒*
报数据
THEN
车装所答LED
WHEN SUBSTRINGCT.DEVICE_NAME,1,1) IN (
IN (E'
WHEN SUBSTRING(T.DEVICE_NOME,1,1)
"G)THEN一体化模块
ELSE其地'
END AS DEVICE_TYPE,COUNT(1) AS AN
FROM(
SELECT DEVICE_NAME. SUMCN) AS N180
FROM
OM DEVICE_DATACOUNT_DAILY
日数据
FRE TS / 1880 BETWEEN SFBIZDATE] / 1008-24* 68* 60* 60* 180+1 AND SFBIZDATE] / 1009
WHERE
GROUP BY DEVICE_NAME
ORDER BY NI80
120天
DDAY)
4C
WHERE T.N180>0
向设备航
ERVLEW
PBY CASE
GROUP
,1) IN C'5 THEN 智慧三角架*
WHEN SUBSTRING(T.DEVICE_NOME,1.1.1.
1.1) IN ('1 ,2)
THEN智慧泡饼灯
WHEN SUBSTRING(T.DEVICE_NOME,1.1
'X THEN 一体化智慧链桶
1)IN('3,9,9
WHEN SUBSTRING(T.DEVICE_NAME
IN C4'''5HEN
道路作业车载安全预警终端
EN SUBSTRING(T.DEVICE_NAME.
后一次
WHEN SUBSTRING(T.DEVICE_NAME,1,1,1) IN (D',
ME)
等车,N3H1(8.8.
WHEN SUBSTRING(T.DEVICE NAME, 1, 1) IN (*0') T
)THEN车装双管LED
)IN(E','G)THEN'一体化烫块'
WHEN SUBSTRING(T.DEVICE_NOME,
构记录
ELSE其他
END
日上报
ATACOUR
LEFT JOIN C
SELECT CASE
LACOUNT
WHEN SUBSTRING(NAME,1.1)
IN(5'THEN智慧三角架"
IN SUBSTRING(NAME, 1)
IN(','2') THEN '智慧锥桥灯!
1
IN(3','9','X)THEN'一体化智基链桶"
0日上招
ACOUNT
WHEN SUBSTRING(NE
(RIAME,
IN(4)THEN 道路作业车装安全预警终端"
WHEN SUBSTRING(NAME.
:1.1)
IN(D,D'7,8'8,B)THEN 车盒
WHEN SUBSTRING(NO
(NAME,1,1
据日维
OUNT_D
运行日志
清空日志
结果
接数据
OUNT)
请点击运行按钮执行SOL.查询
告份分
(PF
查看更多
image.png


3将分析后的数据存入另一张自定义存储表。

执行设置
结果存储表
设备概览分析结果
新建自定义存储表
数据写入策略
主键覆盖
追加
请选择主键
X
DEVICE_NAME
调度策略生效日期
2024-01-31
2023-01-19
调度周期
小时
确定
取消
image.png


4进入数据服务-数据应用功能页,创建自定义服务API,客户业务系统可通过SDK查询分析结果。

数据服务
使用概览
数据接入
数据解析
数据存储
数据指标
分析洞察
数据应用

数据应用
物联网平台
数据服务
数据应用
数据报表
数据智能
数据API
预置指标API
自定义服务API
产品数据 API
Q
请选择API标签
请搜索API名称或API PATH
新建API
最近一次发布时间
操作
API PATH
API名称
API状态
2022107/06 11:47:04
已上线
查看|编辑 下线
量2
每日
TEAMOUNT2
JDE
已下线
2022/07/27 10:06:34
查看编辑发布 | | | | | 编辑 发布 制除
车载
数据
/VEL
下线
已上线
上报数据日期
查看
编辑
2022/06/13  20:42:57
MAS
2022/02/16 16:55:13
已上线
编辑 下线
查看
每日
喜量
JDE'
image.png


帮助文档
API详情
物联网平台
数据应用
数据服务
每
版本1
量2
基础信息
每
API名称
自定义API
API类型
APIPATH
PL
OUNT2
状态
创建时间
已上线
最近一次调用
2022/07/05 11:42:01
2023/01/19 11:43:09
超时报错条件
20
调用次数
API 监控
API测试
API运维
调用示例
请求详情
返回示例
参数类型
测试值
操作符
参数名称
是否必填
否
INTEGER
PAGENUM
香
INTEGER
PAGESIZE
DATE': 2023-01-18'
否
BET....
VARCHAR
'DATE':'2023-01-18',
"COUNT.2
'DATE':2023-01-18*.
'DEVICE ID';
西
'COUNT':2
品
测试成功  API调用时间:150 MS
开始测试
image.png


数据API地址: https://help.aliyun.com/document_detail/135195.html
SDK下载地址: https://help.aliyun.com/document_detail/386372.html

相关产品文档
如您想要了解更细节的产品功能使用指南,可以访问物联网平台的官网产品文档。
●分析洞察: https://help.aliyun.com/document_detail/325548.html

●自定义服务API: https://help.aliyun.com/document_detail/253902.html



物联网平台产品介绍详情:

阿里云物联网平台客户交流群


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70017009/viewspace-2935456/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2022-04-22

  • 博文量
    134
  • 访问量
    80953