数据流式处理方法及装置制造方法及图纸

技术编号:21059418 阅读:29 留言:0更新日期:2019-05-08 06:32
本发明专利技术公开了一种数据流式处理方法及装置,该方法包括:获取待处理数据的配置文件,其中,配置文件中至少包含待处理数据的计算指标;根据配置文件和预先构建的通用计算逻辑算子,生成待处理数据的计算任务模型,其中,计算任务模型包括一个或多个通用计算逻辑算子;根据计算任务模型,对实时获取的待处理数据进行指标计算。本发明专利技术可以降低开发人员的编码工作量、提高开发效率。

Data Stream Processing Method and Device

【技术实现步骤摘要】
数据流式处理方法及装置
本专利技术涉及信息领域,尤其涉及一种数据流式处理方法及装置。
技术介绍
本部分旨在为权利要求书中陈述的本专利技术实施例提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。随着信息技术的快速发展,人们对数据业务的实时性要求也越来越高,这就需要对数据进行实时计算。在大数据环境下,将源源不断产生的数据进行实时收集、实时计算并快速得到计算结果的计算平台称为流式计算引擎。目前,市场上比较流行的流式计算引擎有Storm、Sparkstreaming、Flink等。其中,Storm作为一个免费开源、分布式、高容错的流式计算引擎,被广泛应用于各个领域(例如,在线实时分析、在线机器学习、分布式远程调用等)。Storm分布式计算结构称为Topology(计算任务),由Spout和Bolt组成,其中,Spout是一个Topology中产生源数据流的组件;Bolt是在一个Topology中接收数据然后执行处理的组件。Storm作为流式计算引擎,定义了一套自己的编程模型,开发人员如果要实现一个流式计算任务,需要按照Storm定义的API编写大量spout和bolt代码,才能完成一个Topology(计算任务),这种方式使得开发人员的编码工作量很大,开发效率不高。
技术实现思路
本专利技术实施例提供一种数据流式处理方法,用以解决现有基于Storm框架的数据流式计算方案,需要开发人员编写大量代码,导致系统开发效率低的技术问题,该方法包括:获取待处理数据的配置文件,其中,配置文件中至少包含待处理数据的计算指标;根据配置文件和预先构建的通用计算逻辑算子,生成待处理数据的计算任务模型,其中,计算任务模型包括一个或多个通用计算逻辑算子;根据计算任务模型,对实时获取的待处理数据进行计算处理。本专利技术实施例还提供一种数据流式处理装置,用以解决现有基于Storm框架的数据流式计算方案,需要开发人员编写大量代码,导致系统开发效率低的技术问题,该装置包括:配置文件获取模块,用于获取待处理数据的配置文件,其中,配置文件中至少包含待处理数据的计算指标;计算任务模型生成模块,用于根据配置文件和预先构建的通用计算逻辑算子,生成待处理数据的计算任务模型,其中,计算任务模型包括一个或多个通用计算逻辑算子;数据处理模块,用于根据计算任务模型,对实时获取的待处理数据进行计算处理。本专利技术实施例中,通过预先构建通用的计算逻辑算子,在获取到包含待处理数据计算指标的配置文件后,根据配置文件和预先构建的通用计算逻辑算子,生成待处理数据的计算任务模型,然后基于该计算任务模型对实时获取的待处理数据进行计算处理。通过本专利技术实施例,提供了一种配置化的流式计算处理平台,降低了开发人员的编码工作量,提高了系统开发效率。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:图1为本专利技术实施例中提供的一种数据流式处理方法流程图;图2为本专利技术实施例中提供的一种网络金融事中风险控制场景下数据流式处理方法流程图;图3为本专利技术实施例中提供的一种配置化流计算平台示意图;图4为本专利技术实施例中提供的一种登录数据的流式计算拓扑示意图;图5为本专利技术实施例中提供的一种数据流式处理装置示意图。具体实施方式为使本专利技术实施例的目的、技术方案和优点更加清楚明白,下面结合附图对本专利技术实施例做进一步详细说明。在此,本专利技术的示意性实施例及其说明用于解释本专利技术,但并不作为对本专利技术的限定。本专利技术实施例中提供了一种数据流式处理方法,图1为本专利技术实施例中提供的一种数据流式处理方法流程图,如图1所示,该方法包括如下步骤:S101,获取待处理数据的配置文件,其中,配置文件中至少包含待处理数据的计算指标;S102,根据配置文件和预先构建的通用计算逻辑算子,生成待处理数据的计算任务模型,其中,计算任务模型包括一个或多个通用计算逻辑算子;S103,根据计算任务模型,对实时获取的待处理数据进行指标计算。需要说明的是,上述待处理数据可以是任意一种实时获取并需要实时计算的数据;上述配置文件可以是开发人员根据业务场景编写的脚本文件,该配置文件中包含了待处理数据的计算指标(包括但不限于计数、求和、状态记录和流水记录等)。本专利技术实施例通过预先构建通用计算逻辑算子,可以自动根据待处理数据的配置文件,生成该待处理数据的计算任务模型,以便通过生成的计算任务模型对实时获取的待处理数据进行指标计算。由于在一个特定的业务场景下,计算任务往往具有相似性和重复性(例如,对于一个金融交易风控系统,会有很多计数、累加、流水记录、状态记录的计算任务)。因而,本专利技术实施例基于Storm开源框架,结合一定的业务场景,抽取通用计算任务,封装公共机制,建立一个配置化的流式计算平台,不再需要手工编码计算指标的Bolt,可以达到降低编码工作量,提高开发效率的目的。可选地,通用计算逻辑算子可以包括但不限于如下至少一种:计数器、求和器、状态记录和流水记录,计数器用于计数,求和器用于求和,状态记录用于记录数据的最新状态(例如,累计登录失败次数),流水记录用于记录数据的详情(可以表征用户连续的一系列动作,例如,用户最近几天的转账详情信息)。在一种可选的实施例中,上述S103可以具体包括:解析实时获取的待处理数据;将解析结果数据映射至计算任务模型的变量中。进一步地,在根据计算任务模型,对实时获取的待处理数据进行指标计算之后,上述方法还可以包括:将待处理数据的计算结果,实时存储到高速缓存中;同时,将待处理数据的计算结果,按照批量异步方式存储到数据库中。由于高速缓存中的数据存在丢失的风险,由此,本专利技术实施例提供的数据流式处理方法,还可以包括:在高速缓存中的数据丢失的情况下,根据数据库中存储的数据恢复高速缓存中的数据。作为一种可选的实施方式,为了满足复杂的业务需求,上述配置文件还可以包含待处理数据的过滤条件,过滤条件通过如下任意一种或多种逻辑运算组合或嵌套构成的表达式实现:与运算、或运算、非运算、比较运算、取值范围运算。在介绍本专利技术实施例之前,首先对Storm的基本原理进行简单介绍:Storm集群由一个主节点和多个工作节点组成,通过Zookeeper集群进行协调。其中,主节点运行了一个名为“Nimbus”的守护进程,用于分配代码、布置任务及故障检测;每个工作节点都运行了一个名为“Supervisor”的守护进程,用于监听工作,开始并终止工作进程。由于Nimbus和Supervisor都能快速失败,而且是无状态的,这样一来它们就变得十分健壮,两者的协调工作是由Zookeeper来完成的。Storm的核心组件包括:Nimbus、Supervisor、Worker、Task、Topology、Spout、Bolt和Tuple,其中,Nimbus负责资源分配和任务调度;Worker为运行具体处理组件逻辑的工作进程,每个工作进程中有多个任务Task;Task用于表示一个Spout/Bolt处理;Topology为Storm的计算拓扑,由于各个组件间的消息流动形成本文档来自技高网...

【技术保护点】
1.一种数据流式处理方法,其特征在于,包括:获取待处理数据的配置文件,其中,所述配置文件中至少包含所述待处理数据的计算指标;根据所述配置文件和预先构建的通用计算逻辑算子,生成所述待处理数据的计算任务模型,其中,所述计算任务模型包括一个或多个通用计算逻辑算子;根据所述计算任务模型,对实时获取的待处理数据进行指标计算。

【技术特征摘要】
1.一种数据流式处理方法,其特征在于,包括:获取待处理数据的配置文件,其中,所述配置文件中至少包含所述待处理数据的计算指标;根据所述配置文件和预先构建的通用计算逻辑算子,生成所述待处理数据的计算任务模型,其中,所述计算任务模型包括一个或多个通用计算逻辑算子;根据所述计算任务模型,对实时获取的待处理数据进行指标计算。2.如权利要求1所述的方法,其特征在于,根据所述计算任务模型,对实时获取的待处理数据进行指标计算,包括:解析实时获取的待处理数据;将解析结果数据映射至所述计算任务模型的变量中。3.如权利要求1所述的方法,其特征在于,在根据所述计算任务模型,对实时获取的待处理数据进行指标计算之后,所述方法还包括:将所述待处理数据的计算结果,实时存储到高速缓存中;将所述待处理数据的计算结果,按照批量异步方式存储到数据库中。4.如权利要求3所述的方法,其特征在于,在将所述待处理数据的计算结果,分别存储到高速缓存和数据库中之后,所述方法还包括:在所述高速缓存中的数据丢失的情况下,根据所述数据库中存储的数据恢复所述高速缓存中的数据。5.如权利要求1所述的方法,其特征在于,所述配置文件还包含所述待处理数据的过滤条件,所述过滤条件通过如下任意一种或多种逻辑运算组合或嵌套构成的表达式实现:与运算、或运算、非运算、比较运算、取值范围...

【专利技术属性】
技术研发人员:黄河峰
申请(专利权)人:中国银行股份有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1