流式计算的处理方法及装置制造方法及图纸

技术编号:29614553 阅读:23 留言:0更新日期:2021-08-10 18:28
本发明专利技术公开了一种流式计算的处理方法及装置,涉及大数据技术领域,其中该方法包括:主实时计算引擎计算流式数据,得到流式数据计算结果;在从流式数据中识别出乱序数据时,将乱序数据时间戳前后相关的数据信息封装成异步消息;将异步消息发送至副实时计算引擎;副实时计算引擎根据异步消息,对乱序数据进行重新计算;根据重新计算的结果,更新所述流式数据计算结果。本发明专利技术实现了既可以通过主、副实时计算引擎的模式来处理迟到的乱序数据,将正常数据和乱序数据并行处理,保证流式计算结果的完整性和准确性;同时,也不会阻塞正常数据流的实时计算,降低延迟,保证整体流式计算的时效性。综上,本发明专利技术实施例实现了高效准确地进行流式计算。

【技术实现步骤摘要】
流式计算的处理方法及装置
本专利技术涉及大数据
,尤其涉及一种流式计算的处理方法及装置。
技术介绍
本部分旨在为权利要求书中陈述的本专利技术实施例提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。目前,大数据应用对时效性的要求越来越高,大数据流式计算应用场景越来越广泛。由于数据源的不稳定性以及网络延迟等原因,使得到达流式计算引擎的数据流存在部分乱序的情况,现有处理乱序数据方法的计算结果不完整性和不准确性,同时效率也低,导致流式计算的处理准确度和效率都低。
技术实现思路
本专利技术实施例提供一种流式计算的处理方法,用以高效准确地进行流式计算,该方法包括:主实时计算引擎计算流式数据,得到流式数据计算结果;在从所述流式数据中识别出乱序数据时,将乱序数据时间戳前后相关的数据信息封装成异步消息;将所述异步消息发送至副实时计算引擎;副实时计算引擎根据所述异步消息,对乱序数据进行重新计算;根据重新计算的结果,更新所述流式数据计算结果。本专利技术实施例还提供一种流式计算的处理装置,用以高效准确地进行流式计算,该装置包括:主实时计算引擎,用于计算流式数据,得到流式数据计算结果;在从所述流式数据中识别出乱序数据时,将乱序数据时间戳前后相关的数据信息封装成异步消息;将所述异步消息发送至副实时计算引擎;副实时计算引擎,用于根据所述异步消息,对乱序数据进行重新计算;根据重新计算的结果,更新所述流式数据计算结果。本专利技术实施例还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述流式计算的处理方法。本专利技术实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述流式计算的处理方法的计算机程序。本专利技术实施例中,流式计算的处理方案,通过:主实时计算引擎计算流式数据,得到流式数据计算结果;在从所述流式数据中识别出乱序数据时,将乱序数据时间戳前后相关的数据信息封装成异步消息;将所述异步消息发送至副实时计算引擎;副实时计算引擎根据所述异步消息,对乱序数据进行重新计算;根据重新计算的结果,更新所述流式数据计算结果,实现了既可以通过主、副实时计算引擎的模式来处理迟到的乱序数据,将正常数据和乱序数据并行处理,保证流式计算结果的完整性和准确性;同时,也不会阻塞正常数据流的实时计算,降低延迟,保证整体流式计算的时效性。综上,本专利技术实施例实现了高效准确地进行流式计算。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:图1为本专利技术实施例中流式计算的处理方法的流程示意图;图2为本专利技术另一实施例中流式计算的处理方法的流程示意图;图3为本专利技术实施例中封装成异步消息的流程示意图;图4为本专利技术实施例中流式计算的处理装置的结构示意图;图5为本专利技术另一实施例中流式计算的处理装置的结构示意图。具体实施方式为使本专利技术实施例的目的、技术方案和优点更加清楚明白,下面结合附图对本专利技术实施例做进一步详细说明。在此,本专利技术的示意性实施例及其说明用于解释本专利技术,但并不作为对本专利技术的限定。在介绍本专利技术实施例之前,首先对本专利技术实施例涉及的名词进行介绍。1.流式计算:是大数据计算的一种模式,当数据达到处理引擎后立即进行处理,得到计算结果。2.乱序数据:在流式数据处理中,数据源产生的数据一般都包含时间戳,数据一般都是按照时间顺序到达计算引擎。由于网络延迟等因素造成数据源呈现乱序的状态,如图2所示,图2中的数字代表数据块产生的时间戳,其中时间戳为4的数据块到达数据源延迟了一定的时间,即为本文中所指的乱序数据。3.异步消息/同步消息:在计算机网络中,当模块A要向模块B发送消息进行通讯时,模块A可以发送同步消息或者异步消息。若模块A向模块B发送同步消息,则模块A需要等待B收到消息后的应答,此时模块A会产生阻塞;若模块A向模块B发送异步消息,则模块A只需要发送出消息即可,不需要等待B的应答即可继续进行别的工作,不会产生阻塞。专利技术人发现目前流式计算中处理乱序数据主要有两种方案:1)直接丢弃乱序数据:这种方案的缺点是计算结果不完整,不准确。2)阻塞式处理模式:当有乱序数据到达计算引擎时,正常数据流的处理会暂时被阻塞,计算引擎开始处理迟到的乱序数据,更新历史计算结果,处理完成之后才能继续正常数据流的处理。当乱序数据较多时,正常数据流处理会频繁中断,增加整体的延迟时间,数据处理的时效性难以保证。本专利技术实施例的目的就是提出一种解决方案,即提出一种流式计算的处理方案,该方案既要保证计算结果的完整性和准确性,又要保证流式计算的时效性。具体地,该方案提出一种主副计算引擎的模式来处理迟到的乱序数据。主计算引擎(主实时计算引擎)负责正常到达的数据流的实时计算;当收到迟到的乱序数据时,将数据信息及对应的计算逻辑封装成异步消息传递给副计算引擎(副实时计算引擎),主计算引擎继续后续到达的数据流的处理。副计算引擎根据收到的异步消息中的数据信息和计算逻辑,对乱序数据进行重新计算,更新主计算引擎的历史结果。该方案既可以处理迟到的乱序数据,保证结果的完整性和准确性;同时不会阻塞正常数据流的实时计算,降低延迟,保证整体的时效性。下面对该流式计算的处理方案进行详细介绍。图1为本专利技术实施例中流式计算的处理方法的流程示意图,如图1所示,该方法包括如下步骤:步骤101:主实时计算引擎计算流式数据,得到流式数据计算结果;在从所述流式数据中识别出乱序数据时,将乱序数据时间戳前后相关的数据信息封装成异步消息;将所述异步消息发送至副实时计算引擎;步骤102:副实时计算引擎根据所述异步消息,对乱序数据进行重新计算;根据重新计算的结果,更新所述流式数据计算结果。本专利技术实施例提供的流式计算的处理方法实现了既可以通过主、副实时计算引擎的模式来处理迟到的乱序数据,保证流式计算结果的完整性和准确性;同时,也不会阻塞正常数据流的实时计算,降低延迟,保证整体流式计算的时效性。综上,本专利技术实施例实现了高效准确地进行流式计算。下面结合图2至图3对该方法涉及的各个步骤进行详细介绍如下。如图2所示,本专利技术实施例中流式计算的处理方法的步骤包括:步骤1:数据采集,从各数据源采集流式数据。具体实施时,可以通过数据采集模块采集所述流式数据。步骤2:实时数据消费,主计算引擎从消息队列中拉取数据。通过上述可知,在一个实施例中,上述流式计算的处理方法还可以包括:数据采集模块采集所述流式数据;消息队列存储所述流式数据;主实时计算引擎计算流式数据,得到流式数据计算结果,包括:主实时计算引擎从消息队列中拉本文档来自技高网...

【技术保护点】
1.一种流式计算的处理方法,其特征在于,包括:/n主实时计算引擎计算流式数据,得到流式数据计算结果;在从所述流式数据中识别出乱序数据时,将乱序数据时间戳前后相关的数据信息封装成异步消息;将所述异步消息发送至副实时计算引擎;/n副实时计算引擎根据所述异步消息,对乱序数据进行重新计算;根据重新计算的结果,更新所述流式数据计算结果。/n

【技术特征摘要】
1.一种流式计算的处理方法,其特征在于,包括:
主实时计算引擎计算流式数据,得到流式数据计算结果;在从所述流式数据中识别出乱序数据时,将乱序数据时间戳前后相关的数据信息封装成异步消息;将所述异步消息发送至副实时计算引擎;
副实时计算引擎根据所述异步消息,对乱序数据进行重新计算;根据重新计算的结果,更新所述流式数据计算结果。


2.如权利要求1所述的流式计算的处理方法,其特征在于,在从所述流式数据中识别出乱序数据时,将乱序数据时间戳前后相关的数据信息封装成异步消息,包括:
存储当前已处理数据块的时间戳,在后续数据块的时间戳小于当前已处理数据块的时间戳时,识别出所述后续数据块为乱序数据;
将乱序数据时间戳前后数据块的位置信息和计算逻辑封装成异步消息;
副实时计算引擎根据所述异步消息,对乱序数据进行重新计算,包括:副实时计算引擎根据乱序数据时间戳前后数据块的位置信息获取乱序数据;根据乱序数据时间戳前后数据块的计算逻辑,对乱序数据进行重新计算。


3.如权利要求1所述的流式计算的处理方法,其特征在于,还包括:
数据采集模块采集所述流式数据;
消息队列存储所述流式数据;
主实时计算引擎计算流式数据,得到流式数据计算结果,包括:主实时计算引擎从消息队列中拉取流式数据,计算流式数据,得到流式数据计算结果。


4.如权利要求1所述的流式计算的处理方法,其特征在于,将所述异步消息发送至副实时计算引擎,包括:消息通知模块将所述异步消息转发至副实时计算引擎。


5.如权利要求4所述的流式计算的处理方法,其特征在于,副实时计算引擎根据所述异步消息,对乱序数据进行重新计算,包括:副实时计算引擎轮询消息通知模块,获取所述异步消息,根据所述异步消息,对乱序数据进行重新计算。


6.如权利要求1所述的流...

【专利技术属性】
技术研发人员:刘朋强闫宏宇陈文博姚元伟白盛楠代琼琼朱江波
申请(专利权)人:中国银行股份有限公司
类型:发明
国别省市:北京;11

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

1