一种数据处理的方法、装置及系统的制作方法

文档序号:6504540阅读:113来源:国知局
一种数据处理的方法、装置及系统的制作方法
【专利摘要】本发明公开了一种数据处理的方法,包括:根据每个数据处理节点上报的已处理数据的数据量确定所述每个数据处理节点的处理数据的能力参数;根据所述每个数据处理节点处理数据的能力参数,制定对已分配给所述每个数据处理节点的待处理数据的调整策略;向所述每个数据处理节点中的至少一个数据处理节点发送数据迁移指令,所述数据迁移指令中携带所述调整策略,以使所述至少一个数据处理节点根据所述调整策略调整所述待处理数据。本发明实施例提供的方法,可以动态均衡每个数据处理节点的数据分配量,尽量避免数据处理能力强的节点窃取数据处理能力弱的节点的数据,从而降低了网络拥堵。
【专利说明】一种数据处理的方法、装置及系统

【技术领域】
[0001]本发明涉及数据处理【技术领域】,具体涉及一种数据处理的方法、装置及系统。

【背景技术】
[0002]随着互联网信息量的迅速上升,对于大型的互联网企业和门户网站来说,对海量信息进行存储和处理以及对海量数据进行数据挖掘和统计分析是一件非常必要的事情。为了应对这种需求,云计算作为一种新的计算服务被提出来。
[0003]当前,绝大多数云计算系统采用映射化简(MapReduce)的模型开发应用程序。简单来说,MapReduce框架将要处理的海量数据分割成较小的输入文件数据,作业被划分成与输入数据块数目等同的映射(Map)任务和若干化简(Reduce)任务。由调度控制节点将这些Map任务和Reduce任务调度到有空闲资源数据处理节点上执行。它将数据文件按块均匀的分布在数据处理节点上,优先使处理划分在本地磁盘上的数据,当本地磁盘的数据处理结束后,“偷窃取”其他任务的数据来处理。
[0004]本发明的发明人发现,现有的集群架构中,处理能力强的数据处理节点频繁窃取处理能力弱的集群结点的任务,造成了网络拥堵。


【发明内容】

[0005]本发明实施例提供一种数据处理的方法,可以根据数据处理节点的处理能力,动态均衡每个数据处理节点的数据分配量,从而降低了网络拥堵。本发明还提供了相应的装置及系统。
[0006]本发明第一方面提供一种数据处理的方法,包括:
[0007]根据每个数据处理节点上报的已处理数据的数据量确定所述每个数据处理节点的处理数据的能力参数;
[0008]根据所述每个数据处理节点处理数据的能力参数,制定对已分配给所述每个数据处理节点的待处理数据的调整策略;
[0009]向所述每个数据处理节点中的至少一个数据处理节点发送数据迁移指令,所述数据迁移指令中携带所述调整策略,以使所述至少一个数据处理节点根据所述调整策略调整所述待处理数据。
[0010]结合第一方面,在第一种可能的实现方式中,所述根据所述每个数据处理节点处理数据的能力参数,制定对已分配给所述每个数据处理节点的待处理数据的调整策略,包括:
[0011]根据所述每个数据处理节点处理数据的能力参数,计算所述每个数据处理节点处理数据的平均能力参数;
[0012]根据所述每个数据处理节点处理数据的能力参数和所述每个数据处理节点处理数据的平均能力参数,计算所述每个数据处理节点的数据迁移因子;
[0013]根据所述每个数据处理节点的数据迁移因子,确定能力参数低于所述平均能力参数的数据处理节点的数据迁出量和能力参数高于所述平均能力参数的数据处理节点的数据迁入量;
[0014]对应的,所述向所述每个数据处理节点中的至少一个数据处理节点发送数据迁移指令,所述数据迁移指令中携带所述调整策略,以使所述至少一个数据处理节点根据所述调整策略调整所述待处理数据,包括:
[0015]向所述每个数据处理节点中的至少一个数据处理节点发送数据迁移指令,所述数据迁移指令中携带所述数据迁出量或者所述数据迁入量,以使能力参数低于所述平均能力参数的数据处理节点迁出所述数据迁出量的数据或者使所述能力参数高于所述平均能力参数的数据处理节点迁入所述数据迁入量的数据。
[0016]结合第一方面或第一方面第一种可能的实现方式,在第二种可能的实现方式中,所述方法还包括:
[0017]接收处于空闲状态的数据处理节点发送的数据窃取请求,所述处于空闲状态的数据处理节点为按照所述调整策略调整待处理数据后,处理完所述调整后的待处理数据的数据处理节点;
[0018]根据所述数据窃取请求,制定数据窃取策略,所述数据窃取策略用于指示所述处于空闲状态的数据处理节点从调度控制节点指定的数据处理节点窃取所述调度控制节点指定的窃取量的数据,所述窃取量为所述调度控制节点根据发送数据窃取请求的数据处理节点的处理数据的能力参数制定的窃取数据量;
[0019]向所述处于空闲状态的数据处理节点发送数据窃取指示消息,所述数据窃取指示消息中携带数据窃取策略。
[0020]结合第一方面第二种可能的实现方式,在第三种可能的实现方式中,所述制定数据窃取策略,包括:
[0021]确定与所述处于空闲状态的数据处理节点处于同一机架中的,且数据处理的能力参数低于所述处于空闲状态的数据处理节点数据处理的能力参数的所有数据处理节点;
[0022]从所述所有数据处理节点中选择数据处理的能力参数最低的数据处理节点作为所述指定的数据处理节点,并指定从所述指定的数据处理节点窃取数据的窃取量。
[0023]结合第一方面第二种可能的实现方式,在第四种可能的实现方式中,所述制定数据窃取策略,包括:
[0024]确定数据处理的能力参数最低的数据处理节点;
[0025]当所述数据处理的能力参数最低的数据处理节点有多个时,选择与所述处于空闲状态的数据处理节点处于同一机架中的,且数据处理的能力参数最低的数据处理节点作为所述指定的数据处理节点,并指定从所述指定的数据处理节点窃取数据的窃取量。
[0026]结合第一方面第二种可能的实现方式,在第五种可能的实现方式中,所述制定数据窃取策略,包括:
[0027]确定数据处理的能力参数低于预置阈值的所有数据处理节点;
[0028]从所述所有数据处理节点中选择数据处理的能力参数最低的数据处理节点作为所述指定的数据处理节点,并指定从所述指定的数据处理节点窃取数据的窃取量。
[0029]本发明第二方面提供一种数据处理的方法,包括:
[0030]向调度控制节点发送本数据处理节点已处理数据的数据量,以使所述调度控制节点根据所述已处理数据的数据量确定所述本数据处理节点的处理数据的能力参数;
[0031]接收所述调度控制节点发送的数据迁移指令,所述数据迁移指令中携带调整策略;
[0032]根据所述调整策略调整待处理数据。
[0033]结合第二方面,在第一种可能的实现方式中,当所述本数据处理节点处理数据的能力参数低于平均能力参数时,所述调整策略用于指示迁出指定迁出量的数据给指定的数据处理节点,所述平均能力参数为所述调度控制节点根据每个数据处理节点的处理数据的能力参数计算得到的平均数;
[0034]所述根据所述调整策略调整待处理数据,包括:
[0035]根据所述调整策略,迁出所述调度控制节点指定迁出量的数据给所述调度控制节点指定的数据处理节点。
[0036]结合第二方面,在第二种可能的实现方式中,当所述本数据处理节点处理数据的能力参数高于平均能力参数时,所述调整策略用于指示从指定的数据处理节点迁入指定迁入量的数据,所述平均能力参数为所述调度控制节点根据每个数据处理节点的处理数据的能力参数计算得到的平均数;
[0037]所述根据所述调整策略调整待处理数据,包括:
[0038]根据所述调整策略,从所述调度控制节点指定的数据处理节点迁入所述调度控制节点指定迁入量的数据到所述本数据处理节点。
[0039]结合第二方面,在第三种可能的实现方式中,所述方法还包括:
[0040]当所述本数据处理节点处理完按照所述预置策略调整后的待处理数据后,向所述调度控制节点发送数据窃取请求;
[0041]接收所述调度控制节点发送的数据窃取指示消息,所述数据窃取指示消息中携带数据窃取策略,所述数据窃取策略用于指示所述发送数据窃取请求的数据处理节点从所述调度控制节点指定的数据处理节点窃取所述调度控制节点指定的窃取量的数据,所述窃取量为所述调度控制节点根据发送数据窃取请求的数据处理节点的处理数据的能力参数制定的窃取数据量;
[0042]从所述调度控制节点指定的数据处理节点窃取所述调度控制节点指定的窃取量的数据。
[0043]本发明第三方面提供一种调度控制装置,包括:
[0044]接收单元,用于接收每个数据处理节点上报的已处理数据的数据量;
[0045]确定单元,用于根据所述接收单元接收的每个数据处理节点上报的已处理数据的数据量确定所述每个数据处理节点的处理数据的能力参数;
[0046]策略制定单元,用于根据所述确定单元确定的每个数据处理装置处理数据的能力参数,制定对已分配给所述每个数据处理装置的待处理数据的调整策略;
[0047]发送单元,用于向所述每个数据处理节点中的至少一个数据处理节点发送数据迁移指令,所述数据迁移指令中携带所述策略制定单元制定的调整策略,以使所述至少一个数据处理节点根据所述调整策略调整所述待处理数据。
[0048]结合第三方面,在第一种可能的实现方式中,所述策略制定单元包括:
[0049]第一计算子单元,用于根据所述每个数据处理装置处理数据的能力参数,计算所述每个数据处理装置处理数据的平均能力参数;
[0050]第二计算子单元,用于根据所述每个数据处理装置处理数据的能力参数和所述第一计算子单元计算的每个数据处理装置处理数据的平均能力参数,计算所述每个数据处理装置的数据迁移因子;
[0051]第一确定子单元,用于根据所述第二计算子单元计算出的每个数据处理装置的数据迁移因子,确定能力参数低于所述平均能力参数的数据处理装置的数据迁出量和能力参数高于所述平均能力参数的数据处理装置的数据迁入量;
[0052]所述发送单元,用于向所述每个数据处理节点中的至少一个数据处理节点发送数据迁移指令,所述数据迁移指令中携带所述数据迁出量或者所述数据迁入量,以使能力参数低于所述平均能力参数的数据处理节点迁出所述数据迁出量的数据或者使所述能力参数高于所述平均能力参数的数据处理节点迁入所述数据迁入量的数据。
[0053]结合第三方面或第三方面第一种可能的实现方式,在第二种可能的实现方式中,所述接收单元,还用于接收处于空闲状态的数据处理节点发送的数据窃取请求,所述处于空闲状态的数据处理节点为按照所述调整策略调整待处理数据后,处理完所述调整后的待处理数据的数据处理节点;
[0054]所述策略制定单元,还用于根据所述接收单元接收的数据窃取请求,制定数据窃取策略,所述数据窃取策略用于指示所述处于空闲状态的数据处理节点从调度控制节点指定的数据处理节点窃取所述调度控制节点指定的窃取量的数据,所述窃取量为所述调度控制节点根据发送数据窃取请求的数据处理节点的处理数据的能力参数制定的窃取数据量;
[0055]所述发送单元,还用于向所述处于空闲状态的数据处理节点发送数据窃取指示消息,所述数据窃取指示消息中携带数据窃取策略。
[0056]结合第三方面第二种可能的实现方式,在第三种可能的实现方式中,所述策略制定单元包括:
[0057]第二确定子单元,用于确定与所述处于空闲状态的数据处理节点处于同一机架中的,且数据处理的能力参数低于所述处于空闲状态的数据处理节点数据处理的能力参数的所有数据处理节点;
[0058]第一选择子单元,用于从所述第二确定子单元确定的所有数据处理节点中选择数据处理的能力参数最低的数据处理节点作为所述指定的数据处理节点,并指定从所述指定的数据处理节点窃取数据的窃取量。
[0059]结合第三方面第二种可能的实现方式,在第四种可能的实现方式中,所述策略制定单元包括:
[0060]第三确定子单元,用于确定数据处理的能力参数最低的数据处理节点;
[0061]第二选择子单元,用于当所述第三确定子单元确定的数据处理的能力参数最低的数据处理节点有多个时,选择与所述处于空闲状态的数据处理节点处于同一机架中的,且数据处理的能力参数最低的数据处理节点作为所述指定的数据处理节点,并指定从所述指定的数据处理节点窃取数据的窃取量。
[0062]结合第三方面第二种可能的实现方式,在第五种可能的实现方式中,所述策略制定单元包括:
[0063]第四确定子单元,用于确定数据处理的能力参数低于预置阈值的所有数据处理节占.
[0064]第三选择子单元,用于从所述第四确定子单元确定的所有数据处理节点中选择数据处理的能力参数最低的数据处理节点作为所述指定的数据处理节点,并指定从所述指定的数据处理节点窃取数据的窃取量。
[0065]本发明第四方面提供一种数据处理装置,包括:
[0066]发送单元,用于向调度控制节点发送本数据处理节点已处理数据的数据量,以使所述调度控制节点根据所述已处理数据的数据量确定所述本数据处理节点的处理数据的能力参数;
[0067]接收单元,用于接收所述调度控制节点发送的数据迁移指令,所述数据迁移指令中携带调整策略;
[0068]调整单元,用于根据所述接收单元接收的调整策略调整待处理数据。
[0069]结合第四方面,在第一种可能的实现方式中,当所述本数据处理节点处理数据的能力参数低于平均能力参数时,所述调整策略用于指示迁出指定迁出量的数据给指定的数据处理节点,所述平均能力参数为所述调度控制节点根据每个数据处理节点的处理数据的能力参数计算得到的平均数;
[0070]所述调整单元,用于根据所述调整策略,迁出所述调度控制节点指定迁出量的数据给所述调度控制节点指定的数据处理节点。
[0071]结合第四方面,在第二种可能的实现方式中,当所述本数据处理节点处理数据的能力参数高于平均能力参数时,所述调整策略用于指示从指定的数据处理节点迁入指定迁入量的数据,所述平均能力参数为所述调度控制节点根据每个数据处理节点的处理数据的能力参数计算得到的平均数;
[0072]所述调整单元,用于根据所述调整策略,从所述调度控制节点指定的数据处理节点迁入所述调度控制节点指定迁入量的数据到所述本数据处理节点。
[0073]结合第四方面,在第三种可能的实现方式中,所述数据处理装置还包括:数据窃取单元,
[0074]所述发送单元,还用于当所述本数据处理节点处理完按照所述预置策略调整后的待处理数据后,向所述调度控制节点发送数据窃取请求;
[0075]所述接收单元,还用于接收所述调度控制节点发送的数据窃取指示消息,所述数据窃取指示消息中携带数据窃取策略,所述数据窃取策略用于指示所述发送数据窃取请求的数据处理节点从所述调度控制节点指定的数据处理节点窃取所述调度控制节点指定的窃取量的数据,所述窃取量为所述调度控制节点根据发送数据窃取请求的数据处理节点的处理数据的能力参数制定的窃取数据量;
[0076]所述数据窃取单元,用于从所述调度控制节点指定的数据处理节点窃取所述调度控制节点指定的窃取量的数据。
[0077]本发明第五方面提供一种数据处理系统,包括:调度控制装置和多个数据处理装置,
[0078]所述调度控制装置为上述技术方案所述的调度控制装置;
[0079]所述数据处理装置为上述技术方案所述的数据处理装置。
[0080]本发明实施例采用根据每个数据处理节点上报的已处理数据的数据量确定所述每个数据处理节点的处理数据的能力参数;根据所述每个数据处理节点处理数据的能力参数,制定对已分配给所述每个数据处理节点的待处理数据的调整策略;向所述每个数据处理节点中的至少一个数据处理节点发送数据迁移指令,所述数据迁移指令中携带所述调整策略,以使所述至少一个数据处理节点根据所述调整策略调整所述待处理数据。与现有技术中数据处理能力强的节点频繁窃取数据处理能力弱的节点的数据,造成网络拥堵相比,本发明实施例提供的方法,可以动态均衡每个数据处理节点的数据分配量,尽量避免数据处理能力强的节点窃取数据处理能力弱的节点的数据,从而降低了网络拥堵。

【专利附图】

【附图说明】
[0081]为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0082]图1是本发明实施例中数据处理的方法的一实施例示意图;
[0083]图2是本发明实施例中数据处理的方法的另一实施例示意图;
[0084]图3是本发明实施例中数据处理的方法的另一实施例示意图;
[0085]图4是本发明实施例中调度控制装置的一实施例示意图;
[0086]图5是本发明实施例中调度控制装置的一实施例示意图;
[0087]图6是本发明实施例中调度控制装置的一实施例示意图;
[0088]图7是本发明实施例中调度控制装置的一实施例示意图;
[0089]图8是本发明实施例中调度控制装置的一实施例示意图;
[0090]图9是本发明实施例中数据处理装置的一实施例示意图;
[0091]图10是本发明实施例中数据处理装置的另一实施例示意图;
[0092]图11是本发明实施例中数据处理装置的另一实施例示意图;
[0093]图12是本发明实施例中调度控制装置的一实施例示意图;
[0094]图13是本发明实施例中数据处理装置的另一实施例示意图;
[0095]图14是本发明实施例中数据处理系统的一实施例示意图。

【具体实施方式】
[0096]本发明实施例提供一种数据处理的方法,可以根据数据处理节点的处理能力,动态均衡每个数据处理节点的数据分配量,从而降低了网络拥堵。本发明还提供了相应的装置及系统。以下分别进行详细说明。
[0097]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0098]数据处理的集群架构中可以有很多数据处理节点,数据处理节点可以为计算机、多个数据处理节点由一个调度控制节点控制,调度控制节点可以为控制器或者假如了本发明实施例中调度控制功能程序的计算机。调度控制节点也就是调度控制装置,数据处理节点也就是数据处理装置。
[0099]参阅图1,本发明实施例提供的数据处理的方法的一实施例包括:
[0100]101、调度控制装置根据每个数据处理节点上报的已处理数据的数据量确定所述每个数据处理节点的处理数据的能力参数。
[0101]每个数据处理节点已处理数据的数据量可以为每个数据处理节点前预置次数处理数据的数据量,每个数据处理节点的预置次数相同,如,都是5次或6次,或者是其他次数,在此不做限定。
[0102]实际上,每个数据处理节点已处理数据的数据量还可以是每个数据处理节点统计相同时间段内的数据处理量。
[0103]数据处理的能力参数可以用分数来表示,调度控制节点接收到每个数据处理节点已处理数据的数据量后,为每个数据处理节点打分。
[0104]102、调度控制装置根据所述每个数据处理节点处理数据的能力参数,制定对已分配给所述每个数据处理节点的待处理数据的调整策略。
[0105]因数据处理节点的硬件有差别,所以每个数据处理节点的数据处理能力也不同,如:2核、4核、8核和16核的数据处理节点的数据处理能力逐级递增。
[0106]这样,在最初初始化时,为每个数据处理节点分配的待处理数据量相同时,就会有的数据处理节点处理的快,有的数据处理节点处理的慢,这样,调度控制装置可以指示数据处理能力差的数据处理节点让出一部分待处理数据给数据处理能力强的节点。
[0107]103、调度控制装置向所述每个数据处理节点中的至少一个数据处理节点发送数据迁移指令,所述数据迁移指令中携带所述调整策略,以使所述至少一个数据处理节点根据所述调整策略调整所述待处理数据。
[0108]本发明实施例采用根据每个数据处理节点上报的已处理数据的数据量确定所述每个数据处理节点的处理数据的能力参数;根据所述每个数据处理节点处理数据的能力参数,制定对已分配给所述每个数据处理节点的待处理数据的调整策略;向所述每个数据处理节点中的至少一个数据处理节点发送数据迁移指令,所述数据迁移指令中携带所述调整策略,以使所述至少一个数据处理节点根据所述调整策略调整所述待处理数据。与现有技术中数据处理能力强的节点频繁窃取数据处理能力弱的节点的数据,造成网络拥堵相比,本发明实施例提供的方法,可以动态均衡每个数据处理节点的数据分配量,尽量避免数据处理能力强的节点窃取数据处理能力弱的节点的数据,从而降低了网络拥堵。
[0109]可选地,在上述图1对应的实施例的基础上,本发明实施例提供的数据处理的方法的另一实施例中,所述根据所述每个数据处理节点处理数据的能力参数,制定对已分配给所述每个数据处理节点的待处理数据的调整策略,可以包括:
[0110]根据所述每个数据处理节点处理数据的能力参数,计算所述每个数据处理节点处理数据的平均能力参数;
[0111]根据所述每个数据处理节点处理数据的能力参数和所述每个数据处理节点处理数据的平均能力参数,计算所述每个数据处理节点的数据迁移因子;
[0112]根据所述每个数据处理节点的数据迁移因子,确定能力参数低于所述平均能力参数的数据处理节点的数据迁出量和能力参数高于所述平均能力参数的数据处理节点的数据迁入量;
[0113]对应的,所述向所述每个数据处理节点中的至少一个数据处理节点发送数据迁移指令,所述数据迁移指令中携带所述调整策略,以使所述至少一个数据处理节点根据所述调整策略调整所述待处理数据,包括:
[0114]向所述每个数据处理节点中的至少一个数据处理节点发送数据迁移指令,所述数据迁移指令中携带所述数据迁出量或者所述数据迁入量,以使能力参数低于所述平均能力参数的数据处理节点迁出所述数据迁出量的数据或者使所述能力参数高于所述平均能力参数的数据处理节点迁入所述数据迁入量的数据。
[0115]本发明实施例中,调度控制装置确定每个数据处理节点处理数据的能力参数后,计算平均能力参数。如:确定4个数据处理节点的数据处理的能力参数分别为I分、2分、4分和8分,这样,平均分=(1+2+4+8)/4=3.75分。然后,根据每个数据处理节点的数据处理的得分和平均分,计算每个数据处理节点的数据迁移因子。
[0116]数据迁移因子可以用(每个数据处理节点的得分-平均分)/平均分计算得到,这样,依次计算的每个数据处理节点的数据迁移因子分别为:-0.7333、-0.4667,0.0667、1.1333,这样,就可以指示数据迁移因子为负数的数据处理节点让出数据,指示数据迁移因子为正数的数据处理节点接收数据。
[0117]具体的针对每个数据处理节点的数据迁入量或者数据迁出量可以根据数据迁移因子计算得到。假如在初始状态给每个数据处理节点分配的待处理数据都为20帧,那么,第一个数据处理节点可以出让20*0.7333帧的数据,第二个数据处理节点可以出让20*0.4667帧的数据,第三个数据处理节点可以接受20*0.0667帧的数据,第四个数据处理节点可以接受20*1.1333帧的数据,为了便于处理,在迁移数据时通常迁移整数,例如,20*0.7333=14.666帧,按照四舍五入的方式,第一个数据处理节点可以出让15帧的数据,同样道理,后面的几个节点也都按照这种方式让出或者接受数据。
[0118]可选地,在上述图1对应的实施例或图1对应的可选实施例的基础上,本发明实施例提供的数据处理的方法的另一实施例中,所述方法还可以包括:
[0119]接收处于空闲状态的数据处理节点发送的数据窃取请求,所述处于空闲状态的数据处理节点为按照所述调整策略调整待处理数据后,处理完所述调整后的待处理数据的数据处理节点;
[0120]根据所述数据窃取请求,制定数据窃取策略,所述数据窃取策略用于指示所述处于空闲状态的数据处理节点从调度控制节点指定的数据处理节点窃取所述调度控制节点指定的窃取量的数据,所述窃取量为所述调度控制节点根据发送数据窃取请求的数据处理节点的处理数据的能力参数制定的窃取窃取数据量;
[0121]向所述处于空闲状态的数据处理节点发送数据窃取指示消息,所述数据窃取指示消息中携带数据窃取策略。
[0122]本发明实施例中,当数据处理能力强的数据处理节点在经过数据调整后,依然优先处理完分配的数据后,可以向调度控制节点发送数据窃取请求,调度控制节点根据该数据窃取请求,确定从那个数据处理节点窃取数据,并确定窃取量,该窃取量调度控制节点可以根据发送数据窃取请求的数据处理节点的处理数据的能力参数制定,如:发送数据窃取请求的数据处理节点的处理数据的能力参数是4分时,可以理解为发送数据窃取请求的数据处理节点处理数据的能力是得分为I分的数据处理节点的能力的4倍,当得分为I分的数据处理节点还有10帧的待处理数据时,调度控制节点可以指定从得分为I分的数据处理节点窃取8帧的数据。
[0123]可选地,在上述图1对应的另一实施例的基础上,本发明实施例提供的数据处理的方法的另一可选实施例中,所述制定数据窃取策略,可以包括:
[0124]确定与所述处于空闲状态的数据处理节点处于同一机架中的,且数据处理的能力参数低于所述处于空闲状态的数据处理节点数据处理的能力参数的所有数据处理节点;
[0125]从所述所有数据处理节点中选择数据处理的能力参数最低的数据处理节点作为所述指定的数据处理节点,并指定从所述指定的数据处理节点窃取数据的窃取量。
[0126]本发明实施例中,数据处理节点在机房摆设时要放在机架上,同一机架上的数据处理节点的距离较近。在制定窃取策略时,优先从同一机架上窃取数据处理的能力参数最低的数据处理节点上的指定数量的数据。
[0127]可选地,在上述图1对应的另一实施例的基础上,本发明实施例提供的数据处理的方法的另一可选实施例中,所述制定数据窃取策略,可以包括:
[0128]确定数据处理的能力参数最低的数据处理节点;
[0129]当所述数据处理的能力参数最低的数据处理节点有多个时,选择与所述处于空闲状态的数据处理节点处于同一机架中的,且数据处理的能力参数最低的数据处理节点作为所述指定的数据处理节点,并指定从所述指定的数据处理节点窃取数据的窃取量。
[0130]本发明实施例中,调度控制装置可以优先确定其控制下的所有数据处理节点中,数据处理的能力参数最低的数据处理节点,不管与处于空闲状态的数据处理节点是否在同一机架上,当当所述数据处理的能力参数最低的数据处理节点有多个时,如果与处于空闲状态的数据处理节点处于都不在同一机架中,那么从距离最近的机架中选择一个能力参数最低的数据处理节点,如果有在一个机架上的,则从同一机架上选择指定的数据处理节点。
[0131]可选地,在上述图1对应的另一实施例的基础上,本发明实施例提供的数据处理的方法的另一可选实施例中,所述制定数据窃取策略,可以包括:
[0132]确定数据处理的能力参数低于预置阈值的所有数据处理节点;
[0133]从所述所有数据处理节点中选择数据处理的能力参数最低的数据处理节点作为所述指定的数据处理节点,并指定从所述指定的数据处理节点窃取数据的窃取量。
[0134]本发明实施例中,也可以预先设置一个阈值,确定数据处理的能力参数低于预置阈值的所有数据处理节点,这样,如果有得分低于此预置阈值的数据处理节点,则无论是否与处于空闲状态的数据处理节点在同一机架上,均选择得分低的节点窃取。如果同一机架上有得分低于预置阈值的,可以先从同一机架上窃取。
[0135]参阅图2,本发明实施例提供的数据处理的方法的另一实施例包括:
[0136]201、数据处理装置向调度控制节点发送本数据处理节点已处理数据的数据量,以使所述调度控制节点根据所述已处理数据的数据量确定所述本数据处理节点的处理数据的能力参数。
[0137]每个数据处理节点将已处理数据的数据量发送给调度控制节点,供调度控制节点计算每个数据处理节点的处理数据的能力参数。
[0138]202、数据处理装置接收所述调度控制节点发送的数据迁移指令,所述数据迁移指令中携带调整策略。
[0139]203、数据处理装置根据所述调整策略调整待处理数据。
[0140]本发明实施例中,向调度控制节点发送本数据处理节点已处理数据的数据量,以使所述调度控制节点根据所述已处理数据的数据量确定所述本数据处理节点的处理数据的能力参数;接收所述调度控制节点发送的数据迁移指令,所述数据迁移指令中携带调整策略;根据所述调整策略调整待处理数据。与现有技术中数据处理能力强的节点频繁窃取数据处理能力弱的节点的数据,造成网络拥堵相比,本发明实施例提供的方法,可以动态均衡每个数据处理节点的数据分配量,尽量避免数据处理能力强的节点窃取数据处理能力弱的节点的数据,从而降低了网络拥堵。
[0141]可选地,在上述图2对应的实施例的基础上,本发明实施例提供的数据处理的方法的另一实施例中,当所述本数据处理节点处理数据的能力参数低于平均能力参数时,所述调整策略用于指示迁出指定迁出量的数据给指定的数据处理节点,所述平均能力参数为所述调度控制节点根据每个数据处理节点的处理数据的能力参数计算得到的平均数;
[0142]所述根据所述调整策略调整待处理数据,可以包括:
[0143]根据所述调整策略,迁出所述调度控制节点指定迁出量的数据给所述调度控制节点指定的数据处理节点。
[0144]本发明实施例中,因调度控制装置有每个数据处理节点的数据处理的能力参数和平均能力参数,这样,调度控制装置就可以根据每个数据处理节点的数据处理的能力参数和平均能力参数为每个数据处理节点制定不同的调整策略。
[0145]例如:第一个数据处理节点的得分为I分、第二个数据处理节点的得分为2分、第三个数据处理节点的得分为4分、第四个数据处理节点的得分为8分时,计算出的平均分为
3.75分。针对第一数据处理节点和第二数据处理节点,调度控制装置要通过调整策略指示这两个数据处理节点让出一部分数据给数据处理能力强的节点,假设:第一数据处理节点让出16个数据给第四数据处理节点,第二数据处理节点让出6个数据给第三数据处理节点。
[0146]第一数据处理节点和第二数据处理节点收到调整策略后,就会按照调整策略,分别迁出16个数据给第四数据处理节点和迁出6个数据给第三数据处理节点。
[0147]可选地,在上述图2对应的实施例的基础上,本发明实施例提供的数据处理的方法的另一实施例中,当所述本数据处理节点处理数据的能力参数高于平均能力参数时,所述调整策略用于指示从指定的数据处理节点迁入指定迁入量的数据,所述平均能力参数为所述调度控制节点根据每个数据处理节点的处理数据的能力参数计算得到的平均数;
[0148]所述根据所述调整策略调整待处理数据,可以包括:
[0149]根据所述调整策略,从所述调度控制节点指定的数据处理节点迁入所述调度控制节点指定迁入量的数据到所述本数据处理节点。
[0150]本发明实施例中同上个实施例类似,当调度控制装置在调整策略中指示第三数据处理节点从第二数据处理节点处迁入6个数据,指示第四数据处理节点从第一数据处理节点处迁入16个数据时,第三数据处理节点和第四数据处理节点就会按照调整策略的指示,分别从第二数据处理节点迁入6个数据,从第一数据处理节点迁入16个数据。
[0151]可选地,在上述图2对应的实施例的基础上,本发明实施例提供的数据处理的方法的另一实施例中,所述方法还可以包括:
[0152]当所述本数据处理节点处理完按照所述预置策略调整后的待处理数据后,向所述调度控制节点发送数据窃取请求;
[0153]接收所述调度控制节点发送的数据窃取指示消息,所述数据窃取指示消息中携带数据窃取策略,所述数据窃取策略用于指示所述发送数据窃取请求的数据处理节点从所述调度控制节点指定的数据处理节点窃取所述调度控制节点指定的窃取量的数据,所述窃取量为所述调度控制节点根据发送数据窃取请求的数据处理节点的处理数据的能力参数制定的窃取数据量;
[0154]从所述调度控制节点指定的数据处理节点窃取所述调度控制节点指定的窃取量的数据。
[0155]本发明实施例中,当数据处理能力强的数据处理节点在经过数据调整后,依然优先处理完分配的数据后,可以向调度控制节点发送数据窃取请求,调度控制节点根据该数据窃取请求,确定从哪个数据处理节点窃取数据,并确定窃取量,该窃取量调度控制节点可以根据发送数据窃取请求的数据处理节点的处理数据的能力参数制定,如:发送数据窃取请求的数据处理节点的处理数据的能力参数是4分时,可以理解为发送数据窃取请求的数据处理节点处理数据的能力是得分为I分的数据处理节点的能力的4倍,当得分为I分的数据处理节点还有10帧的待处理数据时,调度控制节点可以指定从得分为I分的数据处理节点窃取8帧的数据。
[0156]为了便于理解,下面以一个应用场景为例,说明本发明实施例中数据处理的方法的过程:
[0157]参阅图3,图3示出的数据处理示意图中包含第一数据处理节点、第二数据处理节点、第三数据处理节点、第四数据处理节点和调度控制节点。
[0158]第一数据处理节点、第二数据处理节点、第三数据处理节点、第四数据处理节点分别为2核、4核、8核和16核计算机,这四个数据处理节点统计完已处理数据的数据量后,将统计的数据量分别上报给调度控制节点,调度控制节点计算出第一数据处理节点、第二数据处理节点、第三数据处理节点、第四数据处理节点的数据处理能力得分为I分、2分、4分、8分。调度控制节点根据这四个数据处理节点的得分,计算出平均分=(1+2+4+8)/4=3.75分。然后,根据每个数据处理节点的数据处理的得分和平均分,计算每个数据处理节点的数据迁移因子。
[0159]数据迁移因子可以用(每个数据处理节点的得分-平均分)/平均分计算得到,这样,依次计算的每个数据处理节点的数据迁移因子分别为:-0.7333、-0.4667,0.0667、
1.1333,这样,就可以指示数据迁移因子为负数的数据处理节点让出数据,指示数据迁移因子为正数的数据处理节点接收数据。
[0160]调度控制节点分别向第一数据处理节点、第二数据处理节点、第三数据处理节点、第四数据处理节点下发调整策略,针对这四个数据处理节点的调整策略是不同的,假设在初始状态给这四个数据处理节点分配的待处理数据都为20帧,那么:针对第一数据处理节点的调整策略可以为指示第一个数据处理节点迁移出20*0.7333帧的数据给第四数据处理节点,针对第二数据处理节点的调整策略可以为指示第二个数据处理节点迁移出20*0.4667帧的数据给第三数据处理节点和第四数据处理节点,针对第三数据处理节点的调整策略可以为指示第三个数据处理节点从第二数据处理节点处迁入20*0.0667帧的数据,针对第四数据处理节点的调整策略可以为指示第四数据处理节点从第一数据处理节点处和第二数据处理节点处从迁入20*1.1333帧的数据,为了便于处理,在迁移数据时通常迁移整数,例如,20*0.7333=14.666帧,按照四舍五入的方式,第一个数据处理节点可以出让15帧的数据,同样道理,后面的几个节点也都按照这种方式让出或者接受数据。
[0161]参阅图4,本发明实施例提供的调度控制装置的一实施例包括:
[0162]接收单元301,用于接收每个数据处理节点上报的已处理数据的数据量;
[0163]确定单元302,用于根据所述接收单元301接收的每个数据处理节点上报的已处理数据的数据量确定所述每个数据处理节点的处理数据的能力参数;
[0164]策略制定单元303,用于根据所述确定单元302确定的每个数据处理装置处理数据的能力参数,制定对已分配给所述每个数据处理装置的待处理数据的调整策略;
[0165]发送单元304,用于向所述每个数据处理节点中的至少一个数据处理节点发送数据迁移指令,所述数据迁移指令中携带所述策略制定单元303制定的调整策略,以使所述至少一个数据处理节点根据所述调整策略调整所述待处理数据。
[0166]本发明实施例中,接收单元301接收每个数据处理节点上报的已处理数据的数据量;确定单元302根据所述接收单元301接收的每个数据处理节点上报的已处理数据的数据量确定所述每个数据处理节点的处理数据的能力参数;策略制定单元303根据所述确定单元302确定的每个数据处理装置处理数据的能力参数,制定对已分配给所述每个数据处理装置的待处理数据的调整策略;发送单元304向所述每个数据处理节点中的至少一个数据处理节点发送数据迁移指令,所述数据迁移指令中携带所述策略制定单元303制定的调整策略,以使所述至少一个数据处理节点根据所述调整策略调整所述待处理数据。与现有技术中数据处理能力强的节点频繁窃取数据处理能力弱的节点的数据,造成网络拥堵相t匕,本发明实施例提供的调度控制装置,可以动态均衡每个数据处理节点的数据分配量,尽量避免数据处理能力强的节点窃取数据处理能力弱的节点的数据,从而降低了网络拥堵。
[0167]可选地,在上述图4对应的实施例的基础上,参阅图5,本发明实施例提供的调度控制装置的另一实施例中,所述策略制定单元303包括:
[0168]第一计算子单元3031,用于根据所述每个数据处理装置处理数据的能力参数,计算所述每个数据处理装置处理数据的平均能力参数;
[0169]第二计算子单元3032,用于根据所述每个数据处理装置处理数据的能力参数和所述第一计算子单元3031计算的每个数据处理装置处理数据的平均能力参数,计算所述每个数据处理装置的数据迁移因子;
[0170]确定子单元3033,用于根据所述第二计算子单元3032计算出的每个数据处理装置的数据迁移因子,确定能力参数低于所述平均能力参数的数据处理装置的数据迁出量和能力参数高于所述平均能力参数的数据处理装置的数据迁入量;
[0171]所述发送单元,用于向所述每个数据处理节点中的至少一个数据处理节点发送数据迁移指令,所述数据迁移指令中携带所述数据迁出量或者所述数据迁入量,以使能力参数低于所述平均能力参数的数据处理节点迁出所述数据迁出量的数据或者使所述能力参数高于所述平均能力参数的数据处理节点迁入所述数据迁入量的数据。
[0172]可选地,在上述图4对应的实施例的基础上,参阅图6,本发明实施例提供的调度控制装置的另一实施例中,
[0173]所述接收单元301,还用于接收处于空闲状态的数据处理节点发送的数据窃取请求,所述处于空闲状态的数据处理节点为按照所述调整策略调整待处理数据后,处理完所述调整后的待处理数据的数据处理节点;
[0174]所述策略制定单元303,还用于根据所述接收单元301接收的数据窃取请求,制定数据窃取策略,所述数据窃取策略用于指示所述处于空闲状态的数据处理节点从调度控制节点指定的数据处理节点窃取所述调度控制节点指定的窃取量的数据,所述窃取量为所述调度控制节点根据发送数据窃取请求的数据处理节点的处理数据的能力参数制定的窃取数据量;
[0175]所述发送单元304,还用于向所述处于空闲状态的数据处理节点发送数据窃取指示消息,所述数据窃取指示消息中携带所述策略制定单元303制定的数据窃取策略。
[0176]可选地,在上述图4对应的实施例的基础上,参阅图7,本发明实施例提供的调度控制装置的另一实施例中,所述策略制定单元302包括:
[0177]第二确定子单元3034,用于确定与所述处于空闲状态的数据处理节点处于同一机架中的,且数据处理的能力参数低于所述处于空闲状态的数据处理节点数据处理的能力参数的所有数据处理节点;
[0178]第一选择子单元3035,用于从所述第二确定子单元3034确定的所有数据处理节点中选择数据处理的能力参数最低的数据处理节点作为所述指定的数据处理节点,并指定从所述指定的数据处理节点窃取数据的窃取量。
[0179]可选地,在上述图4对应的实施例的基础上,参阅图8,本发明实施例提供的调度控制装置的另一实施例中,所述策略制定单元302包括:
[0180]第三确定子单元3036,用于确定数据处理的能力参数最低的数据处理节点;
[0181]第二选择子单元3037,用于当所述第三确定子单元3036确定的数据处理的能力参数最低的数据处理节点有多个时,选择与所述处于空闲状态的数据处理节点处于同一机架中的,且数据处理的能力参数最低的数据处理节点作为所述指定的数据处理节点,并指定从所述指定的数据处理节点窃取数据的窃取量。
[0182]可选地,在上述图4对应的实施例的基础上,参阅图9,本发明实施例提供的调度控制装置的另一实施例中,所述策略制定单元303包括:
[0183]第四确定子单元3038,用于确定数据处理的能力参数低于预置阈值的所有数据处理节点;
[0184]第三选择子单元3039,用于从所述第四确定子单元3038确定的所有数据处理节点中选择数据处理的能力参数最低的数据处理节点作为所述指定的数据处理节点,并指定从所述指定的数据处理节点窃取数据的窃取量。
[0185]参阅图10,本发明实施例提供的数据处理装置的一实施例包括:
[0186]发送单元401,用于向调度控制节点发送本数据处理节点已处理数据的数据量,以使所述调度控制节点根据所述已处理数据的数据量确定所述本数据处理节点的处理数据的能力参数;
[0187]接收单元402,用于接收所述调度控制节点发送的数据迁移指令,所述数据迁移指令中携带调整策略;
[0188]调整单元403,用于根据所述接收单元401接收的调整策略调整待处理数据。
[0189]本发明实施例中,发送单元401向调度控制节点发送本数据处理节点已处理数据的数据量,以使所述调度控制节点根据所述已处理数据的数据量确定所述本数据处理节点的处理数据的能力参数;接收单元402接收所述调度控制节点发送的数据迁移指令,所述数据迁移指令中携带调整策略;调整单元403根据所述接收单元401接收的调整策略调整待处理数据。与现有技术中数据处理能力强的节点频繁窃取数据处理能力弱的节点的数据,造成网络拥堵相比,本发明实施例提供的数据处理装置,可以动态均衡每个数据处理节点的数据分配量,尽量避免数据处理能力强的节点窃取数据处理能力弱的节点的数据,从而降低了网络拥堵。
[0190]可选地,在上述图10对应的实施例的基础上,本发明实施例提供的数据处理的装置的另一实施例中,
[0191]当所述本数据处理节点处理数据的能力参数低于平均能力参数时,所述调整策略用于指示迁出指定迁出量的数据给指定的数据处理节点,所述平均能力参数为所述调度控制节点根据每个数据处理节点的处理数据的能力参数计算得到的平均数;
[0192]所述调整单元402,用于根据所述调整策略,迁出所述调度控制节点指定迁出量的数据给所述调度控制节点指定的数据处理节点。
[0193]可选地,在上述图10对应的实施例的基础上,本发明实施例提供的数据处理的装置的另一实施例中,
[0194]当所述本数据处理节点处理数据的能力参数高于平均能力参数时,所述调整策略用于指示从指定的数据处理节点迁入指定迁入量的数据,所述平均能力参数为所述调度控制节点根据每个数据处理节点的处理数据的能力参数计算得到的平均数;
[0195]所述调整单元402,用于根据所述调整策略,从所述调度控制节点指定的数据处理节点迁入所述调度控制节点指定迁入量的数据到所述本数据处理节点。
[0196]可选地,在上述图10对应的实施例的基础上,参阅图11,本发明实施例提供的数据处理的装置的另一实施例中,所述数据处理装置还包括:数据窃取单元406,
[0197]所述发送单元401,还用于当所述本数据处理节点处理完按照所述预置策略调整后的待处理数据后,向所述调度控制节点发送数据窃取请求;
[0198]所述接收单元402,还用于接收所述调度控制节点发送的数据窃取指示消息,所述数据窃取指示消息中携带数据窃取策略,所述数据窃取策略用于指示所述发送数据窃取请求的数据处理节点从所述调度控制节点指定的数据处理节点窃取所述调度控制节点指定的窃取量的数据,所述窃取量为所述调度控制节点根据发送数据窃取请求的数据处理节点的处理数据的能力参数制定的窃取数据量;
[0199]所述数据窃取单元404,用于从所述调度控制节点指定的数据处理节点窃取所述调度控制节点指定的窃取量的数据。
[0200]图12是本发明实施例调度控制装置30的结构示意图。调度控制装置30可包括输入设备310、输出设备320、处理器330和存储器340。
[0201]存储器340可以包括只读存储器和随机存取存储器,并向处理器330提供指令和数据。存储器340的一部分还可以包括非易失性随机存取存储器(NVRAM)。
[0202]存储器340存储了如下的元素,可执行模块或者数据结构,或者它们的子集,或者它们的扩展集:
[0203]操作指令:包括各种操作指令,用于实现各种操作。
[0204]操作系统:包括各种系统程序,用于实现各种基础业务以及处理基于硬件的任务。
[0205]在本发明实施例中,处理器330通过调用存储器340存储的操作指令(该操作指令可存储在操作系统中),执行如下操作:
[0206]根据每个数据处理节点上报的已处理数据的数据量确定所述每个数据处理节点的处理数据的能力参数,根据所述每个数据处理节点处理数据的能力参数,制定对已分配给所述每个数据处理节点的待处理数据的调整策略;通过输出设备320向所述每个数据处理节点中的至少一个数据处理节点发送数据迁移指令,所述数据迁移指令中携带所述调整策略,以使所述至少一个数据处理节点根据所述调整策略调整所述待处理数据。
[0207]本发明实施例中,调度控制装置可以动态均衡每个数据处理节点的数据分配量,尽量避免数据处理能力强的节点窃取数据处理能力弱的节点的数据,从而降低了网络拥堵。
[0208]处理器330控制调度控制装置30的操作,处理器330还可以称为CPU (CentralProcessing Unit,中央处理单元)。存储器340可以包括只读存储器和随机存取存储器,并向处理器330提供指令和数据。存储器340的一部分还可以包括非易失性随机存取存储器(NVRAM)0具体的应用中,调度控制装置30的各个组件通过总线系统350耦合在一起,其中总线系统350除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都标为总线系统350。
[0209]上述本发明实施例揭示的方法可以应用于处理器330中,或者由处理器330实现。处理器330可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器330中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器330可以是通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA )或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器340,处理器330读取存储器340中的信息,结合其硬件完成上述方法的步骤。
[0210]可选地,处理器330还可根据所述每个数据处理节点处理数据的能力参数,计算所述每个数据处理节点处理数据的平均能力参数;根据所述每个数据处理节点处理数据的能力参数和所述每个数据处理节点处理数据的平均能力参数,计算所述每个数据处理节点的数据迁移因子;根据所述每个数据处理节点的数据迁移因子,确定能力参数低于所述平均能力参数的数据处理节点的数据迁出量和能力参数高于所述平均能力参数的数据处理节点的数据迁入量;
[0211]所述输出设备320还可向所述每个数据处理节点中的至少一个数据处理节点发送数据迁移指令,所述数据迁移指令中携带所述数据迁出量或者所述数据迁入量,以使能力参数低于所述平均能力参数的数据处理节点迁出所述数据迁出量的数据或者使所述能力参数高于所述平均能力参数的数据处理节点迁入所述数据迁入量的数据。
[0212]可选地,输入设备310还可接收处于空闲状态的数据处理节点发送的数据窃取请求,所述处于空闲状态的数据处理节点为按照所述调整策略调整待处理数据后,处理完所述调整后的待处理数据的数据处理节点;
[0213]处理器330还可根据所述数据窃取请求,制定数据窃取策略,所述数据窃取策略用于指示所述处于空闲状态的数据处理节点从调度控制节点指定的数据处理节点窃取所述调度控制节点指定的窃取量的数据,所述窃取量为所述调度控制节点根据发送数据窃取请求的数据处理节点的处理数据的能力参数制定的窃取数据量。
[0214]输出设备320还可向所述处于空闲状态的数据处理节点发送数据窃取指示消息,所述数据窃取指示消息中携带数据窃取策略。
[0215]可选地,处理器330具体可确定与所述处于空闲状态的数据处理节点处于同一机架中的,且数据处理的能力参数低于所述处于空闲状态的数据处理节点数据处理的能力参数的所有数据处理节点;从所述所有数据处理节点中选择数据处理的能力参数最低的数据处理节点作为所述指定的数据处理节点,并指定从所述指定的数据处理节点窃取数据的窃取量。
[0216]可选地,处理器330具体可确定数据处理的能力参数最低的数据处理节点;当所述数据处理的能力参数最低的数据处理节点有多个时,选择与所述处于空闲状态的数据处理节点处于同一机架中的,且数据处理的能力参数最低的数据处理节点作为所述指定的数据处理节点,并指定从所述指定的数据处理节点窃取数据的窃取量。
[0217]可选地,处理器330具体可确定数据处理的能力参数低于预置阈值的所有数据处理节点;从所述所有数据处理节点中选择数据处理的能力参数最低的数据处理节点作为所述指定的数据处理节点,并指定从所述指定的数据处理节点窃取数据的窃取量。
[0218]图13是本发明实施例数据处理装置40的结构示意图。数据处理装置40可包括输入设备410、输出设备420、处理器430和存储器440。
[0219]存储器440可以包括只读存储器和随机存取存储器,并向处理器430提供指令和数据。存储器440的一部分还可以包括非易失性随机存取存储器(NVRAM)。
[0220]存储器440存储了如下的元素,可执行模块或者数据结构,或者它们的子集,或者它们的扩展集:
[0221]操作指令:包括各种操作指令,用于实现各种操作。
[0222]操作系统:包括各种系统程序,用于实现各种基础业务以及处理基于硬件的任务。
[0223]在本发明实施例中,处理器430通过调用存储器440存储的操作指令(该操作指令可存储在操作系统中),执行如下操作:
[0224]通过输出设备420向调度控制节点发送本数据处理节点已处理数据的数据量,以使所述调度控制节点根据所述已处理数据的数据量确定所述本数据处理节点的处理数据的能力参数;通过输入设备410接收所述调度控制节点发送的数据迁移指令,所述数据迁移指令中携带调整策略;根据所述调整策略调整待处理数据。
[0225]本发明实施例提供的数据处理装置可以使调度控制装置动态均衡每个数据处理节点的数据分配量,尽量避免数据处理能力强的节点窃取数据处理能力弱的节点的数据,从而降低了网络拥堵。
[0226]处理器430控制数据处理装置40的操作,处理器430还可以称为CPU (CentralProcessing Unit,中央处理单元)。存储器440可以包括只读存储器和随机存取存储器,并向处理器430提供指令和数据。存储器440的一部分还可以包括非易失性随机存取存储器(NVRAM)0具体的应用中,调度控制装置30的各个组件通过总线系统450耦合在一起,其中总线系统450除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都标为总线系统450。
[0227]上述本发明实施例揭示的方法可以应用于处理器430中,或者由处理器430实现。处理器430可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器430中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器430可以是通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA )或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器440,处理器430读取存储器440中的信息,结合其硬件完成上述方法的步骤。
[0228]可选地,当所述本数据处理节点处理数据的能力参数低于平均能力参数时,所述调整策略用于指示迁出指定迁出量的数据给指定的数据处理节点,所述平均能力参数为所述调度控制节点根据每个数据处理节点的处理数据的能力参数计算得到的平均数;
[0229]处理器430可根据所述调整策略,迁出所述调度控制装置指定迁出量的数据给所述调度控制装置指定的数据处理节点。
[0230]可选地,当所述本数据处理节点处理数据的能力参数高于平均能力参数时,所述调整策略用于指示从指定的数据处理节点迁入指定迁入量的数据,所述平均能力参数为所述调度控制节点根据每个数据处理节点的处理数据的能力参数计算得到的平均数;
[0231]处理器430可根据所述调整策略,从所述调度控制装置指定的数据处理节点迁入所述调度控制装置指定迁入量的数据到所述本数据处理节点。
[0232]可选地,输出设备420当所述本数据处理节点处理完按照所述预置策略调整后的待处理数据后,处于空闲状态时,向所述调度控制节点发送数据窃取请求;
[0233]输入设备410接收所述调度控制节点发送的数据窃取指示消息,所述数据窃取指示消息中携带数据窃取策略,所述数据窃取策略用于指示所述发送数据窃取请求的数据处理节点从所述调度控制节点指定的数据处理节点窃取所述调度控制节点指定的窃取量的数据,所述窃取量为所述调度控制节点根据发送数据窃取请求的数据处理节点的处理数据的能力参数制定的窃取数据量;
[0234]处理器430从所述调度控制节点指定的数据处理节点窃取所述调度控制节点指定的窃取量的数据。
[0235]参阅图14、本发明实施例提供的数据处理系统的一实施例包括:调度控制装置30和多个数据处理装置40,
[0236]调度控制装置30,用于根据每个数据处理节点上报的已处理数据的数据量确定所述每个数据处理节点的处理数据的能力参数;根据所述每个数据处理节点处理数据的能力参数,制定对已分配给所述每个数据处理节点的待处理数据的调整策略;向所述每个数据处理节点中的至少一个数据处理节点发送数据迁移指令,所述数据迁移指令中携带所述调整策略,以使所述至少一个数据处理节点根据所述调整策略调整所述待处理数据。
[0237]数据处理装置40,用于向调度控制节点发送本数据处理节点已处理数据的数据量,以使所述调度控制节点根据所述已处理数据的数据量确定所述本数据处理节点的处理数据的能力参数;接收所述调度控制节点发送的数据迁移指令,所述数据迁移指令中携带调整策略;根据所述调整策略调整待处理数据。
[0238]本发明实施例提供的数据处理系统可以动态均衡每个数据处理节点的数据分配量,尽量避免数据处理能力强的节点窃取数据处理能力弱的节点的数据,从而降低了网络拥堵。
[0239]本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:R0M、RAM、磁盘或光盘等。
[0240]以上对本发明实施例所提供的数据处理的方法、装置以及系统进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在【具体实施方式】及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
【权利要求】
1.一种数据处理的方法,其特征在于,包括: 根据每个数据处理节点上报的已处理数据的数据量确定所述每个数据处理节点的处理数据的能力参数; 根据所述每个数据处理节点处理数据的能力参数,制定对已分配给所述每个数据处理节点的待处理数据的调整策略; 向所述每个数据处理节点中的至少一个数据处理节点发送数据迁移指令,所述数据迁移指令中携带所述调整策略,以使所述至少一个数据处理节点根据所述调整策略调整所述待处理数据。
2.根据权利要求1所述的方法,其特征在于,所述根据所述每个数据处理节点处理数据的能力参数,制定对已分配给所述每个数据处理节点的待处理数据的调整策略,包括: 根据所述每个数据处理节点处理数据的能力参数,计算所述每个数据处理节点处理数据的平均能力参数; 根据所述每个数据处理节点处理数据的能力参数和所述每个数据处理节点处理数据的平均能力参数,计算所述每个数据处理节点的数据迁移因子; 根据所述每个数据处理节点的数据迁移因子,确定能力参数低于所述平均能力参数的数据处理节点的数据迁出量和能力参数高于所述平均能力参数的数据处理节点的数据迁入量; 对应的,所述向所述每个数据处理节点中的至少一个数据处理节点发送数据迁移指令,所述数据迁移指令中携带所述调整策略,以使所述至少一个数据处理节点根据所述调整策略调整所述待处理数据,包括: 向所述每个数据处理节点中的至少一个数据处理节点发送数据迁移指令,所述数据迁移指令中携带所述数据迁出量或者所述数据迁入量,以使能力参数低于所述平均能力参数的数据处理节点迁出所述数据迁出量的数据或者使所述能力参数高于所述平均能力参数的数据处理节点迁入所述数据迁入量的数据。
3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括: 接收处于空闲状态的数据处理节点发送的数据窃取请求,所述处于空闲状态的数据处理节点为按照所述调整策略调整待处理数据后,处理完所述调整后的待处理数据的数据处理节点; 根据所述数据窃取请求,制定数据窃取策略,所述数据窃取策略用于指示所述处于空闲状态的数据处理节点从调度控制节点指定的数据处理节点窃取所述调度控制节点指定的窃取量的数据,所述窃取量为所述调度控制节点根据发送数据窃取请求的数据处理节点的处理数据的能力参数制定的窃取数据量; 向所述处于空闲状态的数据处理节点发送数据窃取指示消息,所述数据窃取指示消息中携带数据窃取策略。
4.根据权利要求3所述的方法,其特征在于,所述制定数据窃取策略,包括: 确定与所述处于空闲状态的数据处理节点处于同一机架中的,且数据处理的能力参数低于所述处于空闲状态的数据处理节点数据处理的能力参数的所有数据处理节点; 从所述所有数据处理节点中选择数据处理的能力参数最低的数据处理节点作为所述指定的数据处理节点,并指定从所述指定的数据处理节点窃取数据的窃取量。
5.根据权利要求3所述的方法,其特征在于,所述制定数据窃取策略,包括: 确定数据处理的能力参数最低的数据处理节点; 当所述数据处理的能力参数最低的数据处理节点有多个时,选择与所述处于空闲状态的数据处理节点处于同一机架中的,且数据处理的能力参数最低的数据处理节点作为所述指定的数据处理节点,并指定从所述指定的数据处理节点窃取数据的窃取量。
6.根据权利要求3所述的方法,其特征在于,所述制定数据窃取策略,包括: 确定数据处理的能力参数低于预置阈值的所有数据处理节点; 从所述所有数据处理节点中选择数据处理的能力参数最低的数据处理节点作为所述指定的数据处理节点,并指定从所述指定的数据处理节点窃取数据的窃取量。
7.一种数据处理的方法,其特征在于,包括: 向调度控制节点发送本数据处理节点已处理数据的数据量,以使所述调度控制节点根据所述已处理数据的数据量确定所述本数据处理节点的处理数据的能力参数; 接收所述调度控制节点发送的数据迁移指令,所述数据迁移指令中携带调整策略; 根据所述调整策略调整待处理数据。
8.根据权利要求7所述的方法,其特征在于,当所述本数据处理节点处理数据的能力参数低于平均能力参数时,所述调整策略用于指示迁出指定迁出量的数据给指定的数据处理节点,所述平均能力参数为所述调度控制节点根据每个数据处理节点的处理数据的能力参数计算得到的平均数; 所述根据所述调整策略调整待处理数据,包括: 根据所述调整策略,迁出所述调度控制节点指定迁出量的数据给所述调度控制节点指定的数据处理节点。
9.根据权利要求7所述的方法,其特征在于,当所述本数据处理节点处理数据的能力参数高于平均能力参数时,所述调整策略用于指示从指定的数据处理节点迁入指定迁入量的数据,所述平均能力参数为所述调度控制节点根据每个数据处理节点的处理数据的能力参数计算得到的平均数; 所述根据所述调整策略调整待处理数据,包括: 根据所述调整策略,从所述调度控制节点指定的数据处理节点迁入所述调度控制节点指定迁入量的数据到所述本数据处理节点。
10.根据权利要求7所述的方法,其特征在于,所述方法还包括: 当所述本数据处理节点处理完按照所述预置策略调整后的待处理数据后,处于空闲状态时,向所述调度控制节点发送数据窃取请求; 接收所述调度控制节点发送的数据窃取指示消息,所述数据窃取指示消息中携带数据窃取策略,所述数据窃取策略用于指示所述发送数据窃取请求的数据处理节点从所述调度控制节点指定的数据处理节点窃取所述调度控制节点指定的窃取量的数据,所述窃取量为所述调度控制节点根据发送数据窃取请求的数据处理节点的处理数据的能力参数制定的窃取数据量; 从所述调度控制节点指定的数据处理节点窃取所述调度控制节点指定的窃取量的数据。
11.一种调度控制装置,其特征在于,包括: 接收单元,用于接收每个数据处理节点上报的已处理数据的数据量; 确定单元,用于根据所述接收单元接收的每个数据处理节点上报的已处理数据的数据量确定所述每个数据处理节点的处理数据的能力参数; 策略制定单元,用于根据所述确定单元确定的每个数据处理装置处理数据的能力参数,制定对已分配给所述每个数据处理装置的待处理数据的调整策略; 发送单元,用于向所述每个数据处理节点中的至少一个数据处理节点发送数据迁移指令,所述数据迁移指令中携带所述策略制定单元制定的调整策略,以使所述至少一个数据处理节点根据所述调整策略调整所述待处理数据。
12.根据权利要求11所述的调度控制装置,其特征在于,所述策略制定单元包括: 第一计算子单元,用于根据所述每个数据处理装置处理数据的能力参数,计算所述每个数据处理装置处理数据的平均能力参数; 第二计算子单元,用于根据所述每个数据处理装置处理数据的能力参数和所述第一计算子单元计算的每个数据处理装置处理数据的平均能力参数,计算所述每个数据处理装置的数据迁移因子; 第一确定子单元,用于根据所述第二计算子单元计算出的每个数据处理装置的数据迁移因子,确定能力参数低于所述平均能力参数的数据处理装置的数据迁出量和能力参数高于所述平均能力参数的数据处理装置的数据迁入量; 所述发送单元,用于向所述每个数据处理节点中的至少一个数据处理节点发送数据迁移指令,所述数据迁移指令中携带所述数据迁出量或者所述数据迁入量,以使能力参数低于所述平均能力参数的数据处理节点迁出所述数据迁出量的数据或者使所述能力参数高于所述平均能力参数的数据处理节点迁入所述数据迁入量的数据。
13.根据权利要求11或12所述的调度控制装置,其特征在于, 所述接收单元,还用于接收处于空闲状态的数据处理节点发送的数据窃取请求,所述处于空闲状态的数据处理节点为按照所述调整策略调整待处理数据后,处理完所述调整后的待处理数据的数据处理节点; 所述策略制定单元,还用于根据所述接收单元接收的数据窃取请求,制定数据窃取策略,所述数据窃取策略用于指示所述处于空闲状态的数据处理节点从调度控制节点指定的数据处理节点窃取所述调度控制节点指定的窃取量的数据,所述窃取量为所述调度控制节点根据发送数据窃取请求的数据处理节点的处理数据的能力参数制定的窃取数据量;所述发送单元,还用于向所述处于空闲状态的数据处理节点发送数据窃取指示消息,所述数据窃取指示消息中携带数据窃取策略。
14.根据权利要求13所述的调度控制装置,其特征在于,所述策略制定单元包括: 第二确定子单元,用于确定与所述处于空闲状态的数据处理节点处于同一机架中的,且数据处理的能力参数低于所述处于空闲状态的数据处理节点数据处理的能力参数的所有数据处理节点; 第一选择子单元,用于从所述第二确定子单元确定的所有数据处理节点中选择数据处理的能力参数最低的数据处理节点作为所述指定的数据处理节点,并指定从所述指定的数据处理节点窃取数据的窃取量。
15.根据权利要求13所述的调度控制装置,其特征在于,所述策略制定单元包括: 第三确定子单元,用于确定数据处理的能力参数最低的数据处理节点; 第二选择子单元,用于当所述第三确定子单元确定的数据处理的能力参数最低的数据处理节点有多个时,选择与所述处于空闲状态的数据处理节点处于同一机架中的,且数据处理的能力参数最低的数据处理节点作为所述指定的数据处理节点,并指定从所述指定的数据处理节点窃取数据的窃取量。
16.根据权利要求13所述的调度控制装置,其特征在于,所述策略制定单元包括: 第四确定子单元,用于确定数据处理的能力参数低于预置阈值的所有数据处理节点; 第三选择子单元,用于从所述第四确定子单元确定的所有数据处理节点中选择数据处理的能力参数最低的数据处理节点作为所述指定的数据处理节点,并指定从所述指定的数据处理节点窃取数据的窃取量。
17.一种数据处理装置,其特征在于,包括: 发送单元,用于向调度控制节点发送本数据处理节点已处理数据的数据量,以使所述调度控制节点根据所述已处理数据的数据量确定所述本数据处理节点的处理数据的能力参数; 接收单元,用于接收所述调度控制节点发送的数据迁移指令,所述数据迁移指令中携带调整策略; 调整单元,用于根据所述接收单元接收的调整策略调整待处理数据。
18.根据权利要求17所述的数据处理装置,其特征在于,当所述本数据处理节点处理数据的能力参数低于平均能力参数时,所述调整策略用于指示迁出指定迁出量的数据给指定的数据处理节点,所述平均能力参数为所述调度控制节点根据每个数据处理节点的处理数据的能力参数计算得到的平均数; 所述调整单元,用于根据所述调整策略,迁出所述调度控制节点指定迁出量的数据给所述调度控制节点指定的数据处理节点。
19.根据权利要求17所述的数据处理装置,其特征在于,当所述本数据处理节点处理数据的能力参数高于平均能力参数时,所述调整策略用于指示从指定的数据处理节点迁入指定迁入量的数据,所述平均能力参数为所述调度控制节点根据每个数据处理节点的处理数据的能力参数计算得到的平均数; 所述调整单元,用于根据所述调整策略,从所述调度控制节点指定的数据处理节点迁入所述调度控制节点指定迁入量的数据到所述本数据处理节点。
20.根据权利要求17所述的数据处理装置,其特征在于,所述数据处理装置还包括:数据窃取单元, 所述发送单元,还用于当所述本数据处理节点处理完按照所述预置策略调整后的待处理数据后,处于空闲状态时,向所述调度控制节点发送数据窃取请求; 所述接收单元,还用于接收所述调度控制节点发送的数据窃取指示消息,所述数据窃取指示消息中携带数据窃取策略,所述数据窃取策略用于指示所述发送数据窃取请求的数据处理节点从所述调度控制节点指定的数据处理节点窃取所述调度控制节点指定的窃取量的数据,所述窃取量为所述调度控制节点根据发送数据窃取请求的数据处理节点的处理数据的能力参数制定的窃取数据量; 所述数据窃取单元,用于从所述调度控制节点指定的数据处理节点窃取所述调度控制节点指定的窃取量的数据。
21.一种数据处理系统,其特征在于,包括:调度控制装置和多个数据处理装置, 所述调度控制装置为上述权利要求11?16任意一项所述的调度控制装置; 所述数据处理装置为上述权利要求17?20任意一项所述的数据处理装置。
【文档编号】G06F17/30GK104243531SQ201310248208
【公开日】2014年12月24日 申请日期:2013年6月21日 优先权日:2013年6月21日
【发明者】李亚, 崔慧敏, 冯晓兵 申请人:华为技术有限公司, 中国科学院计算技术研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1