写点什么

8 招带你玩转规则引擎(一)

  • 2019-12-24
  • 本文字数:1812 字

    阅读完需:约 6 分钟

8招带你玩转规则引擎(一)

【摘要】 华为云物联网平台提供的规则引擎包括数据转发和设备联动等多种能力,这些能力都要怎么使用?本文教您 8 招最常用的用法,带您玩转规则引擎。


规则引擎是华为云物联网平台提供的一种能力,用户对接入平台的设备设定相应的规则,在条件满足所设定的规则后,平台会触发相应的动作来满足用户需求。规则引擎包含数据转发和设备联动两种类型。


  • 数据转发规则:物联网平台支持将设备上报的数据(和设备信息)转发至其他云服务,包括数据接入服务 DIS、对象存储服务 OBS、企业集成平台 ROMA 等,并支持对转发的数据进行过滤。

  • 设备联动规则:设备联动规则是指当设备行为(即设备上报的数据中的某个值)或者系统时间满足了规则设定的条件时,就会触发规则设定的动作,如触发告警、发送消息和下发命令给设备。


面对规则引擎的这么多能力,我们该如何使用它们?接下来就让本文教你 8 招,带你玩转规则引擎。

第一招 数据转发至 OBS 长期存储

对于设备上报的数据,设备接入服务只保存最新的数据,设备管理服务(创建应用时开启了存储数据能力)保存 7 天的历史数据。如果用户希望长期保存设备历史数据,就需要将设备上报的数据及时转发至其他地方保存。


此时,就轮到规则引擎出场了。数据转发规则支持将设备上报的数据转发至对象存储服务OBS,实现设备数据持久存储。OBS 是一个基于对象的海量存储服务,为客户提供海量、安全、高可靠、低成本的数据存储能力,适用于对设备上报数据进行归档和备份存储。


1574730857864646.png


在 OBS 中,基本的概念是桶和对象:桶是 OBS 中存储对象的容器,每个桶都有自己的存储类别、访问权限、所属区域等属性,用户在互联网上通过桶的访问域名来定位桶。对象是 OBS 中数据存储的基本单位,一个对象实际是一个文件的数据与其相关属性信息的集合体,包括 Key(文件名称)、Metadata(元数据,由 OBS 自动生成)、Data(文件数据)三部分。



1574730895876403.png


规则引擎转发设备上报数据到 OBS 时,每条数据都会作为一个对象被保存到用户创建的桶中。若需要用桶中读取数据,OBS 也提供了控制台、SDK、API、客户端工具等多种方法,是不是很方便?

第二招 数据经由 DIS 转发至第三方应用

很多物联网企业都会自己开发物联网应用管理设备,那么,物联网应用如何从物联网平台实时获取设备上报的数据?华为物联网平台提供了两种方案。


方案一是使用设备管理服务的订阅推送功能。这个方案是由第三方应用调用物联网平台的接口进行订阅,然后设备上报数据后物联网平台主动推送至第三方应用。这个方案方便快捷,且支持推送的数据不止设备上报的数据,还包括设备注册通知、设备状态变化通知等;但这个方案也有一些局限性:第三方应用所在服务器必须绑定一个公网 IP 用于接收推送,物联网平台默认只提供较弱(10TPS)的推送能力,且不支持过滤数据。


方案二则是使用规则引擎,将设备上报数据转发到数据接入服务DIS,再由第三方应用从 DIS 获取数据。DIS 为处理或分析流数据的第三方应用构建数据流管道,实现数据高效采集、传输、分发。


1574730906462047.png


在 DIS 中,数据流管道被称为通道,是用户创建的逻辑单位,用以区分不同用户实时数据的集合。和使用 OBS 服务时同样,我们需要先创建一个通道,然后在物联网平台创建数据转发规则时指定该通道,设备上报的数据就会被物联网平台转发至该通道内。然后,第三方应用通过集成 DIS 的 SDK 或直接调用 DIS 的 API,主动获取数据。创建规则时,我们还可以指定过滤条件,例如指定某个属性的值必须大于 0 才转发该条数据,提前过滤无效数据。


1574730952561784.png


该方案虽然仅支持转发设备上报的数据(和设备信息),但无需公网 IP,支持数据过滤,并可以根据数据流速创建不同规格的数据通道,整体灵活性更高。

第三招 数据实时分析后转发至第三方应用

有些时候,第三方应用因为性能或业务逻辑等问题,期望获取的是已经分析处理过的设备上报数据,而不是原始数据。对于这种诉求,我们仅需在第二招上稍微做些改动即可实现。


1574730985511311.png


实时流计算服务CS,是运行在公有云上的实时流式大数据分析服务,全托管的方式用户无需感知计算集群,只需聚焦于 Stream SQL 业务,即时执行作业。CS 支持 DIS 流式数据作为数据源和数据输出,所以我们需要建立两个 DIS 通道,一个通道作为 CS 的数据源,物联网平台将数据转发至该通道后就会被 CS 取出并处理;另一个通道作为 CS 的输出通道,CS 会把分析处理完的数据输出到这个通道中,第三方应用再从该通道中获取分析后的数据即可。


本文转载自华为云社区博客。


原文链接:https://bbs.huaweicloud.com/blogs/134889


2019-12-24 13:281988

评论

发布
暂无评论
发现更多内容

Qwen2.5 大语言模型特点解析

Botnow

AI 大语言模型 LLMOps AI 智能体 Qwen2.5

多协议数据库管理工具:Navicat Premium (Win&Mac) 中文激活版

你的猪会飞吗

Navicat Premium Navicat Premium 16 Navicat Premium 中文版

Difference analysis of IPQ4029 and IPQ4028 WiFi 5 chips

wifi6-yiyi

IPQ4019 wifi5

强大的终端SSH工具:SecureCRT (Win&Mac) 激活版

你的猪会飞吗

SecureCRT下载 SecureCRT mac SecureCRT Mac破解版 SecureCRT 安装教程

行业报告:仅百度文心智能体平台实现帮开发者赚钱

Geek_2d6073

AI 场景下如何构建运维的标准化能力?SOMA 智能运维计划发布 | 2024 龙蜥大会

OpenAnolis小助手

开源 操作系统 系统运维 龙蜥社区 龙蜥社区系统运维联盟

恭喜!龙蜥社区2024年中三大奖项评选名单新鲜出炉

OpenAnolis小助手

开源 操作系统 龙蜥社区

简化插件的添加和更新流程

NocoBase

开源 低代码 无代码 版本更新

全面掌握 Jest:从零开始的测试指南(下篇)

EquatorCoco

前端

js基础之setTimeout与setInterval原理分析

京东科技开发者

软件系统反脆弱指南

FunTester

智启未来!和鲸联合南开大学赵宏教授,共论 AI 挑战下的教育教学新理念与新方法

ModelWhale

Python 人工智能 高等教育

签署《AI安全国际对话威尼斯共识》 智源持续推动人工智能安全发展

智源研究院

IPQ4019|Why Choose DR4019 SOM for Your Next WiFi Project? Dual-Band, USB 3.0, and OpenWRT

wallyslilly

万界星空科技MES系统车间设备管理模块的功能

万界星空科技

工业互联网 mes 设备管理 万界星空科技 生产设备管理

阿里 Qwen2.5 开源发布;YouTubeVeo 引入 Google DeepMind Veo 模型丨 RTE 开发者日报

声网

京东短网址高可用提升最佳实践

京东科技开发者

AI 镜像云市场伙伴招募计划发布!服务商闭门会精彩回顾 | 2024 龙蜥大会

OpenAnolis小助手

开源 操作系统 龙蜥社区 AI 镜像

专访浪潮信息:AI 原生时代,浪潮信息引领服务器操作系统创新 全面贡献龙蜥社区

OpenAnolis小助手

开源 操作系统 龙蜥社区 龙蜥操作系统大会

Cloud Kernel SIG 月度动态:ANCK 新增多家厂商硬件新特性支持

OpenAnolis小助手

开源 操作系统 龙蜥社区 龙蜥sig

ETLCloud:新一代ETL数据抽取工具的定义与革新

RestCloud

数据库 ETL 数据集成 数据抽取

诚邀见证2024九章云极DataCanvas算力包产品发布会!

九章云极DataCanvas

9月20日,Bonree ONE 3.0 产品发布会北京站即将开启!

博睿数据

高性能连接池之HikariCP框架分析:高性能逐条分解(架构师篇)

肖哥弹架构

Java HikariCP 连接池

京东云JoyCoder荣获AI4SE“银弹”优秀案例

京东科技开发者

Spring Boot 整合 MyBatis 的详细步骤(两种方式)

不在线第一只蜗牛

Spring Boot 后端

专访AMD:AMD 正式加入龙蜥社区首秀:开源协作与 AI 创新的交汇点

OpenAnolis小助手

开源 AI 操作系统 龙蜥社区

全面拥抱生成式AI时代 F5 AppWorld全球巡演中国站盛大启幕

科技热闻

避免高额开发费用,如何轻松开发类似喜马拉雅的听书平台?

软件开发-梦幻运营部

8招带你玩转规则引擎(一)_行业深度_我是卤蛋_InfoQ精选文章