CN106095572A - 一种大数据处理的分布式调度***及方法 - Google Patents
一种大数据处理的分布式调度***及方法 Download PDFInfo
- Publication number
- CN106095572A CN106095572A CN201610404437.0A CN201610404437A CN106095572A CN 106095572 A CN106095572 A CN 106095572A CN 201610404437 A CN201610404437 A CN 201610404437A CN 106095572 A CN106095572 A CN 106095572A
- Authority
- CN
- China
- Prior art keywords
- node
- calculating
- task
- load factor
- dummy
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/5044—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering hardware capabilities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5083—Techniques for rebalancing the load in a distributed system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/501—Performance criteria
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5022—Workload threshold
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明提供了一种大数据处理的分布式调度***及方法,该***包括:客户端、多个调度中心及多个计算节点;调度中心接收并存储每个计算节点发送的节点信息,节点信息包括节点位置信息及性能特征信息;客户端从调度中心获取每个计算节点的节点信息,根据当前分配给每个计算节点的任务数目及每个计算节点的性能特征信息,分别计算每个计算节点对应的负载率,根据每个计算节点对应的负载率,将待调度任务分配给负载率最小的计算节点;计算节点发送节点信息给每个调度中心,接收并处理客户端发送的待调度任务。本发明由客户端进行调度,任务数据不经过调度中心,避免调度中心的瓶颈限制。且负载均衡时考虑了计算节点的性能,能够实现均匀调度。
Description
技术领域
本发明涉及计算机技术领域,具体而言,涉及一种大数据处理的分布式调度***及方法。
背景技术
随着信息技术的迅猛发展,行业应用所产生的数据呈***性增长,产生数百TB(Terabyte)甚至数十至数百PB(Petabyte)规模的大数据,所产生的大数据要求计算机及信息***具备更高的处理能力。
当前,相关技术提供了一种大数据处理方法,该方法进行大数据处理的网络架构如图1所示,客户端发送任务数据给调度中心,调度中心根据服务器集群中每个服务器正在处理的任务数量,将上述任务数据调度给正在处理的任务数量最少的服务器进行处理。
由于任务数据必须经调度中心进行调度,而调度中心的调度能力有限,限制了整个数据处理架构的处理能力。且即便正在处理的任务数量相同,总计算量也可能不同,对计算能力不同的服务器来说负荷也不相同,因此基于正在处理的任务数量进行调度,很可能导致调度不均匀,无法有效保障负载均衡。
发明内容
有鉴于此,本发明实施例的目的在于提供一种大数据处理的分布式调度***及方法,由客户端进行调度,任务数据不经过调度中心,避免调度中心的瓶颈限制。且负载均衡时考虑了计算节点的性能,能够实现均匀调度。
第一方面,本发明实施例提供了一种大数据处理的分布式调度***,所述***包括:客户端、多个调度中心及多个计算节点;
所述调度中心,用于接收并存储每个计算节点发送的节点信息,所述节点信息包括节点位置信息及性能特征信息;
所述客户端,用于从调度中心获取每个计算节点的节点信息,根据当前分配给每个计算节点的任务数目及每个计算节点的性能特征信息,分别计算每个计算节点对应的负载率,根据所述每个计算节点对应的负载率,将待调度任务分配给负载率最小的计算节点;
所述计算节点,用于发送节点信息给每个调度中心,接收并处理所述客户端发送的待调度任务。
结合第一方面,本发明实施例提供了上述第一方面的第一种可能的实现方式,其中,所述客户端,用于通过软件开发工具包SDK提供的接口,建立与调度中心之间的通信连接,通过建立的所述通信连接从调度中心获取每个计算节点的节点信息。
结合第一方面,本发明实施例提供了上述第一方面的第二种可能的实现方式,其中,所述客户端,用于通过软件开发工具包SDK分别为所述每个计算节点创建对应的虚拟节点;在创建的虚拟节点中,存储虚拟节点对应的计算节点的节点信息,并构建等待队列和工作队列;通过所述SDK提供的接口,建立创建的虚拟节点与对应的计算节点之间的通信连接。
结合第一方面,本发明实施例提供了上述第一方面的第三种可能的实现方式,其中,
所述客户端,用于统计第一计算节点对应的等待队列和工作队列中包括的任务数目,将统计的任务数目确定为当前分配给所述第一计算节点的任务数目,所述第一计算节点为所述每个计算节点中的任一计算节点;从所述第一计算节点的性能特征信息中获取所述第一计算节点的中央处理器CPU核数及主频;根据所述CPU核数及所述主频,计算所述第一计算节点的计算能力值;根据当前分配给所述第一计算节点的任务数目及所述计算能力值,计算所述第一计算节点对应的负载率。
结合第一方面的第二种可能的实现方式,本发明实施例提供了上述第一方面的第四种可能的实现方式,其中,所述客户端,用于根据所述每个计算节点对应的负载率,按照预设顺序对所述每个计算节点对应的虚拟节点进行排序;从排序后的虚拟节点中选择负载率最小的虚拟节点;通过调度器将所述待调度任务***所述负载率最小的虚拟节点的等待队列的队尾。
结合第一方面的第四种可能的实现方式,本发明实施例提供了上述第一方面的第五种可能的实现方式,其中,
所述客户端,用于通过任务发送器经所述负载率最小的虚拟节点与对应的计算节点之间的通信连接,发送所述待调度任务给所述对应的计算节点;从所述负载率最小的虚拟节点的等待队列中删除所述待调度任务;将所述待调度任务***所述负载率最小的虚拟节点的工作队列的队尾。
结合第一方面的第五种可能的实现方式,本发明实施例提供了上述第一方面的第六种可能的实现方式,其中,所述客户端,用于接收负载率最小的计算节点返回的所述待调度任务对应的处理结果;从所述负载率最小的虚拟节点的工作队列中删除所述待调度任务。
结合第一方面的第二种可能的实现方式,本发明实施例提供了上述第一方面的第七种可能的实现方式,其中,所述客户端,用于在创建的虚拟节点中设置定时器;通过所述定时器分别记录虚拟节点的工作队列中每个任务的处理时长;当检测到处理时长超过预设时长的任务时,从所述工作队列中删除处理时长超过预设时长的任务,并显示超时错误提示信息。
第二方面,本发明实施例提供了一种大数据处理的分布式调度方法,所述方法包括:
从调度中心获取每个计算节点的节点信息,所述节点信息包括节点位置信息及性能特征信息;
根据当前分配给每个计算节点的任务数目及每个计算节点的性能特征信息,分别计算每个计算节点对应的负载率;
根据所述每个计算节点对应的负载率,将待调度任务分配给负载率最小的计算节点。
结合第二方面,本发明实施例提供了上述第二方面的第一种可能的实现方式,其中,所述根据当前分配给每个计算节点的任务数目及每个计算节点的性能特征信息,分别计算每个计算节点对应的负载率,包括:
统计第一计算节点对应的等待队列和工作队列中包括的任务数目,将统计的任务数目确定为当前分配给所述第一计算节点的任务数目,所述第一计算节点为所述每个计算节点中的任一计算节点;
从所述第一计算节点的性能特征信息中获取所述第一计算节点的中央处理器CPU核数及主频;
根据所述CPU核数及所述主频,计算所述第一计算节点的计算能力值;
根据当前分配给所述第一计算节点的任务数目及所述计算能力值,计算所述第一计算节点对应的负载率。
结合第二方面,本发明实施例提供了上述第二方面的第二种可能的实现方式,其中,所述从调度中心获取每个计算节点的节点信息,包括:
通过软件开发工具包SDK提供的接口,建立与调度中心之间的通信连接;
通过建立的所述通信连接,从所述调度中心获取每个计算节点的节点信息。
结合第二方面,本发明实施例提供了上述第二方面的第三种可能的实现方式,其中,所述从调度中心获取每个计算节点的节点信息之后,还包括:
通过软件开发工具包SDK分别为所述每个计算节点创建对应的虚拟节点;
在创建的虚拟节点中,存储虚拟节点对应的计算节点的节点信息,并构建等待队列和工作队列;
通过所述SDK提供的接口,建立创建的虚拟节点与对应的计算节点之间的通信连接。
结合第二方面的第三种可能的实现方式,本发明实施例提供了上述第二方面的第四种可能的实现方式,其中,所述根据所述每个计算节点对应的负载率,将待调度任务分配给负载率最小的计算节点,包括:
根据所述每个计算节点对应的负载率,按照预设顺序对所述每个计算节点对应的虚拟节点进行排序;
从排序后的虚拟节点中选择负载率最小的虚拟节点;
通过调度器将待调度任务***负载率最小的虚拟节点的等待队列的队尾。
结合第二方面的第四种可能的实现方式,本发明实施例提供了上述第二方面的第五种可能的实现方式,其中,所述方法还包括:
通过任务发送器经负载率最小的虚拟节点与对应的计算节点之间的通信连接,发送所述待调度任务给所述对应的计算节点;
从负载率最小的虚拟节点的等待队列中删除所述待调度任务;
将所述待调度任务***负载率最小的虚拟节点中的工作队列的队尾。
结合第二方面的第五种可能的实现方式,本发明实施例提供了上述第二方面的第六种可能的实现方式,其中,所述方法还包括:
接收负载率最小的虚拟节点对应的计算节点返回的所述待调度任务对应的处理结果;
从负载率最小的虚拟节点的工作队列中删除所述待调度任务。
结合第二方面的第三种可能的实现方式,本发明实施例提供了上述第二方面的第七种可能的实现方式,其中,所述方法还包括:
在创建的虚拟节点中设置定时器;
通过所述定时器分别记录所述虚拟节点的工作队列中每个任务的处理时长;
当检测到处理时长超过预设时长的任务时,从所述工作队列中删除处理时长超过预设时长的任务,并显示超时错误提示信息。
在本发明实施例提供的***及方法中,该***包括:客户端、多个调度中心及多个计算节点;调度中心接收并存储每个计算节点发送的节点信息,节点信息包括节点位置信息及性能特征信息;客户端从调度中心获取每个计算节点的节点信息,根据当前分配给每个计算节点的任务数目及每个计算节点的性能特征信息,分别计算每个计算节点对应的负载率,根据每个计算节点对应的负载率,将待调度任务分配给负载率最小的计算节点;计算节点发送节点信息给每个调度中心,接收并处理客户端发送的待调度任务。本发明由客户端进行调度,任务数据不经过调度中心,避免调度中心的瓶颈限制。且负载均衡时考虑了计算节点的性能,能够实现均匀调度。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了现有技术所提供的一种大数据处理的网络架构示意图;
图2示出了本发明实施例1所提供的一种大数据处理的分布式调度***的结构示意图;
图3示出了本发明实施例1所提供的另一种大数据处理的分布式调度***的结构示意图;
图4示出了本发明实施例1所提供的一种调度器与虚拟节点配合调度的过程示意图;
图5示出了本发明实施例2所提供的一种大数据处理的分布式调度方法的流程示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
考虑到相关技术中任务数据必须经调度中心进行调度,而调度中心的调度能力有限,限制了整个数据处理架构的处理能力。且即便正在处理的任务数量相同,总计算量也可能不同,对计算能力不同的服务器来说负荷也不相同,因此基于正在处理的任务数量进行调度,很可能导致调度不均匀,无法有效保障负载均衡。基于此,本发明实施例提供了一种大数据处理的分布式调度***及方法,下面通过实施例进行描述。
实施例1
参见图2,本发明实施例提供了一种大数据处理的分布式调度***,该***包括:客户端1、多个调度中心2及多个计算节点3。图2中,调度中心2简称为中心2。
其中,多个调度中心2采用副本机制,即这多个调度中心2中的每个调度中心2互为备份。在通过该分布式调度***进行大数据处理时,每个调度中心2均与上述多个计算节点3通信连接,但设置在同一时刻最多有预设数目个调度中心2与客户端1通信连接,该预设数目大于等于1且小于调度中心2的总数目。当某个与客户端1连接的调度中心2出现故障时,可以断开故障的调度中心2与客户端1之间的通信连接,然后从当前未与客户端1连接的调度中心2中随机选择一个调度中心2,建立选择的调度中心2与客户端1之间的通信连接。如此可以避免单个调度中心2异常时造成整个分布式调度***无法工作的问题。
在本发明实施例中,采用计算节点3主动注册的方式向调度中心2注册节点信息。具体地,计算节点3,用于发送节点信息给上述多个调度中心2中的每个调度中心2,该节点信息包括计算节点3的节点位置信息及性能特征信息。节点位置信息包括计算节点3的IP(Internet Protocol,网络之间互连的协议)地址和端口号等。性能特征信息用于表示计算节点3的计算能力,性能特征信息包括计算节点3的CPU(Central Processing Unit,中央处理器)核数、线程数、主频、内存容量和网络带宽等。
上述多个调度中心2中的每个调度中心2,用于接收每个计算节点3发送的节点信息,并存储每个计算节点3的节点信息。
在本发明实施例中,客户端1中安装有SDK(Software Development Kit,软件开发工具包),SDK为客户端1提供接口,客户端1通过SDK提供的接口与调度中心2及计算节点3建立通信连接。
当客户端1有需要处理的待调度任务时,客户端1首先通过SDK提供的接口建立与多个调度中心2中的一个调度中心2之间的通信连接。然后,客户端1,用于通过建立的通信连接从该调度中心2获取每个计算节点3的节点信息,并存储每个计算节点3的节点信息。
如图3所示,客户端1,还用于通过SDK分别为每个计算节点3创建对应的虚拟节点;在创建的虚拟节点中,存储虚拟节点对应的计算节点3的节点信息,并构建等待队列和工作队列;通过SDK提供的接口,建立创建的虚拟节点与对应的计算节点3之间的通信连接。
本发明实施例中,如图3所示,客户端1中安装的SDK中还设置有调度器,客户端1需要处理的待调度任务经过调度器调度给虚拟节点,再由虚拟节点发送给虚拟节点对应的计算节点3,计算节点3处理完后将待调度任务对应的处理结果返回给其对应的虚拟节点,虚拟节点再将该处理结果上传给客户端1的处理器。如此采用客户端1进行任务调度,任务数据不必经过调度中心2,避免了调度中心2处理能力有限导致的瓶颈问题。
在客户端1进行任务调度时,客户端1,用于根据当前分配给每个计算节点3的任务数目及每个计算节点3的性能特征信息,分别计算每个计算节点3对应的负载率,根据每个计算节点3对应的负载率,将待调度任务分配给负载率最小的计算节点3。
本发明实施例中,客户端1已分配给计算节点3但尚未发送给计算节点3的任务都存储在该计算节点3对应的虚拟节点的等待队列中,当客户端1将任务发送给该计算节点3时从等待队列中删除该任务,并将该任务***该计算节点3对应的虚拟节点的工作队列中。因此当前分配给计算节点3的任务数目即为该计算节点3对应的虚拟节点的等待队列及工作队列中任务的总数目。
上述客户端1计算每个计算节点3的负载率时,客户端1,用于统计第一计算节点3对应的等待队列和工作队列中包括的任务数目,将统计的任务数目确定为当前分配给第一计算节点3的任务数目,第一计算节点3为每个计算节点3中的任一计算节点3;从第一计算节点3的性能特征信息中获取第一计算节点3的CPU核数及主频;根据CPU核数及主频,计算第一计算节点3的计算能力值;根据当前分配给第一计算节点3的任务数目及计算能力值,计算第一计算节点3对应的负载率。
上述第一计算节点3的计算能力值为第一计算节点3的CPU核数与主频的乘积。在本发明实施例中,若第一计算节点3的CPU为超线程CPU,则第一计算节点3的计算能力值为预设系数、第一计算节点3的CPU核数及主频三者的乘积。其中,预设系数可以为1.25或1.5等,本发明实施例并不具体限定预设系数的具体取值,在实际应用中可根据实际需要自定义预设系数的取值。另外,上述CPU核数为第一计算节点3的物理核数,而不是线程数。
通过上述方式得到第一计算节点3的计算能力值后,计算当前分配给第一计算节点3的任务数目与该计算能力值之间的比值,将计算的比值确定为第一计算节点3对应的负载率。对于分别时调度***中的其他每个计算节点3,都同第一计算节点3,按照上述方式分别计算出其他每个计算节点3对应的负载率。
由于分配给计算节点3的任务数目是时刻变化的,所以计算节点3对应的负载率也是时刻变化的,本发明实施例中客户端1将通过上述方式实时计算每个计算节点3对应的负载率。
本发明实施例在计算负载率时,综合考虑了分配给计算节点3的任务量及计算节点3的计算能力,避免了因计算节点3的计算能力不同导致的调度不均匀的问题,能够有效实现负载均衡。
通过上述方式计算出每个计算节点3对应的负载率后,客户端1,用于根据每个计算节点3对应的负载率,按照预设顺序对每个计算节点3对应的虚拟节点进行排序;从排序后的虚拟节点中选择负载率最小的虚拟节点;通过调度器将待调度任务***负载率最小的虚拟节点的等待队列的队尾。
上述对虚拟节点的排序操作是在调度器中进行的,预设顺序可以为按照负载率从大到小的顺序,或者按照负载率从小到大的顺序。
客户端1的处理器提交给SDK的待调度任务,由调度器按照上述方式分配给负载率最小的虚拟节点,将该待调度任务***负载率最小的虚拟节点的等待队列的队尾。
本发明实施例中,客户端1,还用于通过任务发送器经负载率最小的虚拟节点与对应的计算节点3之间的通信连接,发送待调度任务给对应的计算节点3;从负载率最小的虚拟节点的等待队列中删除待调度任务;将待调度任务***负载率最小的虚拟节点的工作队列的队尾。
上述客户端1通过任务发送器将待调度任务发送给负载率最小的计算节点3后,计算节点3,用于接收并处理客户端1发送的待调度任务。当计算节点3处理完待调度任务后,发送待调度任务对应的处理结果给客户端1。
此时,客户端1,用于接收负载率最小的计算节点3返回的待调度任务对应的处理结果;从负载率最小的虚拟节点的工作队列中删除待调度任务。
为了便于理解调度器与虚拟节点配合调度的过程,下面结合附图以单个计算节点3及计算节点3对应的虚拟节点为例进行说明。如图4所示,图4中A图表示调度器将客户端1的处理器提交的任务12***负载率最小的虚拟节点的等待队列的队尾。图4中B图表示通过任务发送器发送任务8给负载率最小的计算节点3时,从等待队列中删除任务8,将任务8***工作队列的队尾。图4中C图表示当计算节点3处理完任务7,并返回任务7对应的处理结果给结果接收器时,从工作队列中删除任务7。
本发明实施例中,客户端1中的任务发送器具备整合发送的功能,即可以通过任务发送器同时将多个任务发送给计算节点3,以提升任务发送的效率。
另外,由于待调度任务在发送的过程中可能存在丢失数据包的问题,导致计算节点3无法完成对待调度任务的处理,如此客户端1接收不到计算节点3返回的待调度任务对应的处理结果,这样该待调度任务将一直缓存在工作队列中,形成僵死任务。为了避免工作队列中出现僵死任务,本发明实施例对工作队列中缓存的任务进行定时,并将超时的任务删除。具体地,客户端1,用于在创建的虚拟节点中设置定时器;通过定时器分别记录虚拟节点的工作队列中每个任务的处理时长;当检测到处理时长超过预设时长的任务时,从工作队列中删除处理时长超过预设时长的任务,并显示超时错误提示信息。
上述定时器机制可以避免网络传输数据丢包造成的任务丢失问题,避免造成工作队列中存在僵死任务而无法充分利用计算资源的问题。
本发明实施例中,负载率综合考虑了当前分配给计算节点3的任务数目及计算节点3的计算能力,有效地解决了任务量与计算能力相匹配的均匀调度问题,同时通过计算节点3的处理结果反馈机制可以及时感知计算节点3的负载状态,从而实现充分利用计算资源。本方案中还可以对计算节点3的负载率设置阈值限制,当计算节点3的负载率超过阈值时不再向计算节点3调度任务,避免分配的任务的缓冲量过大造成的内存不足的问题。
在本发明实施例中,虽然虚拟节点的负载率是动态变化的,但仍存在某些计算节点3的负载率相同或相近的情况。例如,在分布式调度***刚刚启动时,所有客户端1都认为所有计算节点3的负载率都是0,此时所有客户端1中对虚拟节点的排序都是相同的,若同时下发待调度任务则会造成所有客户端1在同一时刻向同一计算节点3下发任务的情况。本发明实施例为了避免这一问题,在负载率相同或相近时,调度器采用随机方式进行任务调度。
本发明实施例也能有效解决多客户端1同时调度不均衡的问题,在刚开始调度时由于所有虚拟节点的负载率都是0,客户端1会向所有的计算节点3发任务,即便此时存在不均衡的问题,但随时间推移,繁忙的计算节点3由于处理结果返回速度变慢,造成该计算节点3对应的虚拟节点的负载率变高,客户端1向该计算节点3调度的任务数量就会变少,慢慢所有的计算节点3的任务调度趋于均衡。且即便调度算法不同,本发明实施例也能有效的缓解调度不均匀的问题。
本发明实施例提供的分布式调度***进行任务调度的时效性高,任务下发后能够快速返回任务对应的处理结果,也适合于实时性要求很高的交互式应用中。
在本发明实施例中,分布式调度***包括:客户端、多个调度中心及多个计算节点;调度中心接收并存储每个计算节点发送的节点信息,节点信息包括节点位置信息及性能特征信息;客户端从调度中心获取每个计算节点的节点信息,根据当前分配给每个计算节点的任务数目及每个计算节点的性能特征信息,分别计算每个计算节点对应的负载率,根据每个计算节点对应的负载率,将待调度任务分配给负载率最小的计算节点;计算节点发送节点信息给每个调度中心,接收并处理客户端发送的待调度任务。本发明由客户端进行调度,任务数据不经过调度中心,避免调度中心的瓶颈限制。且负载均衡时考虑了计算节点的性能,能够实现均匀调度。
实施例2
参见图5,本发明实施例提供了一种大数据处理的分布式调度方法,该方法的执行主体可以为实施例1提供的分布式调度***中的客户端。该方法具体包括以下步骤:
步骤201:从调度中心获取每个计算节点的节点信息,节点信息包括节点位置信息及性能特征信息。
上述节点位置信息包括计算节点的IP地址和端口号等。性能特征信息用于表示计算节点的计算能力,性能特征信息包括计算节点的CPU核数、线程数、主频、内存容量和网络带宽等。
在大数据处理的分布式调度***中,所有计算节点均在每个调度中心中注册了自身的节点信息。客户端中安装有SDK,SDK为客户端提供接口,客户端通过SDK提供的接口与调度中心及计算节点建立通信连接。
客户端获取每个计算节点的节点信息的过程,具体包括:通过SDK提供的接口,建立与调度中心之间的通信连接;通过建立的通信连接,从调度中心获取每个计算节点的节点信息。客户端获取到每个计算节点的节点信息后,还存储每个计算节点的节点信息。
在分布式调度***中,采用副本机制的调度中心,即设置多个调度中心,这多个调度中心中的每个调度中心互为备份。客户端通过SDK提供的接口建立与多个调度中心中的一个调度中心之间的通信连接,并从该调度中心获取每个计算节点的节点信息。
在本发明实施例中,客户端还通过SDK分别为每个计算节点创建对应的虚拟节点;在创建的虚拟节点中,存储虚拟节点对应的计算节点的节点信息,并构建等待队列和工作队列;通过SDK提供的接口,建立创建的虚拟节点与对应的计算节点之间的通信连接。
步骤202:根据当前分配给每个计算节点的任务数目及每个计算节点的性能特征信息,分别计算每个计算节点对应的负载率;
在本发明实施例中,客户端已分配给计算节点但尚未发送给计算节点的任务都存储在该计算节点对应的虚拟节点的等待队列中,当客户端将任务发送给该计算节点时从等待队列中删除该任务,并将该任务***该计算节点对应的虚拟节点的工作队列中。因此当前分配给计算节点的任务数目即为该计算节点对应的虚拟节点的等待队列及工作队列中任务的总数目。
本发明实施例中,客户端中安装的SDK中还设置有调度器,客户端通过调度器计算每个计算节点对应的负载率,具体计算过程包括:
统计第一计算节点对应的等待队列和工作队列中包括的任务数目,将统计的任务数目确定为当前分配给第一计算节点的任务数目,第一计算节点为每个计算节点中的任一计算节点;从第一计算节点的性能特征信息中获取第一计算节点的中央处理器CPU核数及主频;根据CPU核数及主频,计算第一计算节点的计算能力值;根据当前分配给第一计算节点的任务数目及计算能力值,计算第一计算节点对应的负载率。
上述第一计算节点的计算能力值为第一计算节点的CPU核数与主频的乘积。在本发明实施例中,若第一计算节点的CPU为超线程CPU,则第一计算节点的计算能力值为预设系数、第一计算节点的CPU核数及主频三者的乘积。其中,预设系数可以为1.25或1.5等,本发明实施例并不具体限定预设系数的具体取值,在实际应用中可根据实际需要自定义预设系数的取值。另外,上述CPU核数为第一计算节点的物理核数,而不是线程数。
通过上述方式得到第一计算节点的计算能力值后,计算当前分配给第一计算节点的任务数目与该计算能力值之间的比值,将计算的比值确定为第一计算节点对应的负载率。对于分别时调度***中的其他每个计算节点,都同第一计算节点,按照上述方式分别计算出其他每个计算节点对应的负载率。
由于分配给计算节点的任务数目是时刻变化的,所以计算节点对应的负载率也是时刻变化的,本发明实施例通过上述方式实时计算每个计算节点对应的负载率。
上述计算负载率时,综合考虑了分配给计算节点的任务量及计算节点的计算能力,避免了因计算节点的计算能力不同导致的调度不均匀的问题,能够有效实现负载均衡。
通过上述方式实时计算每个计算节点对应的负载率,当客户端有需要处理的待调度任务时,通过如下步骤103将待调度任务分配给负载率最小的计算节点。
步骤203:根据每个计算节点对应的负载率,将待调度任务分配给负载率最小的计算节点。
根据每个计算节点对应的负载率,按照预设顺序对每个计算节点对应的虚拟节点进行排序;从排序后的虚拟节点中选择负载率最小的虚拟节点;通过调度器将待调度任务***负载率最小的虚拟节点中的等待队列的队尾。
上述对虚拟节点的排序操作是在调度器中进行的,预设顺序可以为按照负载率从大到小的顺序,或者按照负载率从小到大的顺序。
客户端的处理器提交给SDK的待调度任务,由调度器按照上述方式分配给负载率最小的虚拟节点,将该待调度任务***负载率最小的虚拟节点的等待队列的队尾。
将待调度任务***等待队列进行等待后,客户端还需通过如下方式将排在等待队列队首的待调度任务发送给计算节点进行处理,具体包括:
通过任务发送器经负载率最小的虚拟节点与对应的计算节点之间的通信连接,发送待调度任务给对应的计算节点;从负载率最小的虚拟节点的等待队列中删除待调度任务;将待调度任务***负载率最小的虚拟节点的工作队列的队尾。
通过上述方式将待调度任务发送给负载率最小的计算节点后,计算节点接收并处理待调度任务,并在处理完成后返回待调度任务对应的处理结果。
客户端接收负载率最小的虚拟节点对应的计算节点返回的待调度任务对应的处理结果;从负载率最小的虚拟节点的工作队列中删除待调度任务。
由于待调度任务在发送的过程中可能存在丢失数据包的问题,导致计算节点无法完成对待调度任务的处理,如此客户端接收不到计算节点返回的待调度任务对应的处理结果,这样该待调度任务将一直缓存在工作队列中,形成僵死任务。为了避免工作队列中出现僵死任务,本发明实施例对工作队列中缓存的任务进行定时,并将超时的任务删除。该定时机制的具体操作过程包括:
在创建的虚拟节点中设置定时器;通过定时器分别记录虚拟节点的工作队列中每个任务的处理时长;当检测到处理时长超过预设时长的任务时,从工作队列中删除处理时长超过预设时长的任务,并显示超时错误提示信息。
上述定时器机制可以避免网络传输数据丢包造成的任务丢失问题,避免造成工作队列中存在僵死任务而无法充分利用计算资源的问题。
本发明实施例中,负载率综合考虑了当前分配给计算节点的任务数目及计算节点的计算能力,有效地解决了任务量与计算能力相匹配的均匀调度问题,同时通过计算节点的处理结果反馈机制可以及时感知计算节点的负载状态,从而实现充分利用计算资源。本方案中还可以对计算节点的负载率设置阈值限制,当计算节点的负载率超过阈值时不再向计算节点调度任务,避免分配的任务的缓冲量过大造成的内存不足的问题。
本发明实施例提供的分布式调度***进行任务调度的时效性高,任务下发后能够快速返回任务对应的处理结果,也适合于实时性要求很高的交互式应用中。
在本发明实施例中,从调度中心获取每个计算节点的节点信息,根据当前分配给每个计算节点的任务数目及每个计算节点的性能特征信息,分别计算每个计算节点对应的负载率,根据每个计算节点对应的负载率,将待调度任务分配给负载率最小的计算节点。本发明由客户端进行调度,任务数据不经过调度中心,避免调度中心的瓶颈限制。且负载均衡时考虑了计算节点的性能,能够实现均匀调度。
本发明实施例所提供的方法,其实现原理及产生的技术效果和前述***实施例中客户端的原理及产生的技术效果相同,为简要描述,方法实施例部分未提及之处,可参考前述***实施例中相应内容。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,前述描述的***的具体工作过程,也可以参考上述方法实施例中的对应过程,在此不再赘述。
在本发明所提供的实施例中,应该理解到,所揭露***和方法,可以通过其它的方式实现。以上所描述的***及方法实施例仅仅是示意性的。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释,此外,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围。都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
Claims (16)
1.一种大数据处理的分布式调度***,其特征在于,所述***包括:客户端、多个调度中心及多个计算节点;
所述调度中心,用于接收并存储每个计算节点发送的节点信息,所述节点信息包括节点位置信息及性能特征信息;
所述客户端,用于从调度中心获取每个计算节点的节点信息,根据当前分配给每个计算节点的任务数目及每个计算节点的性能特征信息,分别计算每个计算节点对应的负载率,根据所述每个计算节点对应的负载率,将待调度任务分配给负载率最小的计算节点;
所述计算节点,用于发送节点信息给每个调度中心,接收并处理所述客户端发送的待调度任务。
2.根据权利要求1所述的***,其特征在于,所述客户端,用于通过软件开发工具包SDK提供的接口,建立与调度中心之间的通信连接,通过建立的所述通信连接从调度中心获取每个计算节点的节点信息。
3.根据权利要求1所述的***,其特征在于,所述客户端,用于通过软件开发工具包SDK分别为所述每个计算节点创建对应的虚拟节点;在创建的虚拟节点中,存储虚拟节点对应的计算节点的节点信息,并构建等待队列和工作队列;通过所述SDK提供的接口,建立创建的虚拟节点与对应的计算节点之间的通信连接。
4.根据权利要求1所述的***,其特征在于,
所述客户端,用于统计第一计算节点对应的等待队列和工作队列中包括的任务数目,将统计的任务数目确定为当前分配给所述第一计算节点的任务数目,所述第一计算节点为所述每个计算节点中的任一计算节点;从所述第一计算节点的性能特征信息中获取所述第一计算节点的中央处理器CPU核数及主频;根据所述CPU核数及所述主频,计算所述第一计算节点的计算能力值;根据当前分配给所述第一计算节点的任务数目及所述计算能力值,计算所述第一计算节点对应的负载率。
5.根据权利要求3所述的***,其特征在于,所述客户端,用于根据所述每个计算节点对应的负载率,按照预设顺序对所述每个计算节点对应的虚拟节点进行排序;从排序后的虚拟节点中选择负载率最小的虚拟节点;通过调度器将所述待调度任务***所述负载率最小的虚拟节点的等待队列的队尾。
6.根据权利要求5所述的***,其特征在于,
所述客户端,用于通过任务发送器经所述负载率最小的虚拟节点与对应的计算节点之间的通信连接,发送所述待调度任务给所述对应的计算节点;从所述负载率最小的虚拟节点的等待队列中删除所述待调度任务;将所述待调度任务***所述负载率最小的虚拟节点的工作队列的队尾。
7.根据权利要求6所述的***,其特征在于,所述客户端,用于接收负载率最小的计算节点返回的所述待调度任务对应的处理结果;从所述负载率最小的虚拟节点的工作队列中删除所述待调度任务。
8.根据权利要求3所述的***,其特征在于,所述客户端,用于在创建的虚拟节点中设置定时器;通过所述定时器分别记录虚拟节点的工作队列中每个任务的处理时长;当检测到处理时长超过预设时长的任务时,从所述工作队列中删除处理时长超过预设时长的任务,并显示超时错误提示信息。
9.一种大数据处理的分布式调度方法,其特征在于,所述方法包括:
从调度中心获取每个计算节点的节点信息,所述节点信息包括节点位置信息及性能特征信息;
根据当前分配给每个计算节点的任务数目及每个计算节点的性能特征信息,分别计算每个计算节点对应的负载率;
根据所述每个计算节点对应的负载率,将待调度任务分配给负载率最小的计算节点。
10.根据权利要求9所述的方法,其特征在于,所述根据当前分配给每个计算节点的任务数目及每个计算节点的性能特征信息,分别计算每个计算节点对应的负载率,包括:
统计第一计算节点对应的等待队列和工作队列中包括的任务数目,将统计的任务数目确定为当前分配给所述第一计算节点的任务数目,所述第一计算节点为所述每个计算节点中的任一计算节点;
从所述第一计算节点的性能特征信息中获取所述第一计算节点的中央处理器CPU核数及主频;
根据所述CPU核数及所述主频,计算所述第一计算节点的计算能力值;
根据当前分配给所述第一计算节点的任务数目及所述计算能力值,计算所述第一计算节点对应的负载率。
11.根据权利要求9所述的方法,其特征在于,所述从调度中心获取每个计算节点的节点信息,包括:
通过软件开发工具包SDK提供的接口,建立与调度中心之间的通信连接;
通过建立的所述通信连接,从所述调度中心获取每个计算节点的节点信息。
12.根据权利要求9所述的方法,其特征在于,所述从调度中心获取每个计算节点的节点信息之后,还包括:
通过软件开发工具包SDK分别为所述每个计算节点创建对应的虚拟节点;
在创建的虚拟节点中,存储虚拟节点对应的计算节点的节点信息,并构建等待队列和工作队列;
通过所述SDK提供的接口,建立创建的虚拟节点与对应的计算节点之间的通信连接。
13.根据权利要求12所述的方法,其特征在于,所述根据所述每个计算节点对应的负载率,将待调度任务分配给负载率最小的计算节点,包括:
根据所述每个计算节点对应的负载率,按照预设顺序对所述每个计算节点对应的虚拟节点进行排序;
从排序后的虚拟节点中选择负载率最小的虚拟节点;
通过调度器将待调度任务***负载率最小的虚拟节点的等待队列的队尾。
14.根据权利要求13所述的方法,其特征在于,所述方法还包括:
通过任务发送器经负载率最小的虚拟节点与对应的计算节点之间的通信连接,发送所述待调度任务给所述对应的计算节点;
从负载率最小的虚拟节点的等待队列中删除所述待调度任务;
将所述待调度任务***负载率最小的虚拟节点的工作队列的队尾。
15.根据权利要求14所述的方法,其特征在于,所述方法还包括:
接收负载率最小的虚拟节点对应的计算节点返回的所述待调度任务对应的处理结果;
从负载率最小的虚拟节点的工作队列中删除所述待调度任务。
16.根据权利要求12所述的方法,其特征在于,所述方法还包括:
在创建的虚拟节点中设置定时器;
通过所述定时器分别记录所述虚拟节点的工作队列中每个任务的处理时长;
当检测到处理时长超过预设时长的任务时,从所述工作队列中删除处理时长超过预设时长的任务,并显示超时错误提示信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610404437.0A CN106095572B (zh) | 2016-06-08 | 2016-06-08 | 一种大数据处理的分布式调度***及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610404437.0A CN106095572B (zh) | 2016-06-08 | 2016-06-08 | 一种大数据处理的分布式调度***及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106095572A true CN106095572A (zh) | 2016-11-09 |
CN106095572B CN106095572B (zh) | 2019-12-06 |
Family
ID=57228432
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610404437.0A Active CN106095572B (zh) | 2016-06-08 | 2016-06-08 | 一种大数据处理的分布式调度***及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106095572B (zh) |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106874112A (zh) * | 2017-01-17 | 2017-06-20 | 华南理工大学 | 一种结合负载均衡的工作流回填方法 |
CN106937092A (zh) * | 2017-04-11 | 2017-07-07 | 北京邮电大学 | 一种分布式计算平台中视频数据迁移方法及装置 |
CN106933662A (zh) * | 2017-03-03 | 2017-07-07 | 广东神马搜索科技有限公司 | 分布式***及其调度方法和调度装置 |
CN108319495A (zh) * | 2017-01-16 | 2018-07-24 | 阿里巴巴集团控股有限公司 | 任务处理方法及装置 |
CN109254835A (zh) * | 2018-06-27 | 2019-01-22 | 阿里巴巴集团控股有限公司 | 批处理任务的处理方法、装置、服务器及可读存储介质 |
CN109359930A (zh) * | 2018-12-20 | 2019-02-19 | 上海德启信息科技有限公司 | 物流作业资源监控方法、装置和计算机设备 |
WO2019219005A1 (zh) * | 2018-05-16 | 2019-11-21 | 杭州海康威视数字技术股份有限公司 | 一种数据处理***及方法 |
CN110554923A (zh) * | 2019-09-09 | 2019-12-10 | 吕春燕 | 一种用于云计算的分布链式计算资源的优化方法及*** |
CN110708576A (zh) * | 2019-09-25 | 2020-01-17 | 李多 | 收视数据处理方法、装置以及存储介质 |
CN110737521A (zh) * | 2019-10-14 | 2020-01-31 | 中国人民解放军32039部队 | 基于任务调度中心的容灾方法和装置 |
CN111381956A (zh) * | 2018-12-28 | 2020-07-07 | 杭州海康威视数字技术股份有限公司 | 一种任务处理的方法、装置及云分析*** |
CN111522662A (zh) * | 2020-04-23 | 2020-08-11 | 柴懿晖 | 一种用于金融分析的节点***及其实现方法 |
CN111813565A (zh) * | 2020-09-15 | 2020-10-23 | 北京东方通科技股份有限公司 | 平衡网格计算环境中的工作负荷的方法和*** |
CN112769907A (zh) * | 2020-12-29 | 2021-05-07 | 苏宁消费金融有限公司 | 一种基于互联网金融行业分布式***内部数据交换*** |
CN112887345A (zh) * | 2019-11-29 | 2021-06-01 | 上海交通大学 | 边缘计算环境的节点负载均衡调度方法 |
CN113483479A (zh) * | 2021-05-31 | 2021-10-08 | 国网浙江省电力有限公司 | 一种变频空调与储能电池联合的辅助服务方法及*** |
CN114063888A (zh) * | 2020-07-31 | 2022-02-18 | 中移(苏州)软件技术有限公司 | 数据存储***、数据处理方法、终端及存储介质 |
Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2004061663A2 (en) * | 2002-12-31 | 2004-07-22 | Globespanvirata Incorporated | System and method for providing hardware-assisted task scheduling |
US20090100133A1 (en) * | 2003-06-26 | 2009-04-16 | International Business Machines Corporation | Slow-Dynamic Load Balancing System and Computer-Readable Medium |
CN101604264A (zh) * | 2009-07-08 | 2009-12-16 | 深圳先进技术研究院 | 超级计算机的任务调度方法及*** |
CN102033777A (zh) * | 2010-09-17 | 2011-04-27 | 中国资源卫星应用中心 | 基于ice的分布式作业调度引擎 |
CN102685237A (zh) * | 2012-05-16 | 2012-09-19 | 东南大学 | 一种集群环境下请求会话保持与调度的方法 |
CN102868733A (zh) * | 2012-08-29 | 2013-01-09 | 北京邮电大学 | 虚拟网络资源再映射方法 |
CN103246546A (zh) * | 2013-05-07 | 2013-08-14 | 山东大学 | 基于云技术的开放式电力***数值仿真***及其仿真方法 |
CN103617086A (zh) * | 2013-11-20 | 2014-03-05 | 东软集团股份有限公司 | 一种并行计算方法及*** |
CN103763373A (zh) * | 2014-01-23 | 2014-04-30 | 浪潮(北京)电子信息产业有限公司 | 一种基于云计算的调度方法和调度器 |
CN104253850A (zh) * | 2014-01-07 | 2014-12-31 | 深圳市华傲数据技术有限公司 | 一种任务分布式调度方法和*** |
CN104317658A (zh) * | 2014-10-17 | 2015-01-28 | 华中科技大学 | 一种基于MapReduce的负载自适应任务调度方法 |
CN104317650A (zh) * | 2014-10-10 | 2015-01-28 | 北京工业大学 | 一种面向Map/Reduce型海量数据处理平台的作业调度方法 |
CN104778080A (zh) * | 2014-01-14 | 2015-07-15 | 中兴通讯股份有限公司 | 基于协处理器的作业调度处理方法及装置 |
CN104852934A (zh) * | 2014-02-13 | 2015-08-19 | 阿里巴巴集团控股有限公司 | 基于前端调度实现流量分配的方法、装置和*** |
-
2016
- 2016-06-08 CN CN201610404437.0A patent/CN106095572B/zh active Active
Patent Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2004061663A2 (en) * | 2002-12-31 | 2004-07-22 | Globespanvirata Incorporated | System and method for providing hardware-assisted task scheduling |
US20090100133A1 (en) * | 2003-06-26 | 2009-04-16 | International Business Machines Corporation | Slow-Dynamic Load Balancing System and Computer-Readable Medium |
CN101604264A (zh) * | 2009-07-08 | 2009-12-16 | 深圳先进技术研究院 | 超级计算机的任务调度方法及*** |
CN102033777A (zh) * | 2010-09-17 | 2011-04-27 | 中国资源卫星应用中心 | 基于ice的分布式作业调度引擎 |
CN102685237A (zh) * | 2012-05-16 | 2012-09-19 | 东南大学 | 一种集群环境下请求会话保持与调度的方法 |
CN102868733A (zh) * | 2012-08-29 | 2013-01-09 | 北京邮电大学 | 虚拟网络资源再映射方法 |
CN103246546A (zh) * | 2013-05-07 | 2013-08-14 | 山东大学 | 基于云技术的开放式电力***数值仿真***及其仿真方法 |
CN103617086A (zh) * | 2013-11-20 | 2014-03-05 | 东软集团股份有限公司 | 一种并行计算方法及*** |
CN104253850A (zh) * | 2014-01-07 | 2014-12-31 | 深圳市华傲数据技术有限公司 | 一种任务分布式调度方法和*** |
CN104778080A (zh) * | 2014-01-14 | 2015-07-15 | 中兴通讯股份有限公司 | 基于协处理器的作业调度处理方法及装置 |
CN103763373A (zh) * | 2014-01-23 | 2014-04-30 | 浪潮(北京)电子信息产业有限公司 | 一种基于云计算的调度方法和调度器 |
CN104852934A (zh) * | 2014-02-13 | 2015-08-19 | 阿里巴巴集团控股有限公司 | 基于前端调度实现流量分配的方法、装置和*** |
CN104317650A (zh) * | 2014-10-10 | 2015-01-28 | 北京工业大学 | 一种面向Map/Reduce型海量数据处理平台的作业调度方法 |
CN104317658A (zh) * | 2014-10-17 | 2015-01-28 | 华中科技大学 | 一种基于MapReduce的负载自适应任务调度方法 |
Cited By (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108319495A (zh) * | 2017-01-16 | 2018-07-24 | 阿里巴巴集团控股有限公司 | 任务处理方法及装置 |
CN106874112B (zh) * | 2017-01-17 | 2020-04-28 | 华南理工大学 | 一种结合负载均衡的工作流回填方法 |
CN106874112A (zh) * | 2017-01-17 | 2017-06-20 | 华南理工大学 | 一种结合负载均衡的工作流回填方法 |
CN106933662A (zh) * | 2017-03-03 | 2017-07-07 | 广东神马搜索科技有限公司 | 分布式***及其调度方法和调度装置 |
CN106937092A (zh) * | 2017-04-11 | 2017-07-07 | 北京邮电大学 | 一种分布式计算平台中视频数据迁移方法及装置 |
WO2019219005A1 (zh) * | 2018-05-16 | 2019-11-21 | 杭州海康威视数字技术股份有限公司 | 一种数据处理***及方法 |
CN109254835A (zh) * | 2018-06-27 | 2019-01-22 | 阿里巴巴集团控股有限公司 | 批处理任务的处理方法、装置、服务器及可读存储介质 |
CN109359930A (zh) * | 2018-12-20 | 2019-02-19 | 上海德启信息科技有限公司 | 物流作业资源监控方法、装置和计算机设备 |
CN111381956A (zh) * | 2018-12-28 | 2020-07-07 | 杭州海康威视数字技术股份有限公司 | 一种任务处理的方法、装置及云分析*** |
CN111381956B (zh) * | 2018-12-28 | 2024-02-27 | 杭州海康威视数字技术股份有限公司 | 一种任务处理的方法、装置及云分析*** |
CN110554923A (zh) * | 2019-09-09 | 2019-12-10 | 吕春燕 | 一种用于云计算的分布链式计算资源的优化方法及*** |
CN110708576A (zh) * | 2019-09-25 | 2020-01-17 | 李多 | 收视数据处理方法、装置以及存储介质 |
CN110737521B (zh) * | 2019-10-14 | 2021-03-05 | 中国人民解放军32039部队 | 基于任务调度中心的容灾方法和装置 |
CN110737521A (zh) * | 2019-10-14 | 2020-01-31 | 中国人民解放军32039部队 | 基于任务调度中心的容灾方法和装置 |
CN112887345A (zh) * | 2019-11-29 | 2021-06-01 | 上海交通大学 | 边缘计算环境的节点负载均衡调度方法 |
CN111522662B (zh) * | 2020-04-23 | 2020-11-27 | 柴懿晖 | 一种用于金融分析的节点***及其实现方法 |
CN111522662A (zh) * | 2020-04-23 | 2020-08-11 | 柴懿晖 | 一种用于金融分析的节点***及其实现方法 |
CN114063888A (zh) * | 2020-07-31 | 2022-02-18 | 中移(苏州)软件技术有限公司 | 数据存储***、数据处理方法、终端及存储介质 |
CN111813565A (zh) * | 2020-09-15 | 2020-10-23 | 北京东方通科技股份有限公司 | 平衡网格计算环境中的工作负荷的方法和*** |
CN112769907A (zh) * | 2020-12-29 | 2021-05-07 | 苏宁消费金融有限公司 | 一种基于互联网金融行业分布式***内部数据交换*** |
CN113483479A (zh) * | 2021-05-31 | 2021-10-08 | 国网浙江省电力有限公司 | 一种变频空调与储能电池联合的辅助服务方法及*** |
CN113483479B (zh) * | 2021-05-31 | 2022-07-26 | 国网浙江省电力有限公司 | 一种变频空调与储能电池联合的辅助服务方法及*** |
Also Published As
Publication number | Publication date |
---|---|
CN106095572B (zh) | 2019-12-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106095572A (zh) | 一种大数据处理的分布式调度***及方法 | |
JP5088234B2 (ja) | メッセージ紐付け処理装置、方法及びプログラム | |
CN104601696B (zh) | 服务处理方法、服务调用***、装置和*** | |
CN105072182A (zh) | 一种负载均衡方法、负载均衡器和用户终端 | |
EP2710470B1 (en) | Extensible centralized dynamic resource distribution in a clustered data grid | |
CN103412786B (zh) | 一种高性能服务器架构***及数据处理方法 | |
CN108845878A (zh) | 基于无服务器计算的大数据处理方法及装置 | |
CN111338773A (zh) | 一种分布式定时任务调度方法、调度***及服务器集群 | |
CN103338252B (zh) | 一种分布式数据库并发存储虚拟请求机制的实现方法 | |
CN104092719B (zh) | 文件传输方法、装置及分布式集群文件*** | |
US10394606B2 (en) | Dynamic weight accumulation for fair allocation of resources in a scheduler hierarchy | |
CN106453457A (zh) | 云计算平台内的多优先级服务实例分配 | |
CN110020046B (zh) | 一种数据抓取方法及装置 | |
CN102369688A (zh) | 资源动态调整方法和调度设备 | |
CN104092756A (zh) | 一种基于dht机制的云存储***的资源动态分配方法 | |
CN110383764A (zh) | 无服务器***中使用历史数据处理事件的***和方法 | |
CN102629934A (zh) | 基于分布式存储***的数据存储方法及装置 | |
CN113014611B (zh) | 一种负载均衡方法及相关设备 | |
CN104052677B (zh) | 单一数据源的软负载均衡方法和装置 | |
CN108605017A (zh) | 查询计划和操作感知通信缓冲区管理 | |
CN109936593A (zh) | 一种消息分发的方法和*** | |
CN107357630A (zh) | 一种实现虚拟机同步的方法、装置和存储介质 | |
CN106844055A (zh) | 一种任务的执行方法和装置 | |
CN107065616A (zh) | 联动控制方法及装置、计算机可读存储介质 | |
CN102420863A (zh) | 一种快速分发文件***和方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
PP01 | Preservation of patent right |
Effective date of registration: 20220726 Granted publication date: 20191206 |
|
PP01 | Preservation of patent right |