物联网数据流处理方法、系统及装置与流程

文档序号:18755351发布日期:2019-09-24 22:12阅读:458来源:国知局
物联网数据流处理方法、系统及装置与流程

本发明涉及物联网领域,尤其涉及一种物联网数据流处理方法、系统及装置。



背景技术:

本部分旨在为权利要求书中陈述的本发明实施例提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。

随着物联网技术的快速发展,流式数据呈现爆发式增长。目前,市场主要有三种对流式数据实时处理的引擎,分别是flink引擎、storm引擎和sparkttreaming引擎。这三种数据处理引擎,均存在一些问题,主要包括如下几方面:

①关于延迟。flink引擎和storm引擎是亚秒级别的低数据处理延迟;而sparkttreaming引擎是秒级别的高数据处理延迟。

②关于api级别。storm引擎的api是低级别的,需要开发人员按照特定的storm定义规则编写;flink引擎和sparkttreaming引擎的api是高级别的,其中,sparkttreaming引擎容易对接spark自己的生态栈,而flink引擎提供了不同场景的类库。

③关于易用性。storm引擎不支持sql流处理(sqlstreaming);而flink引擎和sparkttreaming引擎都支持sql流处理,其中,sparkttreaming引擎支持sql流处理的场景更深更广,flink引擎只支持比较浅的sql流处理。

④关于技术成熟度,storm引擎最高,其次是sparkttreaming引擎,最后是flink引擎。也即storm引擎是目前最稳定的实时流处理引擎。

由此,如何提供一种低数据处理延迟、高api级别,且易用性强的稳定实时流处理引擎,对海量物联网数据的实时流处理具有十分重要的意义。



技术实现要素:

本发明实施例提供一种物联网数据流处理方法,用以解决现有数据流处理引擎直接用于海量物联网数据的实时流处理时存在不足的技术问题,该方法包括:获取实时传输的物联网数据;基于实时流规则引擎,对物联网数据进行流处理,其中,实时流规则引擎包括:实时流计算引擎和规则引擎;输出物联网数据的流处理结果。

本发明实施例还提供一种物联网数据流处理装置,用以解决现有数据流处理引擎直接用于海量物联网数据的实时流处理时存在不足的技术问题,该装置包括:物联网数据获取模块,用于获取实时传输的物联网数据;物联网数据流处理模块,用于基于实时流规则引擎,对物联网数据进行流处理,其中,实时流规则引擎包括:实时流计算引擎和规则引擎;流处理结果输出模块,用于输出物联网数据的流处理结果。

本发明实施例还提供一种物联网数据流处理系统,用以解决现有数据流处理引擎直接用于海量物联网数据的实时流处理时存在不足的技术问题,该系统包括:物联网设备,用于实时传输物联网数据;计算设备,与物联网设备通信,用于基于实时流规则引擎,对物联网数据进行流处理,以及输出物联网数据的流处理结果,其中,实时流规则引擎包括:实时流计算引擎和规则引擎。

本发明实施例还提供一种计算机设备,用以解决现有数据流处理引擎直接用于海量物联网数据的实时流处理时存在不足的技术问题,该计算机设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述的物联网数据流处理方法。

本发明实施例还提供一种计算机可读存储介质,用以解决现有数据流处理引擎直接用于海量物联网数据的实时流处理时存在不足的技术问题,该计算机可读存储介质存储有执行上述物联网数据流处理方法的计算机程序。

本发明实施例中,通过提供由实时流计算引擎和规则引擎结合构成的实时流规则引擎,对实时传输的物联网数据进行流处理,并输出流处理结果,实现了物联网数据接入、流计算处理和计算结果输出全自动化处理。

通过本发明实施例能够提高与物联网设备对接的效率,加快物联网数据处理的实施进程,节省人力和时间成本。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:

图1为本发明实施例中提供的一种物联网数据流处理方法流程图;

图2为本发明实施例中提供的一种物联网数据流处理系统架构示意图;

图3为本发明实施例中提供的一种物联网数据流处理的数据流向示意图;

图4为本发明实施例中提供的一种物联网数据流处理装置示意图;

图5为本发明实施例中提供的一种物联网数据流处理系统示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚明白,下面结合附图对本发明实施例做进一步详细说明。在此,本发明的示意性实施例及其说明用于解释本发明,但并不作为对本发明的限定。

本发明实施例中提供了一种物联网数据流处理方法,图1为本发明实施例中提供的一种物联网数据流处理方法流程图,如图1所示,该方法包括如下步骤:

s101,获取实时传输的物联网数据。该物联网数据可以是任意一种物联网设备实时采集的数据,包括但不限于温度、时间等。

s102,基于实时流规则引擎,对物联网数据进行流处理,其中,实时流规则引擎包括:实时流计算引擎和规则引擎。其中,实时流规则引擎可以是用于对实时传输的物联网数据进行流处理,并将流处理结果结构化存储至关系数据库的数据处理引擎。

作为一种可选的实施方式,本发明实施例提供的物联网数据流处理方法中,实时流计算引擎可以为storm引擎,规则引擎可以为esper引擎,则上述s102具体可以通过esper引擎和storm引擎对物联网数据进行sql流处理。通过本发明实施例,可以使得storm引擎api和易用性上与其他数据流处理引擎提高到同等高度,且可以实现对流处理规则的修改,并在修改后实现热启动。

可选地,在上述s102之后,本发明实施例提供物联网数据流处理方法还可以包括:监控物联网数据的处理情况。

s103,输出物联网数据的流处理结果。可选地,可以通过配置数据输出规则,将不同物联网数据的流处理结果输出到不同的存储系统上。

可选地,为了实现对数据处理规则的实时修改,并在修改后实现热启动(热启动是指在不停机的情况下,生效修改的配置或规则),一种可选的实施例中,本发明实施例提供物联网数据流处理方法还可以包括:基于实时流规则引擎,配置物联网数据的数据处理规则,其中,数据处理规则包括如下至少之一:数据接入规则、数据流计算规则和数据输出规则。

需要说明的是,本发明实施例上述s101至s103提供的物联网数据流处理方法,可以应用但不限于图2所示的物联网数据流处理系统架构中。相应地,图3示出了图2所示的物联网数据流处理系统的数据流向。如图2所示,该系统架构主要包括三部分:

①数据接入部分。本发明实施例提供但不限于如下两种两种数据接入方式:(a)以消费消息队列方式接入物联网数据;(b)通过restapi接口接入物联网数据。

②基于实时流规则引擎的数据流处理部分。根据实时流计算引擎(storm引擎)结合规则引擎(esper引擎)构建实时流规则引擎。通过实时流规则引擎中的实时流计算引擎(storm引擎)对实时数据进行消费及结果输出功能加上规则引擎(esper引擎)对数据流进行sql流处理。

③数据输出部分。本发明实施例提供多种数据源存储输出结果,实现计算结果输出规则可配置且实时生效。

由上可知,本发明实施例提供的物联网数据流处理方法中,通过提供由实时流计算引擎和规则引擎结合构成的实时流规则引擎,当获取到实时传输的物联网数据后,基于该实时流规则引擎,对实时传输的物联网数据进行流处理,并输出流处理结果,实现了物联网数据接入、流计算处理和计算结果输出全自动化处理,能够提高与物联网设备对接的效率,加快物联网数据处理的实施进程,节省人力和时间成本。

下面以采集温度的物联网设备为例来说明本发明实施例。假设一批采集温度的物联网设备(例如,温度传感器),需要统计五分钟内的平均温度、最大温度和最小温度值,并将统计结果存入关系型数据库(mysql数据库)中。通过本发明实施例提供的物联网数据流处理方案,可以通过如下操作来实现对温度数据的流处理:

(1)配置物联网设备的元数据;

(2)设定该物联网设备的标识信息(例如,设备的英文名称)作为整个流处理过程的全局唯一标识;

(3)配置统计规则;

(4)配置输出存储系统参数(例如,mysql的jdbcurl,用户名和密码等);

(5)启动处理引擎,打开监控ui界面查看数据处理量;

(6)查看关系型数据库mysql中存储的结果数据。

本发明实施例将实时流计算引擎和规则引擎结合,实现了物联网数据流处理规则可修改且实时生效;通过配置流处理结果输出规则,可以将物联网数据的流处理结果输出到不同到存储系统,且该流处理结果输出规则也可修改且实时生效。

本发明实施例中还提供了一种物联网数据流处理装置,如下面的实施例所述。由于该装置实施例解决问题的原理与物联网数据流处理方法相似,因此该装置实施例的实施可以参见方法的实施,重复之处不再赘述。

图4为本发明实施例中提供的一种物联网数据流处理装置示意图,如图4所示,该装置包括:物联网数据获取模块41、物联网数据流处理模块42和流处理结果输出模块43。

其中,物联网数据获取模块41,用于获取实时传输的物联网数据;物联网数据流处理模块42,用于基于实时流规则引擎,对物联网数据进行流处理,其中,实时流规则引擎包括:实时流计算引擎和规则引擎;流处理结果输出模块43,用于输出物联网数据的流处理结果。

作为一种可选的实施方式,本发明实施例提供的物联网数据流处理装置中,实时流计算引擎可以为storm引擎,规则引擎可以为esper引擎,则上述物联网数据流处理模块42用于通过esper引擎和storm引擎对物联网数据进行sql流处理。

由上可知,本发明实施例提供的物联网数据流处理装置中,通过提供由实时流计算引擎和规则引擎结合构成的实时流规则引擎,当通过物联网数据获取模块41获取到实时传输的物联网数据后,通过物联网数据流处理模块42基于该实时流规则引擎,对实时传输的物联网数据进行流处理;最后通过流处理结果输出模块43输出流处理结果,实现了物联网数据接入、流计算处理和计算结果输出全自动化处理,能够提高与物联网设备对接的效率,加快物联网数据处理的实施进程,节省人力和时间成本。

在一种可选的实施例中,本发明实施例提供的物联网数据流处理装置还可以包括:配置模块44,用于基于实时流规则引擎,配置物联网数据的数据处理规则,其中,数据处理规则包括如下至少之一:数据接入规则、数据流计算规则和数据输出规则。

进一步地,作为一种优选的实施例,本发明实施例提供的物联网数据流处理装置还可以包括:监控模块45,用于监控物联网数据的处理情况。

本发明实施例中还提供了一种物联网数据流处理系统,如下面的实施例所述。由于该系统实施例解决问题的原理与物联网数据流处理方法相似,因此该系统实施例的实施可以参见方法的实施,重复之处不再赘述。

图5为本发明实施例中提供的一种物联网数据流处理系统示意图,如图5所示,该系统包括:物联网设备51和计算设备52。

其中,物联网设备51,用于实时传输物联网数据;计算设备52,与物联网设备通信,用于基于实时流规则引擎,对物联网数据进行流处理,以及输出物联网数据的流处理结果,其中,实时流规则引擎包括:实时流计算引擎和规则引擎。

需要说明的是,本发明实施例提供的物联网数据流处理系统中,计算设备52可以是任意一种对物联网数据进行实时处理的设备,包括但不限于各种物联网云平台或服务器,例如,还可以是笔记本电脑、计算机等集成或能够访问实时流规则引擎的设备。

由上可知,本发明实施例提供的物联网数据流处理系统中,通过提供由实时流计算引擎和规则引擎结合构成的实时流规则引擎,当计算设备52接收到物联网设备51实时传输的物联网数据后,计算设备52基于该实时流规则引擎,对实时传输的物联网数据进行流处理,并输出流处理结果,实现了物联网数据接入、流计算处理和计算结果输出全自动化处理,能够提高与物联网设备对接的效率,加快物联网数据处理的实施进程,节省人力和时间成本。

作为一种可选的实施方式,本发明实施例提供的物联网数据流处理系统中,计算设备52还用于基于实时流规则引擎,配置物联网数据的数据处理规则,其中,数据处理规则包括如下至少之一:数据接入规则、数据流计算规则和数据输出规则。

进一步地,作为一种优选的实施方式,本发明实施例提供的物联网数据流处理系统中,计算设备52还用于监控物联网数据的处理情况。

需要说明的是,本发明实施例提供的物联网数据流处理系统中,实时流计算引擎为storm引擎,规则引擎为esper引擎,则上述计算设备52还用于通过esper引擎和storm引擎对物联网数据进行sql流处理。

本发明实施例还提供了一种计算机设备,用以解决现有数据流处理引擎直接用于海量物联网数据的实时流处理时存在不足的技术问题,该计算机设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述的物联网数据流处理方法。

本发明实施例还提供了一种计算机可读存储介质,用以解决现有数据流处理引擎直接用于海量物联网数据的实时流处理时存在不足的技术问题,该计算机可读存储介质存储有执行上述物联网数据流处理方法的计算机程序。

综上所述,本发明实施例提供了一种基于规则的物联网数据流处理方案,将实时流计算引擎结合规则引擎构建实时流规则引擎,通过该实时流规则引擎对物联网数据进行流处理,包括但不限于物联网数据接入、实时流数据计算以及计算结果的输出,与现有的实时数据流引擎比较,本发明实施例提供的物联网数据流处理流程更完善(从数据接入到计算再到计算结果输出),提高了与物联网设备对接的效率,加快了整个流程的实施进程,节省了时间及人力成本。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1