CN104778079A - 用于调度、执行的装置和方法以及分布式*** - Google Patents

用于调度、执行的装置和方法以及分布式*** Download PDF

Info

Publication number
CN104778079A
CN104778079A CN201410011477.XA CN201410011477A CN104778079A CN 104778079 A CN104778079 A CN 104778079A CN 201410011477 A CN201410011477 A CN 201410011477A CN 104778079 A CN104778079 A CN 104778079A
Authority
CN
China
Prior art keywords
task
resource
dispatching
stock number
dimension
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
Application number
CN201410011477.XA
Other languages
English (en)
Other versions
CN104778079B (zh
Inventor
史巨伟
邹嘉
王俞
王岚君
王晨
曹朝
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Priority to CN201410011477.XA priority Critical patent/CN104778079B/zh
Priority to US14/592,087 priority patent/US9495206B2/en
Priority to US14/741,776 priority patent/US9501318B2/en
Publication of CN104778079A publication Critical patent/CN104778079A/zh
Application granted granted Critical
Publication of CN104778079B publication Critical patent/CN104778079B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种用于调度、执行的装置和方法以及分布式***,其中用于调度的装置包括:接收单元,配置为接收作业的任务;配置单元,配置为分别在至少两个资源维度上给所述任务配置资源量,其中,每个资源维度表示一种能用于配置的资源;以及接口单元,配置为分发所述任务及与给所述任务配置的各个资源维度上的资源量有关的信息。

Description

用于调度、执行的装置和方法以及分布式***
技术领域
本发明涉及计算机技术领域,更具体地,涉及一种用于调度的装置和方法、用于执行的装置和方法、以及分布式***。
背景技术
在分布式***中,采用多个节点设备执行作业。作业通常被切分为多个任务以在各节点上并行执行。相应地,节点上可用于执行任务的资源通常在逻辑上被划分为若干个相同的资源单位(也称为槽),每个空闲的资源单位可用于执行一个任务。
通常,资源单位在分布式***运行之前就被划分并固定。然而,划分好的资源单位可能不适应于运行中的各种不同任务。例如,对于某些任务来说,划分好的资源单位可能“过大”,导致执行该任务时资源单位中的部分资源闲置,降低了资源的利用率。
对此,曾提出根据节点资源的利用状态动态地调整资源单位划分的份数(即调整资源单位的大小),然而这一过程所带来的延迟(从测得节点资源状态,到完成资源单位的重新划分)通常会影响分布式***的性能,甚至对于某些作业来说是不可接受的。
发明内容
本发明通过分别在至少两个资源维度上给任务配置资源量,能够提高资源利用率。
本发明的第一方面提供了一种用于调度的装置,包括:接收单元,配置为接收作业的任务;配置单元,配置为分别在至少两个资源维度上给所述任务配置资源量,其中,每个资源维度表示一种能用于配置的资源;以及接口单元,配置为分发所述任务及与给所述任务配置的各个资源维度上的资源量有关的信息。
在一种可能的实施方式中,所述用于调度的装置还包括估计单元,配置为估计所述任务分别对至少两个资源维度上的资源量的消耗;其中,所述配置单元根据估计的结果分别在至少两个资源维度上给所述任务配置资源量。
在一种可能的实施方式中,所述估计单元根据历史信息来估计所述任务分别对至少两个资源维度上的资源量的消耗。
在一种可能的实施方式中,所述估计单元根据抽样信息来估计所述任务分别对至少两个资源维度上的资源量的消耗。
在一种可能的实施方式中,所述用于调度的装置还包括候选单元,配置为分别从多个作业中选取任务作为候选任务,供所述接口单元分发。
在一种可能的实施方式中,所述用于调度的装置还包括生成单元,配置为根据为各候选任务配置的各个资源维度上的资源量,生成各候选任务在所述接口单元中的分发方案。
在一种可能的实施方式中,所述用于调度的装置还包括判断单元,配置为估计假定经过预定延迟后所述生成单元生成的分发方案相对于所述生成单元当前生成的分发方案的收益,并在所估计的收益优于所述预定延迟的代价的情况下,指示所述生成单元经过所述预定延迟后再生成分发方案。
在一种可能的实施方式中,所述用于调度的装置包括在MapReduce装置中的Map装置中。
在一种可能的实施方式中,所述用于调度的装置包括在MapReduce装置中的Reduce装置中。
本发明的第二方面提供了一种用于调度的方法,包括:接收作业的任务;分别在至少两个资源维度上给所述任务配置资源量,其中,每个资源维度表示一种能用于配置的资源;以及分发所述任务及与给所述任务配置的各个资源维度上的资源量有关的信息。
在一种可能的实施方式中,所述用于调度的方法还包括:估计所述任务分别对至少两个资源维度上的资源量的消耗;其中,根据估计的结果分别在至少两个资源维度上给所述任务配置资源量。
在一种可能的实施方式中,根据历史信息来估计所述任务分别对至少两个资源维度上的资源量的消耗。
在一种可能的实施方式中,根据抽样信息来估计所述任务分别对至少两个资源维度上的资源量的消耗。
在一种可能的实施方式中,所述用于调度的方法还包括:分别从多个作业中选取任务作为候选任务进行分发。
在一种可能的实施方式中,所述的用于调度的方法还包括:根据为各候选任务配置的各个资源维度上的资源量,生成各候选任务的分发方案。
在一种可能的实施方式中,所述用于调度的方法还包括:估计假定经过预定延迟后生成的分发方案相对于当前生成的分发方案的收益,并在所估计的收益优于所述预定延迟的代价的情况下,经过所述预定延迟后再生成分发方案。
在一种可能的实施方式中,所述用于调度的方法包括在MapReduce处理中的Map处理中。
在一种可能的实施方式中,所述用于调度的方法包括在MapReduce处理中的Reduece处理中。
本发明的第三方面提供了一种用于执行的装置,包括:接收单元,配置为接收任务以及与分别在至少两个资源维度上给所述任务配置的资源量有关的信息;分配单元,配置为根据所述信息分别在所述至少两个资源维度上给所述任务分配资源;以及执行单元,配置为利用所分配的资源执行所述任务。
本发明的第四方面提供了一种用于执行的方法,包括:接收任务以及与分别在至少两个资源维度上给所述任务配置的资源量有关的信息;根据所述信息分别在所述至少两个资源维度上给所述任务分配资源;以及利用所分配的资源执行所述任务。
本发明的第五方面提供了一种分布式***,包括:根据本发明第一方面及其各可能的实施方式的用于调度的装置;以及根据本发明第三方面的用于执行的装置,配置为用于执行由所述用于调度的装置分发的任务。
附图说明
通过结合附图对本公开示例性实施方式进行更详细的描述,本公开的上述以及其它目的、特征和优势将变得更加明显,其中,在本公开示例性实施方式中,相同的参考标号通常代表相同部件。
图1示出了适于用来实现本发明实施方式的示例性计算机***/服务器12的框图。
图2示出了根据本发明的第一实施例的用于调度的装置200的示意性结构图。
图3示出了根据本发明的第一实施例的用于调度的方法的示意性流程图。
图4示出了根据本发明的第二实施例的用于调度的装置400的示意性结构图。
图5示出了根据本发明的第二实施例的用于调度的方法的示意性流程图。
图6示出了估计单元204的一个示例的示意性结构图。
图7示出了用于估计的步骤502的一个示例的示意性流程图。
图8示出了估计单元204的另一个示例的示意性结构图。
图9示出了用于估计的步骤502的另一个示例的示意性流程图。
图10示出了根据本发明的第三实施例的用于调度的装置1000的示意性结构图。
图11示出了根据本发明的第三实施例的用于调度的方法的示意性流程图。
图12示出了根据本发明的第四实施例的用于调度的装置1200的示意性结构图。
图13示出了根据本发明的第四实施例的用于调度的方法的示意性流程图。
图14示出了根据本发明的第五实施例的用于调度的装置1400的示意性结构图。
图15示出了根据本发明的第五实施例的用于调度的方法的示意性结流程图。
图16示出了用于解释判断单元207及用于判断的步骤1504的工作原理的图示。
图17示出了根据本发明的第六实施例的用于执行的装置1700的示意性结构图。
图18示出了根据本发明的第六实施例的用于执行的方法的示意性流程图。
图19示出了根据本发明的第七实施例的分布式***1900的示意性结构图。
具体实施方式
在附图中显示了本公开的一些优选实施方式,下面将参照附图更详细地描述这些优选实施方式。然而,可以以各种形式实现本公开,其不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
所属技术领域的技术人员知道,本发明的各个方面可以实现为***、方法或计算机程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、驻留软件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“***”。此外,在一些实施例中,本发明的各个方面还可以实现为在一个或多个计算机可读介质中的计算机程序产品的形式,该计算机可读介质中包含计算机可读的程序代码。
可以采用一个或多个计算机可读介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行***、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行***、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
下面将参照根据本发明实施例的方法、装置(***)和计算机程序产品的流程图和/或框图描述本发明。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机程序指令实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些计算机程序指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。
也可以把这些计算机程序指令存储在计算机可读介质中,这些指令使得计算机、其它可编程数据处理装置、或其他设备以特定方式工作,从而,存储在计算机可读介质中的指令就产生出包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的指令的制造品(article of manufacture)。
也可以把计算机程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机或其它可编程装置上执行的指令提供实现流程图和/或框图中的一个或多个方框中规定的功能/动作的过程。
图1示出了适于用来实现本发明实施方式的示例性计算机***/服务器12的框图。图1显示的计算机***/服务器12仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图1所示,计算机***/服务器12以通用计算设备的形式表现。计算机***/服务器12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,***存储器28,连接不同***组件(包括***存储器28和处理单元16)的总线18。
总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,***总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及***组件互连(PCI)总线。
计算机***/服务器12典型地包括多种计算机***可读介质。这些介质可以是任何能够被计算机***/服务器12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
***存储器28可以包括易失性存储器形式的计算机***可读介质,例如随机存取存储器(RAM)30和/或高速缓存存储器32。计算机***/服务器12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机***存储介质。仅作为举例,存储***34可以用于读写不可移动的、非易失性磁介质(图1未显示,通常称为“硬盘驱动器”)。尽管图1中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如存储器28中,这样的程序模块42包括——但不限于——操作***、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本发明所描述的实施例中的功能和/或方法。
计算机***/服务器12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该计算机***/服务器12交互的设备通信,和/或与使得该计算机***/服务器12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口22进行。并且,计算机***/服务器12还可以通过网络适配器20与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器20通过总线18与计算机***/服务器12的其它模块通信。应当明白,尽管图中未示出,可以结合计算机***/服务器12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID***、磁带驱动器以及数据备份存储***等。
<第一实施例>
将参考图2和图3来描述第一实施例。
图2示出了根据本发明的第一实施例的用于调度的装置200的示意性结构图,该装置主要包括接收单元201,配置单元202和接口单元203。
接收单元201可配置为接收作业的任务。
配置单元202可配置为分别在至少两个资源维度上给所述任务配置资源量,其中,每个资源维度表示一种能用于配置的资源。
接口单元203可配置为分发所述任务及与给所述任务配置的各个资源维度上的资源量有关的信息。
图3示出了根据本发明的第一实施例的用于调度的方法的示意性流程图,该方法主要包括:
步骤301,接收作业的任务。
步骤302,分别在至少两个资源维度上给所述任务配置资源量,其中,每个资源维度表示一种能用于配置的资源。
步骤303,分发所述任务及与给所述任务配置的各个资源维度上的资源量有关的信息。
这里,分别在至少两个资源维度上给任务配置资源量意味着,针对至少两种资源中的每一种资源分别地给任务配置资源量,也就是说,为各个任务所配置的至少两个资源维度上的资源量可以不是恒定成固定比例的。
不同于现有技术中以单一维度为任务配置资源量,该实施例分别在多个资源维度上给任务配置资源量,这使得为任务配置的资源量更加灵活且更加适应于任务的需要,从而提高了资源利用率。
在一种可能的实施方式中,分别在至少两个资源维度上给任务配置资源量可以体现为对能用于配置的各种资源分别进行划分,划分的份数可以互不关联且可以彼此不同,以及给任务分别配置各种资源的资源量,各种资源配置的份数可以互不关联且可以彼此不同。但是本实施例不限于此,例如也可以是对各种资源划分的份数彼此相同而为任务配置的各种资源的份数可以互不关联且可以彼此不同。
在一种可能的实施方式中,能用于配置的资源例如可以包括CPU资源、内存资源、硬盘资源、网络资源等。以CPU资源和内存资源为例,可将一个节点设备上的总CPU资源量(例如4核)划分为8份,即划分为8个0.5核的CPU资源单位,将总内存资源量(例如1G)划分为4份,即划分为4个0.25G的内存资源单位。对于一个倾向于内存消耗的任务,为其配置的资源量可为1个CPU单位,4个内存单位,而对于另一倾向于CPU消耗的任务,为其配置的资源量可为2个CPU单位和1个内存单位。
在一种可能的实施方式中,为任务配置资源量还可包括用代表各个资源维度的资源量的向量标签对任务进行标识。向量标签的形式例如为{CPU_SLOT,MEM_SLOT,DISK_SLOT,NET_SLOT},其中CPU_SLOT、MEM_SLOT、DISK_SLOT、NET_SLOT分别代表为任务配置的CPU、内存、硬盘、和网络的资源量。该向量标签可作为与给所述任务配置的各个资源维度上的资源量有关的信息随任务一起进行分发。
在一种可能的实施方式中,“分发”可以包括将所述任务及与给所述任务配置的各个资源维度上的资源量有关的信息发送或分配至执行所述任务的节点设备。
<第二实施例>
将参考图4至图9来描述第二实施例。
图4示出了根据本发明的第二实施例的用于调度的装置400的示意性结构图,其中,在第一实施例的基础上,该调度装置400还包括估计单元204,配置为估计所述任务分别对至少两个资源维度上的资源量的消耗。配置单元202可根据估计的结果分别在至少两个资源维度上给所述任务配置资源量。
图5示出了根据本发明的第二实施例的用于调度的方法的示意性流程图,其中,在与第一实施例的步骤301~303对应的步骤501、503、504基础上,该方法还包括步骤502,估计所述任务分别对至少两个资源维度上的资源量的消耗。其中在步骤503中,可根据估计的结果分别在至少两个资源维度上给所述任务配置资源量。
该实施例通过估计任务对各个资源维度上的资源量的消耗来对任务的资源量进行配置,进一步使得为任务配置的资源量适应于任务的需要,从而提高了资源的利用率。
在一种可能的实施方式中,可根据历史信息或抽样信息等相关信息来估计所述任务分别对至少两个资源维度上的资源量的消耗。
图6示出了估计单元204的一个示例的示意性结构图,该示例可根据历史信息来估计所述任务分别对至少两个资源维度上的资源量的消耗。在该示例中,估计单元204可包括:查找部件601和估计部件602。
查找部件601可配置为在历史信息中查找与当前作业相关联的历史作业。历史信息可以包含历史作业的特征和历史作业中的任务对各个资源维度上的资源量的消耗。在作业中的各任务可以视为同质或近似同质的情况下,可用作业的特征来表征作业中任务的特征。作业的特征可以包括作业名称(表示作业的逻辑,可决定作业对不同资源的消耗倾向)和作业数据量(表示作业的规模)等任何与任务消耗的资源量相关的特征。可以以例如“作业名称相同”作为查找的条件,然而查找条件不限于此,只要能够查找到与当前作业相关联的历史作业即可,这里“相关联”可以意味着“资源消耗特征相似”。
估计部件602可配置为根据历史信息中相关联的历史作业中的任务对各个资源维度上的资源量的消耗,来估计当前作业的任务分别对各个资源维度上的资源量的消耗。估计的方式例如可以是计算当前作业的数据量相对于相关联的历史作业的数据量的增益,将该增益乘以历史作业的任务的资源量消耗,即可估计出为当前作业的任务的资源量消耗。
图7示出了用于估计的步骤502的一个示例的示意性流程图,该示例可根据历史信息来估计所述任务分别对至少两个资源维度上的资源量的消耗。在该示例中,步骤502可包括:
步骤701,在历史信息中查找与当前作业相关联的历史作业;以及
步骤702,根据历史信息中相关联的历史作业中的任务对各个资源维度上的资源量的消耗,来估计当前作业的任务分别对各个资源维度上的资源量的消耗。
图6和图7所示的示例使得能够通过历史信息来对任务的资源量的配置进行有效的估计,从而避免了手动设置,进一步提高了效率。
图8示出了估计单元204的另一个示例的示意性结构图,该示例可根据抽样信息来估计所述任务分别对至少两个资源维度上的资源量的消耗。在该示例中,估计单元204可包括:抽样部件801和分析部件802。
抽样部件801可配置为对任务进行抽样。“抽样”例如可以是针对任务要处理的数据的抽样,例如对于处理一定量(例如100G)数据的任务,可以仅抽样其中的一部分(例如100M)数据供任务执行。“抽样”还可以是针对任务本身的抽样,例如对包含多个任务的作业,仅抽样其中的一部分(甚至一个)任务来执行,这种方式尤其适用于作业中的任务为同质的情况。“抽样”也可以是以上二者的结合,例如即对任务本身进行抽样,又对抽样出的任务要处理的数据进行抽样,以进一步提高估计的效率。
分析部件802可配置为分析被抽样的任务在执行过程中对各个资源维度上的资源量的消耗,并基于分析的结果估计任务分别对各个资源维度上的资源量的消耗。在一个示例中,可以直接将分析的结果作为估计的结果提供给配置单元202。
图9示出了用于估计的步骤502的另一个示例的示意性流程图,该示例可根据抽样信息来估计所述任务分别对至少两个资源维度上的资源量的消耗。在该示例中,用于估计的步骤502可包括:
步骤901,对任务进行抽样,
步骤902,分析被抽样的任务在执行过程中对各个资源维度上的资源量的消耗,并基于分析的结果估计任务分别对各个资源维度上的资源量的消耗。
图8和图9所示的示例使得在不存在历史信息的情况下,也能够以较小的代价估计任务对各资源维度上的资源量的消耗。
当然,例如对于仅执行相同或相似的任务的应用场景,也可以省略估计单元204,而由配置单元202直接根据作业或任务的数据量来配置任务的资源量。
<第三实施例>
将参考图10和图11来描述第三实施例。
图10示出了根据本发明的第三实施例的用于调度的装置1000的示意性结构图,其中,在第一实施例的基础上,该调度装置1000还包括候选单元205,可配置为分别从多个作业中选取任务作为候选任务,供所述接口单元203分发。
图11示出了根据本发明的第三实施例的用于调度的方法的示意性流程图,其中,在与第一实施例的步骤301~303对应的步骤1101、1102、1104基础上,该方法还包括步骤1103,分别从多个作业中选取任务作为候选任务进行分发。
尽管在第一实施例中也可以在处理完一个作业的所有任务后再处理下一个作业的任务,但该实施例通过分别从多个作业中选取任务作为候选任务,实现了多个作业之间的“公平处理”,并且使得不同性质的任务能够交替分发,形成对资源利用的“互补”,从而进一步提高资源利用率。
其中,配置单元202和候选单元205的位置可以互换,相应地,步骤1102和步骤1103的执行顺序也可以互换,也就是说,可以先给多个作业的任务配置资源量,再选取候选任务,也可以先选取候选任务,再给任务配置资源量。
在一种可能的实施方式中,选取的方式可包括但不限于对多个作业进行轮叫(round robin)等。
在一种可能的实施方式中,可将候选任务暂存在称为“任务池”的存储区域中,待任务池填充满后再进行分发,并在任务池中所有候选任务被分发完毕后,清空任务池并重新选取候选任务填充任务池。也可以采用随时向任务池补充候选任务的方式来替代清空任务池。任务池可容纳候选任务的数量优选与作业的数量相同,从而进一步提高公平性。
<第四实施例>
将参考图12和图13来描述第四实施例。
图12示出了根据本发明的第四实施例的用于调度的装置1200的示意性结构图,在第三实施例的基础上,该用于调度的装置1200还包括生成单元206,可配置为根据为各候选任务配置的各个资源维度上的资源量,生成各候选任务在所述接口单元203中的分发方案。
图13示出了根据本发明的第四实施例的用于调度的方法的示意性流程图,在与第三实施例的步骤1101~1104对应的步骤1301~1303、1305的基础上,该用于调度的方法还包括步骤1304,根据为各候选任务配置的各个资源维度上的资源量,生成各候选任务的分发方案。
尽管在第三实施例中也可以按照候选任务的自然顺序或选取顺序进行分发,但本实施例根据为各候选任务配置的各个资源维度上的资源量来生成分发方案,能够更好地根据任务之间的“互补性”(例如可能为某些任务配置的CPU资源多,而为另一些配置的CPU资源少),以及节点资源的利用状态(例如节点CPU资源可能闲置过多)来获得更加优化的分发方案,从而进一步提高资源利用率。
在一种可能的实施方式中,生成分发方案的原则可根据需要来任意设置,例如包括使得节点上各种资源的利用趋于平均、或优先利用节点上的闲置资源等。
在一种可能的实施方式中,可以根据上述原则对任务进行评分,例如对于能使得节点上各种资源利用的平均程度较高的任务,或对于倾向利用节点闲置资源的任务,可以给以较高评分。可根据评分来生成分发方案,例如按评分由高到低进行分发。
<第五实施例>
将参考图14至图15来描述第五实施例。
图14示出了根据本发明的第五实施例的用于调度的装置1400的示意性结构图,在第四实施例的基础上,该用于调度的装置1400还包括判断单元207,可配置为估计假定经过预定延迟后所述生成单元206生成的分发方案(称为延迟分发方案)相对于所述生成单元206当前生成的分发方案(称为当前分发方案)的收益,并在所估计的收益优于所述预定延迟的代价的情况下,指示所述生成单元206经过所述预定延迟后再生成分发方案。
图15示出了根据本发明的第五实施例的用于调度的方法的示意性结流程图,在与第四实施例的步骤1301~1305对应的步骤1501~1503、1505、1506的基础上,该方法还包括步骤1504:估计假定经过预定延迟后生成的分发方案(称为延迟分发方案)相对于当前生成的分发方案(称为当前分发方案)的收益,并在所估计的收益优于所述预定延迟的代价的情况下,经过所述预定延迟后再生成分发方案。
该实施例通过评估“是否值得延迟以换取更好的分发方案”来进一步提高资源利用率。
在一种可能的实施方式中,预定延迟如可以是即将执行完的下一个(或多个)任务的执行时间,或者可以是一个指定的时间,根据该指定时间可以确定假设要执行完接下来多少个任务。
在一种可能的实施方式中,收益例如可以是各种资源使用的平均程度,对空闲资源的有效利用程度等等。可以利用上文中的任务评分对收益进行估计,例如可以通过比较延迟分发方案和当前分发方案的任务评分来估计收益。
在一种可能的实施方式中,判断收益是否优于代价可以是:以一定的对应关系,将该收益与上述预定延迟进行比较(例如可将收益和预定延迟的时间换算成相同的度量单位来比较),如果收益超过延迟的代价,视为“值得延迟以换来更好的分发方案”,则先执行后续任务(即经过预定延迟)再生成分发方案(即采用延迟分发方案),否则,不执行后续任务直接生成分发方案(即采用当前分发方案)。
图16示出了用于解释判断单元207及用于判断的步骤1504的工作原理的图示。该图示仅为了便于理解,是示例性而非限制性的。图16中以方格组成的列示出了节点上的CPU、内存、硬盘、网络等四种可用于配置的资源,每个方格代表一个资源单位。假设存在五个性质不同的任务A、B、C、D、E,如下以向量标签来表示为各任务配置的各种资源的资源量:
A{2,4,1,1}
B{1,2,2,2}
C{5,2,5,5}
D{1,2,1,1}
E{3,4,2,1}
其中,A任务已在节点上执行完毕,空白方格表示A任务执行完毕后释放的空闲资源,B任务正在执行中且即将执行完毕,条纹状部分表示B任务占用的资源,C任务正在执行中且在B任务之后才能执行完毕,阴影部分表示C任务占用的资源,虚线框表示的D、E任务作为候选任务等待分发。
以B的执行时间作为预定延迟。在当前的状态下由于四种资源的空闲量为空白方格所示的(2,4,1,1),不足以执行任务E{3,4,2,1},因此当前生成的分发方案只能是先分发任务D至节点,这样,在任务B执行完毕后,节点上四种资源的空闲量为(2,4,2,2),仍不足以执行任务E,任务E只能分发至其他节点,该节点的资源(2,4,2,2)没有被充分利用。
但是如果在预定延迟之后,即任务B执行结束之后再生成分发方案,此时四种资源的空闲资源量将变为(3,6,3,3),延迟后生成的分发方案可以是先分发任务E至节点,这样,在任务B执行完毕后,节点上四种资源的空闲量为(0,2,1,2)。
可以看到延迟分发方案的未被利用资源(0,2,1,2)相比于当前分发方案(2,4,2,2)减小了且更平均了。这种减小和平均可视为前文所述的“收益”。可以根据需要设定规则,来衡量该收益是否高于代价(即任务B的执行时间),从而决定是否在执行步骤B后再生成分发方案。
以上以第一实施例为基础说明了第三至第五实施例,然而第三至第五实施例的特征也可以与第二实施例结合。
<第六实施例>
将参考图17和图18来描述第六实施例。
图17示出了根据本发明的第六实施例的用于执行的装置1700的示意性结构图,该用于执行的装置主要包括接收单元1701、分配单元1702和执行单元1703。
接收单元1701可配置为接收任务以及与分别在至少两个资源维度上给该任务配置的资源量有关的信息,该信息例如可以是上文所述的向量标签。
分配单元1702可配置为根据所述信息分别在所述至少两个资源维度上给所述任务分配资源。
执行单元1703可配置为利用所分配的资源执行所述任务。
图18示出了根据本发明的第六实施例的用于执行的方法的示意性流程图,该用于执行的方法主要包括:
步骤1801,接收任务以及与分别在至少两个资源维度上给该任务配置的资源量有关的信息,该信息例如可以是上文所述的向量标签。
步骤1802,根据所述信息分别在所述至少两个资源维度上给所述任务分配资源。
步骤1803,利用所分配的资源执行所述任务。
该实施例的用于执行的装置和方法根据分别在至少两个资源维度上给任务配置的资源量,来为任务分配资源以执行该任务,使得资源的分配更加灵活且更加适应于任务的需要,从而提高了资源利用率。
在一种可能的实施方式中,该用于执行的装置可以是节点设备,该用于执行的方法可在节点设备上执行。
<第七实施例>
将参考图19来描述第七实施例。
图19示出了根据本发明的第七实施例的分布式***1900的示意性结构图,该分布式***主要包括根据第一至第五实施例中的任意一种用于调度的装置1901;以及根据第六实施例的用于执行的装置(1902a,1902b,1902c,1902d),配置为用于执行由所述用于调度的装置分发的任务。用于执行的装置的数量不限于图19中所示的4个,而是可以为任意数量。
本发明的以上及其他实施例可应用于各种分布式应用场景,包括但不限于MapReduce。MapReduce已知地用于大规模数据集的并行运算,其通过Map(映射)和Reduce(化简)使应用程序在分布式***上运行。
现有的Map和Reduce在处理任务时,都是依赖于单一维度的任务槽(taskslot),因此存在资源利用率不高的问题。
本发明第一至第五实施例的用于调度的装置可包括在MapReduce装置的Map装置或Reduce装置中,本发明第一至第五实施例的用于调度的方法可包括在MapReduce处理的Map处理或Reduce处理中,从而将原有的单一维度的Map任务槽或Reduce任务槽改进为具有至少两个资源维度,并分别在至少两个资源维度上对Map任务或Reduce任务配置资源量,从而使得资源量配置更加灵活,资源利用率更高。
附图中的流程图和框图显示了根据本发明的多个实施例的***、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。

Claims (21)

1.一种用于调度的装置,包括:
接收单元,配置为接收作业的任务;
配置单元,配置为分别在至少两个资源维度上给所述任务配置资源量,其中,每个资源维度表示一种能用于配置的资源;以及
接口单元,配置为分发所述任务及与给所述任务配置的各个资源维度上的资源量有关的信息。
2.根据权利要求1所述的用于调度的装置,还包括:
估计单元,配置为估计所述任务分别对至少两个资源维度上的资源量的消耗;
其中,所述配置单元根据估计的结果分别在至少两个资源维度上给所述任务配置资源量。
3.根据权利要求2所述的用于调度的装置,其中
所述估计单元根据历史信息来估计所述任务分别对至少两个资源维度上的资源量的消耗。
4.根据权利要求2所述的用于调度的装置,其中
所述估计单元根据抽样信息来估计所述任务分别对至少两个资源维度上的资源量的消耗。
5.根据权利要求1至4中任意一项所述的用于调度的装置,还包括:
候选单元,配置为分别从多个作业中选取任务作为候选任务,供所述接口单元分发。
6.根据权利要求5所述的用于调度的装置,还包括:
生成单元,配置为根据为各候选任务配置的各个资源维度上的资源量,生成各候选任务在所述接口单元中的分发方案。
7.根据权利要求6所述的用于调度的装置,还包括:
判断单元,配置为估计假定经过预定延迟后所述生成单元生成的分发方案相对于所述生成单元当前生成的分发方案的收益,并在所估计的收益优于所述预定延迟的代价的情况下,指示所述生成单元经过所述预定延迟后再生成分发方案。
8.根据权利要求1-7中任意一项所述的用于调度的装置,其中所述用于调度的装置包括在MapReduce装置中的Map装置中。
9.根据权利要求1-7中任意一项所述的用于调度的装置,其中所述用于调度的装置包括在MapReduce装置中的Reduce装置中。
10.一种用于调度的方法,包括:
接收作业的任务;
分别在至少两个资源维度上给所述任务配置资源量,其中,每个资源维度表示一种能用于配置的资源;以及
分发所述任务及与给所述任务配置的各个资源维度上的资源量有关的信息。
11.根据权利要求10所述的用于调度的方法,还包括:
估计所述任务分别对至少两个资源维度上的资源量的消耗;
其中,分别在至少两个资源维度上给所述任务配置资源量包括:根据估计的结果分别在至少两个资源维度上给所述任务配置资源量。
12.根据权利要求11所述的用于调度的方法,其中,估计所述任务分别对至少两个资源维度上的资源量的消耗包括:
根据历史信息来估计所述任务分别对至少两个资源维度上的资源量的消耗。
13.根据权利要求11所述的用于调度的方法,其中,估计所述任务分别对至少两个资源维度上的资源量的消耗包括:
根据抽样信息来估计所述任务分别对至少两个资源维度上的资源量的消耗。
14.根据权利要求10至13中任意一项所述的用于调度的方法,还包括:
分别从多个作业中选取任务作为候选任务进行分发。
15.根据权利要求14所述的用于调度的方法,还包括:
根据为各候选任务配置的各个资源维度上的资源量,生成各候选任务的分发方案。
16.根据权利要求15所述的用于调度的方法,还包括:
估计假定经过预定延迟后生成的分发方案相对于当前生成的分发方案的收益,并在所估计的收益优于所述预定延迟的代价的情况下,经过所述预定延迟后再生成分发方案。
17.根据权利要求10至16中任意一项所述的用于调度的方法,其中所述用于调度的方法包括在MapReduce处理中的Map处理中。
18.根据权利要求10至16中任意一项所述的用于调度的方法,其中所述用于调度的方法包括在MapReduce处理中的Reduece处理中。
19.一种用于执行的装置,包括:
接收单元,配置为接收任务以及与分别在至少两个资源维度上给所述任务配置的资源量有关的信息;
分配单元,配置为根据所述信息分别在所述至少两个资源维度上给所述任务分配资源;以及
执行单元,配置为利用所分配的资源执行所述任务。
20.一种用于执行的方法,包括:
接收任务以及与分别在至少两个资源维度上给所述任务配置的资源量有关的信息;
根据所述信息分别在所述至少两个资源维度上给所述任务分配资源;以及
利用所分配的资源执行所述任务。
21.一种分布式***,包括:
根据权利要求1-9中的任意一项所述的用于调度的装置;以及
根据权利要求19所述的用于执行的装置,配置为用于执行由所述用于调度的装置分发的任务。
CN201410011477.XA 2014-01-10 2014-01-10 用于调度、执行的装置和方法以及分布式*** Expired - Fee Related CN104778079B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201410011477.XA CN104778079B (zh) 2014-01-10 2014-01-10 用于调度、执行的装置和方法以及分布式***
US14/592,087 US9495206B2 (en) 2014-01-10 2015-01-08 Scheduling and execution of tasks based on resource availability
US14/741,776 US9501318B2 (en) 2014-01-10 2015-06-17 Scheduling and execution of tasks based on resource availability

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410011477.XA CN104778079B (zh) 2014-01-10 2014-01-10 用于调度、执行的装置和方法以及分布式***

Publications (2)

Publication Number Publication Date
CN104778079A true CN104778079A (zh) 2015-07-15
CN104778079B CN104778079B (zh) 2018-07-20

Family

ID=53521455

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410011477.XA Expired - Fee Related CN104778079B (zh) 2014-01-10 2014-01-10 用于调度、执行的装置和方法以及分布式***

Country Status (2)

Country Link
US (2) US9495206B2 (zh)
CN (1) CN104778079B (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106776044A (zh) * 2017-01-11 2017-05-31 上海鲲云信息科技有限公司 硬件加速方法及***、硬件加速器执行方法及***
WO2017202108A1 (zh) * 2016-05-23 2017-11-30 中兴通讯股份有限公司 一种分布式***的资源配置方法及装置
CN107589985A (zh) * 2017-07-19 2018-01-16 山东大学 一种面向大数据平台的两阶段作业调度方法及***
CN107688500A (zh) * 2017-07-26 2018-02-13 阿里巴巴集团控股有限公司 一种分布式任务处理方法、装置、***及设备
CN108132840A (zh) * 2017-11-16 2018-06-08 浙江工商大学 一种分布式***中的资源调度方法及装置
CN110633946A (zh) * 2018-06-22 2019-12-31 西门子股份公司 任务分配***
WO2023273502A1 (zh) * 2021-06-30 2023-01-05 华为技术有限公司 作业处理的方法、装置、计算机设备以及存储介质
CN117234711A (zh) * 2023-09-05 2023-12-15 合芯科技(苏州)有限公司 Flink***资源动态分配方法、***、设备及介质

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104778079B (zh) 2014-01-10 2018-07-20 国际商业机器公司 用于调度、执行的装置和方法以及分布式***
US11487771B2 (en) * 2014-06-25 2022-11-01 Microsoft Technology Licensing, Llc Per-node custom code engine for distributed query processing
CN105320562B (zh) * 2015-11-26 2018-11-16 北京聚道科技有限公司 一种基于作业特征指纹的分布式作业加速运行方法与***
CN107885595B (zh) * 2016-09-30 2021-12-14 华为技术有限公司 一种资源分配方法、相关设备及***
US11573831B2 (en) * 2017-06-20 2023-02-07 International Business Machines Corporation Optimizing resource usage in distributed computing environments by dynamically adjusting resource unit size
US20190213048A1 (en) * 2018-01-11 2019-07-11 William Bohannon Mason Device network for incentivized mining utilizing leveraged computing resources within a block chain architecture
CN109709916B (zh) * 2018-12-20 2019-09-20 宁波大学 一种基于Gibbs取样法的调度方法
US10956215B2 (en) * 2019-02-18 2021-03-23 International Business Machines Corporation Predictive job admission control with feedback
CN113010309B (zh) * 2021-03-02 2022-10-25 北京达佳互联信息技术有限公司 集群资源调度方法、装置、存储介质、设备和程序产品

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070250838A1 (en) * 2006-04-24 2007-10-25 Belady Christian L Computer workload redistribution
US20110041136A1 (en) * 2009-08-14 2011-02-17 General Electric Company Method and system for distributed computation
US20120192197A1 (en) * 2009-12-18 2012-07-26 International Business Machines Corporation Automated cloud workload management in a map-reduce environment
CN102750602A (zh) * 2012-04-20 2012-10-24 广东电网公司信息中心 一种云平台异构一体化资源管理***
US20130031558A1 (en) * 2011-05-26 2013-01-31 International Business Machines Corporation Scheduling Mapreduce Jobs in the Presence of Priority Classes
CN102932279A (zh) * 2012-10-30 2013-02-13 北京邮电大学 一种云环境数据中心多维资源调度***及方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8402469B2 (en) * 2008-04-08 2013-03-19 Infosys Limited Allocating resources for parallel execution of query plans
WO2012144985A1 (en) 2011-04-19 2012-10-26 Hewlett-Packard Development Company, L.P. Scheduling map and reduce tasks of jobs for execution according to performance goals
US9128763B2 (en) 2011-08-23 2015-09-08 Infosys Limited System and method for job scheduling optimization
US9201690B2 (en) 2011-10-21 2015-12-01 International Business Machines Corporation Resource aware scheduling in a distributed computing environment
US9104493B2 (en) * 2012-11-06 2015-08-11 Facebook, Inc. System and method for cluster management
CN104778079B (zh) 2014-01-10 2018-07-20 国际商业机器公司 用于调度、执行的装置和方法以及分布式***

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070250838A1 (en) * 2006-04-24 2007-10-25 Belady Christian L Computer workload redistribution
US20110041136A1 (en) * 2009-08-14 2011-02-17 General Electric Company Method and system for distributed computation
US20120192197A1 (en) * 2009-12-18 2012-07-26 International Business Machines Corporation Automated cloud workload management in a map-reduce environment
US20130031558A1 (en) * 2011-05-26 2013-01-31 International Business Machines Corporation Scheduling Mapreduce Jobs in the Presence of Priority Classes
CN102750602A (zh) * 2012-04-20 2012-10-24 广东电网公司信息中心 一种云平台异构一体化资源管理***
CN102932279A (zh) * 2012-10-30 2013-02-13 北京邮电大学 一种云环境数据中心多维资源调度***及方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
M MUTHUSRINIVASAN等: "Optimizing the Update Packet Stream for Web Applications", 《INTERNATIONAL CONFERENCE ON BROADBAND COMMUNICATIONS》 *

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017202108A1 (zh) * 2016-05-23 2017-11-30 中兴通讯股份有限公司 一种分布式***的资源配置方法及装置
CN106776044A (zh) * 2017-01-11 2017-05-31 上海鲲云信息科技有限公司 硬件加速方法及***、硬件加速器执行方法及***
CN106776044B (zh) * 2017-01-11 2020-02-04 深圳鲲云信息科技有限公司 基于数据流的硬件加速方法及***
CN107589985A (zh) * 2017-07-19 2018-01-16 山东大学 一种面向大数据平台的两阶段作业调度方法及***
CN107589985B (zh) * 2017-07-19 2020-04-24 山东大学 一种面向大数据平台的两阶段作业调度方法及***
CN107688500A (zh) * 2017-07-26 2018-02-13 阿里巴巴集团控股有限公司 一种分布式任务处理方法、装置、***及设备
CN107688500B (zh) * 2017-07-26 2021-12-24 创新先进技术有限公司 一种分布式任务处理方法、装置、***及设备
CN108132840A (zh) * 2017-11-16 2018-06-08 浙江工商大学 一种分布式***中的资源调度方法及装置
CN110633946A (zh) * 2018-06-22 2019-12-31 西门子股份公司 任务分配***
WO2023273502A1 (zh) * 2021-06-30 2023-01-05 华为技术有限公司 作业处理的方法、装置、计算机设备以及存储介质
CN117234711A (zh) * 2023-09-05 2023-12-15 合芯科技(苏州)有限公司 Flink***资源动态分配方法、***、设备及介质
CN117234711B (zh) * 2023-09-05 2024-05-07 合芯科技(苏州)有限公司 Flink***资源动态分配方法、***、设备及介质

Also Published As

Publication number Publication date
US9501318B2 (en) 2016-11-22
US9495206B2 (en) 2016-11-15
CN104778079B (zh) 2018-07-20
US20150199216A1 (en) 2015-07-16
US20150286504A1 (en) 2015-10-08

Similar Documents

Publication Publication Date Title
CN104778079A (zh) 用于调度、执行的装置和方法以及分布式***
CN108537543B (zh) 区块链数据的并行处理方法、装置、设备和存储介质
US11036552B2 (en) Cognitive scheduler
CN108595157B (zh) 区块链数据的处理方法、装置、设备和存储介质
US9720740B2 (en) Resource management in MapReduce architecture and architectural system
CN110929860B (zh) 一种卷积加速运算方法、装置、存储介质及终端设备
US9558045B2 (en) Realizing graph processing based on the MapReduce architecture
CN109033001B (zh) 用于分配gpu的方法和装置
WO2016090946A1 (zh) 一种虚拟数据中心资源映射方法和设备
CN111930519B (zh) 用于分布式数据处理的并行决策***及其方法
CN104252391A (zh) 用于在分布式计算***中管理多个作业的方法和装置
US20210152424A1 (en) Selecting and using a cloud-based hardware accelerator
CN105511957A (zh) 用于生成作业告警的方法和***
CN108153589B (zh) 用于多线程的处理布置中的数据处理的方法和***
CN104252472A (zh) 用于并行化数据处理的方法和装置
US20160062929A1 (en) Master device, slave device and computing methods thereof for a cluster computing system
CN113902120A (zh) 异构云解算平台混合计算任务动态自适应划分调度方法及***
CN116467061B (zh) 一种任务执行的方法、装置、存储介质及电子设备
CN111984729A (zh) 异构数据库数据同步方法、装置、介质和电子设备
US20200057685A1 (en) Automatically deploying hardware accelerators based on requests from users
WO2016018352A1 (en) Platform configuration selection based on a degraded makespan
CN104598304A (zh) 用于作业执行中的调度的方法和装置
CN109412865B (zh) 一种虚拟网络资源分配方法、***及电子设备
US20210303162A1 (en) Method, electronic device, and computer program product for recovering data
US10120602B2 (en) Device and method for determining data placement destination, and program recording medium

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
EXSB Decision made by sipo to initiate substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20180720

CF01 Termination of patent right due to non-payment of annual fee