数据处理架构中消息的处理方法和装置制造方法及图纸

技术编号:15615742 阅读:152 留言:0更新日期:2017-06-14 03:17
本申请公开了一种数据处理架构中消息的处理方法和装置。其中,该方法包括:获取目标消息,其中,目标消息为指示第一处理块链接至第二处理块的消息,第二处理块为第一处理块的下一层块;判断目标消息是否满足初始链接条件,其中,初始链接条件为第一处理块链接到第二处理块的条件;当判断出目标消息不满足初始链接条件时,将目标消息投递至目标处理块中。本申请解决了现有技术中由于不满足链接条件导致整个数据处理架构进入假死状态的技术问题。

【技术实现步骤摘要】
数据处理架构中消息的处理方法和装置
本申请涉及计算机领域,具体而言,涉及一种数据处理架构中消息的处理方法和装置。
技术介绍
数据处理架构(TPLDataflow)是微软提供的进行流式处理的框架,适合需要高并发、高性能的应用程序。TPLDataflow中最基础的组件是块(Block),Block相当于一个处理单元,每个Block定义了如何进行数据处理的逻辑。将多个Block链接起来,就组成了系统处理管道,只需要在管道开始处输入数据,接下来整个管道自动开始运行,从一个Block开始执行自己的处理逻辑,处理完成后将得到的数据投递到下一个或多个Block,最终完成整个管道的处理。参见图1,分词程序的处理管道的输入可以是多个文件,首先通过文件读取Block读取文件,并将文件传递至下一层Block(即,图1中分行Block);分行Block再将文件传递至下一层Block(即,分词Block);分词Block再将文件传递至单词计数Block。其中,文件读取Block,分行Block,分词Block和单词计数Block构成一个完整的数据处理管道。传统的TPLDataflow,将一个Block链接到另外一个Block时,可以指定链接条件,只有消息满足该链接条件时,消息才会从一个Block投递到另外一个Block。如图2所示,文件读取Block负责读取文件,将文件内容投递到下一层Block(即,分行Block)。其中,设置的文件读取Block和分行Block之间的链接条件为:文件行数是奇数和文件行数是偶数。当文件读取Block读取到的文件行数为奇数时,将文件内容投递到分行Block1;当文件行数为偶数时,将文件内容投递到分行Block2。如果在实现文件读取Block和分行Block之间的链接时指定多个条件,若遇到不满足所有条件的消息时,则消息无法投递。该消息会一直驻留在源Block中,Dataflow停止任何处理,进入假死状态。例如,如图3所示,文件读取Block和分行Block之间的链接条件为行数%3=1和行数%3=0,当获取到的消息为文件行数%3=2时,确定该消息不满足上述任何链接条件,此时,该消息不会投递到任何一个Block,此时文件内容无法投递,Dataflow假死。针对上述的问题,目前尚未提出有效的解决方案。
技术实现思路
本申请实施例提供了一种数据处理架构中消息的处理方法和装置,以至少解决现有技术中由于不满足链接条件导致整个数据处理架构进入假死状态的技术问题。根据本申请实施例的一个方面,提供了一种数据处理架构中消息的处理方法,包括:获取目标消息,其中,所述目标消息为指示第一处理块链接至第二处理块的消息,所述第二处理块为所述第一处理块的下一层块;判断所述目标消息是否满足初始链接条件,其中,所述初始链接条件为所述第一处理块链接到所述第二处理块的条件;以及当判断出所述目标消息不满足所述初始链接条件时,将所述目标消息投递至目标处理块中。进一步地,所述目标处理块包括第一预设处理块,当判断出所述目标消息不满足所述初始链接条件时,将所述目标消息投递至目标处理块中包括:获取所述初始链接条件,其中,每个所述第一处理块和每个所述第二处理块之间包含一个所述初始链接条件;根据所述初始链接条件生成目标链接条件;以及当确定所述目标消息满足所述目标链接条件时,将所述目标消息投递至所述第一预设处理块中,通过所述第一预设处理块按照预先定义处理规则对所述目标消息进行处理。进一步地,当所述初始链接条件的数量为一个时,根据所述初始链接条件生成目标链接条件包括:将所述初始链接条件进行逻辑非运算,得到所述目标链接条件。进一步地,当所述初始链接条件的数量为多个时,根据所述初始链接条件生成目标链接条件包括:将多个所述初始链接条件进行逻辑非运算,得到多个中间链接条件;以及依次将运算之后的多个所述中间链接条件进行逻辑与运算,得到所述目标链接条件。进一步地,所述目标处理块包括第二预设处理块,当判断出所述目标消息不满足所述初始链接条件时,将所述目标消息投递至目标处理块中包括:判断获取到的所述目标消息是否携带第一标识,其中,所述第一标识为表示忽略所述目标消息的标识;以及在判断出所述目标消息中携带所述第一标识情况下,将所述目标消息投递至所述第二预设处理块中,其中,所述第二预设处理块为对所述目标消息不进行任何操作的块。进一步地,所述目标处理块包括第三预设处理块,当判断出所述目标消息不满足所述初始链接条件时,将所述目标消息投递至目标处理块中包括:判断获取到的所述目标消息是否携带第二标识,其中,所述第二标识为表示记录所述目标消息的错误信息的标识;以及在判断出所述目标消息中携带所述第二标识情况下,将所述目标消息投递至所述第三预设处理块中,其中,所述第三预设处理块为记录所述错误信息的块。根据本申请实施例的另一方面,还提供了一种数据处理架构中消息的处理装置,包括:获取单元,用于获取目标消息,其中,所述目标消息为指示第一处理块链接至第二处理块的消息,所述第二处理块为所述第一处理块的下一层块;判断单元,用于判断所述目标消息是否满足初始链接条件,其中,所述初始链接条件为所述第一处理块链接到所述第二处理块的条件;以及投递单元,用于当判断出所述目标消息不满足所述初始链接条件时,将所述目标消息投递至目标处理块中。进一步地,所述目标处理块包括第一预设处理块,所述投递单元包括:第一获取模块,用于获取所述初始链接条件,其中,每个所述第一处理块和每个所述第二处理块之间包含一个所述初始链接条件;生成模块,用于根据所述初始链接条件生成目标链接条件;以及第一投递模块,用于当确定所述目标消息满足所述目标链接条件时,将所述目标消息投递至所述第一预设处理块中,通过所述第一预设处理块按照预先定义处理规则对所述目标消息进行处理。进一步地,所述目标处理块包括第二预设处理块,所述投递单元包括:第一判断模块,用于判断获取到的所述目标消息是否携带第一标识,其中,所述第一标识为表示忽略所述目标消息的标识;以及第二投递模块,用于在判断出所述目标消息中携带所述第一标识情况下,将所述目标消息投递至所述第二预设处理块中,其中,所述第二预设处理块为对所述目标消息不进行任何操作的块。进一步地,所述目标处理块包括第三预设处理块,所述投递单元包括:第二判断模块,用于判断获取到的所述目标消息是否携带第二标识,其中,所述第二标识为表示记录所述目标消息的错误信息的标识;以及第三投递模块,用于在判断出所述目标消息中携带所述第二标识情况下,将所述目标消息投递至所述第三预设处理块中,其中,所述第三预设处理块为记录所述错误信息的块。在本申请实施例中,采用获取目标消息,其中,所述目标消息为指示第一处理块链接至第二处理块的消息,所述第二处理块为所述第一处理块的下一层块;判断所述目标消息是否满足初始链接条件,其中,所述初始链接条件为所述第一处理块链接到所述第二处理块的条件;当判断出所述目标消息不满足所述初始链接条件时,将所述目标消息投递至目标处理块中的方式。通过判断获取到的目标消息是否满足链接条件,当判断出目标消息不满足链接条件时,则将该目标消息投递至指定处理块中,相对于现有技术中遇到不满足链接条件的目标消息时,数据处理架构将本文档来自技高网
...
数据处理架构中消息的处理方法和装置

【技术保护点】
一种数据处理架构中消息的处理方法,其特征在于,包括:获取目标消息,其中,所述目标消息为指示第一处理块链接至第二处理块的消息,所述第二处理块为所述第一处理块的下一层块;判断所述目标消息是否满足初始链接条件,其中,所述初始链接条件为所述第一处理块链接到所述第二处理块的条件;以及当判断出所述目标消息不满足所述初始链接条件时,将所述目标消息投递至目标处理块中。

【技术特征摘要】
1.一种数据处理架构中消息的处理方法,其特征在于,包括:获取目标消息,其中,所述目标消息为指示第一处理块链接至第二处理块的消息,所述第二处理块为所述第一处理块的下一层块;判断所述目标消息是否满足初始链接条件,其中,所述初始链接条件为所述第一处理块链接到所述第二处理块的条件;以及当判断出所述目标消息不满足所述初始链接条件时,将所述目标消息投递至目标处理块中。2.根据权利要求1所述的方法,其特征在于,所述目标处理块包括第一预设处理块,当判断出所述目标消息不满足所述初始链接条件时,将所述目标消息投递至目标处理块中包括:获取所述初始链接条件,其中,每个所述第一处理块和每个所述第二处理块之间包含一个所述初始链接条件;根据所述初始链接条件生成目标链接条件;以及当确定所述目标消息满足所述目标链接条件时,将所述目标消息投递至所述第一预设处理块中,通过所述第一预设处理块按照预先定义处理规则对所述目标消息进行处理。3.根据权利要求2所述的方法,其特征在于,当所述初始链接条件的数量为一个时,根据所述初始链接条件生成目标链接条件包括:将所述初始链接条件进行逻辑非运算,得到所述目标链接条件。4.根据权利要求2所述的方法,其特征在于,当所述初始链接条件的数量为多个时,根据所述初始链接条件生成目标链接条件包括:将多个所述初始链接条件进行逻辑非运算,得到多个中间链接条件;以及依次将运算之后的多个所述中间链接条件进行逻辑与运算,得到所述目标链接条件。5.根据权利要求1所述的方法,其特征在于,所述目标处理块包括第二预设处理块,当判断出所述目标消息不满足所述初始链接条件时,将所述目标消息投递至目标处理块中包括:判断获取到的所述目标消息是否携带第一标识,其中,所述第一标识为表示忽略所述目标消息的标识;以及在判断出所述目标消息中携带所述第一标识情况下,将所述目标消息投递至所述第二预设处理块中,其中,所述第二预设处理块为对所述目标消息不进行任何操作的块。6.根据权利要求1所述的方法,其特征在于,所述目标处理块包括第三预设处理块,当判断出所述目标消息不满足所述初始链接条件时,将所述目标消息投递至目标处理块中包括:判断...

【专利技术属性】
技术研发人员:何恺铎
申请(专利权)人:北京国双科技有限公司
类型:发明
国别省市:北京,11

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

1