【华为IoT Openlab】一个围绕数据分析服务端到端解决方案的体验

网友投稿 671 2022-05-30

文档说明

本文档介绍如何使用华为云IoT云服务构建端到端的解决方案,主要的围绕华为云数据分析服务(IoTA)展开。

通过本文档,您可以了解一个基于华为云设备接入服务(IoTDA)和IoTA的端到端的解决方案,在文档中会给出解决方案的简明集成指导,并且最后给出一个简单Step-by-Step的demo指导,方便伙伴体验。

方案说明

解决方案主要基于华为云IoTDA和IoTA。

整体解决方案说明

下面是端(Device)到端(行业应用)的一个解决方案。

其中设备采集数据通过华为云IoTDA上云,本部分数据既可以直接推送给行业应用,也可以提供给华为云的IoTA,通过数据分析的一系列分析动作后,得出分析结果,通过华为云数据接入服务(DIS)提供给行业应用。

图中涉及各模块的含义请参看下文介绍。

解决方案消息时序简图

相关模块介绍

设备介绍

这里的设备是指各种各样的物联网设备,设备具有采集数据的能力。

华为云的IoTDA服务支持设备通过固网、2G/3G/4G/5G、NB-IoT、Wifi等多种网络接入。支持设备以多种协议接入,一般通用常见的有MQTT和LWM2M/CoAP,本解决方案以MQTT为主。更多接入方式请参看平台简介。

为了加快设备的快速接入,IoTDA为设备提供了强大的开放能力。建议您查看设备接入指引。

设备接入云服务(IoTDA)

具体请参看平台简介了解。IoTDA提供了设备接入和设备管理的两大块功能。

在本解决方案中,主要使用其设备协议接入、设备管理、数据转发功能。IoTDA实现了MQTT的协议,设备可以通过原生的MQTT协议和IoTDA通信,并且IoTDA可以将已经格式化后的数据直接转发给行业应用或其他云服务或其他第三方组件,方便进一步分析处理。其中,IoTDA对数据进行格式化是通过产品模型特性实现的。

IoTDA能够对设备进行管理,如增删改查等。

IoTDA不存储设备历史数据。

数据分析服务(IoTA)

具体请参看产品简介了解。IoTA提供了数据存储、数据清洗、数据分析等功能。

在本解决方案中,主要使用其数据时序存储、管道(Pipeline)、数据孪生(DT)、实时流分析等功能。通过时序存储可以保存设备产生的温冷数据,方便行业应用或其他第三方实时获取。通过Pipeline可以进行数据清洗、转换,对数据进行灵活的格式化等,方便进一步分析处理。通过DT可以构建物理设备环境的逻辑模型,灵活的拖拉拽操作方式提供灵活的抽象。通过实时流分析可以从设备流数据中分析出关键事件,特别是拖拉拽的算子编排操作,以及与ModelArts等分析服务的打通,方便伙伴快速构造自己的算法方案。

数据接入服务(DIS)

华为云DIS是数据流处理的中间件,类似kafka,具体参看产品概述。

本解决方案中,IoTA对设备数据分析后的分析结果吐到DIS中,行业应用通过DIS获取分析的结果。

行业应用对接介绍

在上文的解决方案拓扑图介绍中,行业应用既可以通过IoTDA直接获取设备数据,也可以通过DIS获取IoTA的实时流分析结果。其实行业应用也可以通过IoTA获取设备历史保存的数据。

行业应用通过IoTDA获取设备数据。这里的设备数据一般指设备实时上报的业务数据、告警数据等。IoTDA支持多种方式为行业应用提供数据,一般有以下几种:

1、  HTTP API订阅推送。行业应用调用IoTDA的开放的订阅API,提供callbackurl。当IoTDA收到设备数据后可以推送给行业应用,具体参见链接。

2、  AMQP 订阅推送。AMQP是一种队列新消息协议。行业应用实现了AMQP客户端,对接IoTDA后可以收到推送的设备数据。具体参见链接。

3、  规则引擎的数据转发。规则引擎是IoTDA提供的关键特性,允许创建数据转发规则,设备上报数据后,可以触发规则,进而将数据转发给行业应用或第三方组件,具体参看规则转发。

行业应用通过DIS获取IoTA分析结果。行业应用需要集成DIS提供的SDK,通过SDK从DIS实例中取得数据。

行业应用通过IoTA获取设备历史数据。

集成开发指南

主要介绍本解决方案中,如何进行集成开发。

集成指南需要申请华为云账户。

IoTDA集成指导

IoTDA的集成指导包含设备的集成,主要介绍设备如何进行开发、IoTDA如何集成等,IoTDA与行业应用的对接放在下文中的“行业应用集成指导”中。

在开始IoTDA集成指导前,建议按照快速玩转平台的指导进行应用和设备快速接入的体验。

准备工作

需要开通华为云IoTDA。IoTDA有一定的免费消息和设备额度,足够完成解决方案的体验和测试,具体收费策略参看链接。

产品模型创建

产品模型创建是和IoTDA对接的基础。产品模型是对设备与设备场景的抽象,定义了设备的类型、型号、协议等基本身份属性,以及上下行数据的字段定义。产品模型的定义请参看链接。

建议采用在线开发产品模型,请参看指导。

设备代码的开发

本解决方案中,建议使用PahoMqtt SDK或者IoTDA的Device SDK进行开发,IoTDA分别提供SDK和demo供使用,请参看Device SDK开发和PahoMqtt SDK开发。

另外华为也对市面上的一些厂家模组进行认证,认证过的模组天然具有和IoTDA通信的能力,用户可以直接集成模组硬件,具体参看链接。

【华为IoT Openlab】一个围绕数据分析服务端到端解决方案的体验

设备的管理

设备与IoTDA对接中,涉及设备管理的一般操作流程如下

step 1、           产品模型定义和创建;

step 2、           在IoTDA上注册设备;

注册设备时需要关联到产品模型;有通过API和console界面两种注册设备的办法。

注册后的设备处于离线状态,在console界面上可以观察到。

step 3、           设备上线;

需要设备侧发起设备上线,具体包括建链、登录等。

设备上线后,在console界面上可以观察到设备处于在线状态。

step 4、           设备上报数据;

设备侧发起上报数据,上报后在IoTDA的console页面上可以看到。

注意:产品模型中需要定义上报数据的字段。

step 5、           设备接收命令下发;

命令有两种下发途径,一种是行业应用通过IoTDA API接口下发,命令经由IoTDA转发给设备。另一种是直接在IoTDA的console上直接进行命令下发。

注意:产品模型中需要定义命令,才能够下发命令。

除此之外,IoTDA还可以对设备修改和删除等基本管理功能。

IoTA集成指导

准备工作

需要申请IoTA的公测资格,目前IoTA还未正式商用。公测期间,所有IoTA的资源免费。

数据源的配置

IoTA使用前需要配置数据源,即配置从哪里获取待分析的数据。配置指导请参看链接,在本解决方案中,采用从IoTDA中获取数据的配置,即数据源是IoTDA。

Pipeline的创建

数据管道的作用数据清洗和格式化,然后进行标准化输出,方便数据分析或其他第三方服务对数据进行处理分析,在整体流程中的位置如下。

目前产品文档中Pipeline的介绍资料暂缺,可以参看下文中Demo操作指导。

资产建模

资产建模即资产模型的创建,即DT,简介和指导请参看链接。

在console界面上,用户可以通过拖拉拽的方式,通过层级化的视图展示资产的有机组织关系。视图中还包含了实测点和虚测点,可以对相关传感器的测量数值直接展示或处理后进行展示。比如一个机房中包含多种用途多种类型的设备或传感器,通过视图可以展现其层级归属关系,机房中的传感器是动态变化的,设备的数量和类型有增减,通过修改视图来匹配这种变化。

实时分析算法构建

实时数据分析的简介指导请参看链接。

为了降低门槛,对数据实时分析作业的创建也提供了拖拉拽的图形化流编排能力,实时分析封装了通用的算子组件,如数据聚合、数据计算等,并且可以关联FunctionGraph、ModelArts等云服务,提供更为强大的功能。

实时分析出的数据可以显示在资产模型中,可以同时输出给DIS。

行业应用集成指导

行业应用集成对接IoTDA和IoTA。

通过IoTDA和IoTA开放的应用使能能力,行业应用可以进行设备管理、命令下发、订阅推送、查询历史数据、资产建模、作业管理等功能。

行业应用对接IoTDA

行业应用与IoTDA的对接一般通过IoTDA的API完成,如果设备管理、数据上下行等。API列表参看链接,具体集成参看API使用指导。

IoTDA为行业应用提供的API都是restful风格的,并且提供了各种语言的SDK和demo,以便伙伴尽快集成。

另外,在IoTDA向行业应用推送数据场景下,也可以通过AMQP协议与华为云IoT平台对接,请参看链接。

行业应用通过DIS获取数据分析结果

行业应用需要集成DIS的SDK,请参看链接。

如果需要体验,请参看下文中的demo。

行业应用通过API获取IoTA中保存的历史数据

由于目前公测期,API暂未开放,如果需要申请使用,请提工单到IoTA。

Demo单步指导

参看《一个小CASE:IoT解决方案端到端体验指南》

物流解决方案简介

//TODO

IoT 数据挖掘 设备接入 IoTDA

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:老板叫我用Java SDK 怎么办?教教我在线等
下一篇:从码奴到码神之路--初级到中级再到高级程序员的进化之路
相关文章