【技术实现步骤摘要】
本申请涉及数据处理
,尤其涉及一种数据处理方法和流计算系统。
技术介绍
流计算是指利用分布式的思想和方法,对海量“流”式数据进行实时处理,它源自对海量数据“时效”价值上的挖掘诉求。流计算针对的数据可以称为流数据,流数据是没有边界的、未知的,而计算是事先定义(已知)的,流计算系统按照已定义的计算逻辑来处理流数据。现在最常用的流计算系统是Storm,在实际应用中常常和消息中间件(如Kafka)或存储系统(如HBase)结合,通过拉数据模式来获取数据,其缺点在于和消息中间件紧耦合,难以满足对外服务化的诉求。此外,Storm在失效转移(Failover)时,采用“源头重发”的消息机制,这种方式的缺点是故障恢复代价高,在某些场景下可能会造成雪崩效应,集群规模在水平扩展性上有较多局限。
技术实现思路
本申请旨在至少在一定程度上解决相关技术中的技术问题之一。为此,本申请的一个目的在于提出一种数据处理方法,该方法在处理流数据时可以满足对外服务化的诉求,以及在发生失效转移时避免数据源头重发。本申请的另一个目的在于提出一种流计算系统。为达到上述目的,本申请第一方面实施例提出的数据处理方法,包括:数据接收模块接收到要处理的数据后,将所述数据写入文件系统中,并在所述数据被写入文件系统后,发送所述数据给逻辑处理模块;逻辑处理模块根据对数据的接收情况获取有效数据,并且,定期对预设的检查点进行更新;以及,在发生失效转移时,确定最新的检查点,获取与所述最新的检查点对应的有效数据,并恢复所述有效数据。本申请第一方面实施例提出的数据处理方法,通过不设置消息中间件,从而满足对外服务化的诉求 ...
【技术保护点】
一种数据处理方法,其特征在于,包括:数据接收模块接收到要处理的数据后,将所述数据写入文件系统中,并在所述数据被写入文件系统后,发送所述数据给逻辑处理模块;逻辑处理模块根据对数据的接收情况获取有效数据,并且,定期对预设的检查点进行更新;以及,在发生失效转移时,确定最新的检查点,获取与所述最新的检查点对应的有效数据,并恢复所述有效数据。
【技术特征摘要】
1.一种数据处理方法,其特征在于,包括:数据接收模块接收到要处理的数据后,将所述数据写入文件系统中,并在所述数据被写入文件系统后,发送所述数据给逻辑处理模块;逻辑处理模块根据对数据的接收情况获取有效数据,并且,定期对预设的检查点进行更新;以及,在发生失效转移时,确定最新的检查点,获取与所述最新的检查点对应的有效数据,并恢复所述有效数据。2.根据权利要求1所述的方法,其特征在于,所述将所述数据写入文件系统中,包括:将所述数据以记录为粒度进行划分,得到至少一条记录,并为每条记录生成版本号,以及将所述记录与所述版本号对应写入文件系统中。3.根据权利要求2所述的方法,其特征在于,所述发送所述数据给逻辑处理模块,包括:将所述数据以块为粒度进行划分,得到至少一个块,并为每个块生成块标识,以及将所述块与所述块标识对应发送给逻辑处理模块,其中,每个块包括至少一条记录。4.根据权利要求1所述的方法,其特征在于,所述根据对数据的接收情况获取有效数据,包括:判断是否发生数据丢失和数据重复中的至少一项;如果未发生数据丢失和数据重复中的任一项,则将接收的未丢失且不重复的数据,确定为有效数据;如果发生数据丢失和数据重复中的至少一项,则对应执行如下项中的至少一项,并将处理后的数据确定为有效数据:如果发生数据丢失,则确定丢失的版本号,并从所述文件系统中补入所述丢失的版本号对应的数据;如果发生数据重复,则去掉重复的数据。5.根据权利要求1所述的方法,其特征在于,所述逻辑处理模块内部包括父单元和子单元,对应父单元,所述定期对预设的检查点进行更新,包括:定期生成检查点,并判断是否需要对生成的检查点进行持久化;如果确定需要对生成的检查点进行持久化,将预设的检查点更新为需要持久化的检查点。6.根据权利要求5所述的方法,其特征在于,在记录所述有效数据时还记录所述有效数据的版本号,所述版本号包括批编号,所述判断是否需要对生成的检查点进行持久化,
\t包括:获取第一批编号和第二批编号,所述第一批编号是所述父单元自身记录的最新的有效数据的批编号,所述第二批编号是所述子单元记录的最新的有效数据的批编号;如果所述第一批编号小于或等于所述第二批编号,确定需要对生成的检查点进行持久化。7.根据权利要求6所述的方法,其特征在于,当所述第一批编号大于所述第二批编号时,所述方法还包括:所述父单元在恢复自身的有效数据后,继续获取新数据,并将所述新数据发送给所述子单元;所述子单元在恢复自身的有效数据后,对接收的新数据中的重复数据进行去重处理。8.根据权利要求1所述的方法,其特征在于,所述记录所述有效数据,包括:将所述有效数据记录在重做日志文件中,所述重做日志文件中还包含所述有效数据对应的重做日志文件元数据;且,所述检查点中包含重做日志文件元数据;所述获取与所述最新的检查点对应的有效数据,包括:根据所述最新的检查点中包含的重做日志文件元数据,从所述重做日志文件中,获取与所述重做日志文件元数据对应的有效数据。9.一种流计算系统,其特征在于,包...
【专利技术属性】
技术研发人员:李妹芳,魏蒲萌,段培乐,李闪,
申请(专利权)人:阿里巴巴集团控股有限公司,
类型:发明
国别省市:开曼群岛;KY
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。