[发明专利]用于TPL Dataflow 的控制方法和装置有效
申请号: | 201510714322.7 | 申请日: | 2015-10-28 |
公开(公告)号: | CN106648558B | 公开(公告)日: | 2020-02-07 |
发明(设计)人: | 何恺铎 | 申请(专利权)人: | 北京国双科技有限公司 |
主分类号: | G06F9/44 | 分类号: | G06F9/44;G06F16/22 |
代理公司: | 11240 北京康信知识产权代理有限责任公司 | 代理人: | 韩建伟;朱晓飞 |
地址: | 100083 北京市海淀区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 上游节点 运行状态 方法和装置 表征目标 应用程序 注册处理 目标块 类库 申请 失败 | ||
本申请公开了一种用于TPL Dataflow的控制方法和装置。其中,该方法包括:注册处理管道中目标块Block的上游节点列表,其中,处理管道由TPL Dataflow类库中的多个Block构成;添加上游节点至上游节点列表,其中,上游节点用于表征目标Block的上一级Block,上一级Block为处理管道中与目标Block相邻,且早于目标Block执行操作的Block;根据上游节点列表中全部上游节点对应的上一级Block的运行状态确定目标Block的运行状态,其中,目标Block的运行状态包括以下之一:完成、取消和失败。本申请解决了现有技术中利用TPL Dataflow的应用程序的处理结果不准确的技术问题。
技术领域
本申请涉及计算机领域,具体而言,涉及一种用于TPL Dataflow的控制方法和装置。
背景技术
TPL Dataflow是微软提供的进行流式处理的框架,适合需要高并发、高性能的应用程序。TPL Dataflow中最基础的组件是Block(块),相当于一个处理单元,每个Block定义了如何进行数据处理的逻辑。将多个Block链接起来,就组成了系统处理管道,只需要在管道开始处输入数据,接下来整个管道自动开始运行,从一个Block开始执行自己的处理逻辑,处理完成后将得到的数据投递到下一个或多个Block,最终完成整个管道的处理。
参见图1,分词程序处理管道的输入是多个文件,首先由文件读取Block读取文件,然后将读取到的文件内容投递到下一个Block(即,分行Block);分行Block将文件分为多行,然后将每一行投递到下一个Block(即,分词Block);分词Block将每一行文本分为多个单词,然后将每个单词投递到下一个Block(即,单词计数Block);单词计数Block对单词进行计数并保存。
在利用根据TPL Dataflow建立的分词程序处理管道进行数据处理时,由于单词计数Block依赖于多个分词Block,在TPL Dataflow的处理过程中,一旦有一个分词Block完成,单词计数Block就完成了,从而导致分词程序的处理结果不准确,这显然不是用户期望的,因为另外一个分词Block还没有完成。此外,现有技术中的TPL Dataflow不支持动态添加Block,比如动态添加一个分词Block。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本申请实施例提供了一种用于TPL Dataflow的控制方法和装置,以至少解决现有技术中利用TPL Dataflow的应用程序的处理结果不准确的技术问题。
根据本申请实施例的一个方面,提供了一种用于TPL Dataflow的控制方法,包括:注册处理管道中目标块Block的上游节点列表,其中,所述处理管道由TPL Dataflow类库中的多个Block构成;添加上游节点至所述上游节点列表,其中,所述上游节点用于表征目标Block的上一级Block,所述上一级Block为所述处理管道中与所述目标Block相邻,且早于所述目标Block执行操作的Block;以及根据所述上游节点列表中全部所述上游节点对应的上一级Block的运行状态确定所述目标Block的运行状态,其中,所述目标Block的运行状态包括以下之一:完成、取消和失败。
进一步地,根据所述上游节点列表中全部所述上游节点对应的上一级Block的运行状态确定所述目标Block的运行状态包括以下任一种:当所述上游节点列表中全部所述上游节点对应的上一级Block的运行状态均为完成时,则所述目标Block的运行状态为完成;当所述上游节点列表中全部所述上游节点中有任一所述上游节点对应的上一级Block的运行状态为失败时,则所述目标Block的运行状态为失败;当所述上游节点列表中全部所述上游节点中有任一所述上游节点对应的上一级Block的运行状态为取消时,则所述目标Block的运行状态为取消。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京国双科技有限公司,未经北京国双科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510714322.7/2.html,转载请声明来源钻瓜专利网。