JP2020531967A - 分散システム資源配分の方法、装置、及びシステム - Google Patents

分散システム資源配分の方法、装置、及びシステム Download PDF

Info

Publication number
JP2020531967A
JP2020531967A JP2020508488A JP2020508488A JP2020531967A JP 2020531967 A JP2020531967 A JP 2020531967A JP 2020508488 A JP2020508488 A JP 2020508488A JP 2020508488 A JP2020508488 A JP 2020508488A JP 2020531967 A JP2020531967 A JP 2020531967A
Authority
JP
Japan
Prior art keywords
resource
job
management server
job management
return
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.)
Pending
Application number
JP2020508488A
Other languages
English (en)
Inventor
チャン,ヤン
フェン,イーフイ
オウヤン,ジン
ハン,チャオファン
ワン,ファン
Original Assignee
アリババ グループ ホウルディング リミテッド
アリババ グループ ホウルディング リミテッド
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 アリババ グループ ホウルディング リミテッド, アリババ グループ ホウルディング リミテッド filed Critical アリババ グループ ホウルディング リミテッド
Publication of JP2020531967A publication Critical patent/JP2020531967A/ja
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/61Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources taking into account QoS or priority requirements
    • 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/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5022Mechanisms to release resources
    • 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
    • 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/4812Task transfer initiation or dispatching by interrupt, e.g. masked
    • G06F9/4818Priority circuits therefor
    • 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
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution
    • 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
    • G06F9/505Allocation 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 the load
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0893Assignment of logical groups to network elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5003Managing SLA; Interaction between SLA and QoS
    • H04L41/5019Ensuring fulfilment of SLA
    • H04L41/5022Ensuring fulfilment of SLA by giving priorities, e.g. assigning classes of service
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/78Architectures of resource allocation
    • H04L47/783Distributed allocation of resources, e.g. bandwidth brokers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/82Miscellaneous aspects
    • H04L47/827Aggregation of resource allocation or reservation requests
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/48Indexing scheme relating to G06F9/48
    • G06F2209/483Multiproc
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5021Priority

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Hardware Redundancy (AREA)
  • Multi Processors (AREA)

Abstract

分散システム資源配分方法、装置、及びシステムが、本出願の実施形態において提供される。この方法は、資源スケジューリングサーバによって送信された資源先取りリクエストを受信することであって、資源先取りリクエストが、第1のジョブ管理サーバに対応するジョブ実行情報を含む、受信することと、第1のジョブ管理サーバに対応し、及び資源先取りリクエスト内に含まれるジョブ実行情報に応じて、第2のジョブ管理サーバによって返却されるべき資源及び資源返却デッドラインを決定することと、決定された返却されるべき資源及び資源返却デッドライン、並びに第2のジョブ管理サーバの現在のジョブ実行進捗に応じて、資源返却デッドラインの満了前に資源スケジューリングサーバに返却されるべき資源を返却することと、を含む。本出願の実施形態において提供される方法を用いて、システム資源の利用を効果的に向上させることができ、且つ資源の無駄を減らすことができる。

Description

本出願は、2017年8月24日に出願され、及び「分散システム資源配分の方法、装置、及びシステム」という名称の、その全体が本明細書に援用される中国特許出願第201710737516.8号に対する優先権を主張するものである。
技術分野
本出願の実施形態は、コンピュータ技術の分野、特に、分散システム資源配分の方法、装置、及びシステムに関する。
技術背景
分散システムでは、ジョブノードが資源を申請する必要がある場合、ジョブ管理サーバは、ジョブノードによって使用するための特定数のマシン資源を申請するために、資源スケジューリングサーバに資源申請リクエストを送信し得る。資源申請リクエストの受信後に、資源スケジューリングサーバは、分散システムにおける残りの利用可能な資源に応じて、ジョブ管理サーバに配分することができる利用可能な資源を計算し、利用可能な資源のリストを生成し、及び利用可能な資源のリストをジョブ管理サーバに送信し得る。利用可能な資源のリストの受信後に、ジョブ管理サーバは、ジョブプログラムを実行するための対応するマシンノードにジョブノードを配分し得る。
あるクラスタの全資源は、多くの場合、分散システムにおいて使い尽くされることがあり、これは、資源申請の待ち行列管理につながる。一般に、資源申請リクエストは、優先度に応じて待ち行列に入れられ、資源リクエストは、定期的に待ち行列から取り出され、及び資源の配分を要求するために再提出され得る。待ち行列では、優先度の高い資源リクエストが最高位にランク付けされ、及び優先度の低い資源リクエストが最下位にランク付けされる。資源スケジューリングサーバが、即時の資源配分を必要とする優先度の高い資源申請リクエストを受信すると、資源スケジューリングサーバは、優先度の高い資源申請によって資源が迅速に取得され得ることを確実にするために、優先度の低いジョブ資源を強引にリサイクルし、その結果、優先度の高い資源申請が優先度の低いジョブ資源を先取りすることを可能にし得る。
研究時に、本出願人は、優先度の低いジョブの資源が優先度の高い資源申請によって先取りされると、資源スケジューリングサーバが、優先度の低いジョブの資源を直ちにリサイクルし得る(この場合、実行中の優先度の低いジョブのプログラムが、直ちに且つ強制的に終了させられ得る)ことを発見した。優先度の低いジョブのほとんどが実行済みであった場合、ジョブの即時終了方法は、資源が再び取得された後に、優先度の低いジョブを最初からやり直すことを必要とし、これは、システム全体の資源利用効率を低下させる。
発明の概要
分散システム資源配分の方法、装置、及びシステムが、本出願の実施形態において提供され、これにより、資源先取り(resource preemption)に関するジョブ管理サーバのジョブ実行情報、及び資源返却(resource return)に関するジョブ管理サーバの現在のジョブ実行進捗に応じて、資源を返却する時刻を決定することができ、その結果、システム資源の利用が効果的に向上し、且つ資源の無駄が減る。
この目的のために、以下の技術的解決策が、本出願の実施形態において提供される。
第1の局面では、本出願の実施形態において、資源スケジューリングサーバ、第1のジョブ管理サーバ、及び第2のジョブ管理サーバを含む分散資源配分システムであって、第1のジョブ管理サーバが、資源申請リクエストを資源スケジューリングサーバに送信するように構成され、及び資源申請リクエストが、第1のジョブ管理サーバのジョブ実行情報を少なくとも含み、資源スケジューリングサーバが、資源先取り条件が満たされたと判断された場合に、資源先取りに関する第1のジョブ管理サーバ及び資源返却に関する第2のジョブ管理サーバを決定することと、資源返却に関する第2のジョブ管理サーバに資源先取りリクエストを送信することであって、資源先取りリクエストが、資源先取りに関する第1のジョブ管理サーバに対応するジョブ実行情報を少なくとも含む、送信することと、資源返却に関する第2のジョブ管理サーバによって送信された資源返却リクエストを受信し、及び資源返却リクエストに対応する資源を資源先取りに関する第1のジョブ管理サーバに配分することと、を行うように構成され、第2のジョブ管理サーバが、資源スケジューリングサーバによって送信された資源先取りリクエストを受信し、並びに第1のジョブ管理サーバに対応し、及び資源先取りリクエストに含まれるジョブ実行情報に応じて、第2のジョブ管理サーバによって返却されるべき資源及び資源返却デッドラインを決定することと、決定された資源返却デッドライン及び第2のジョブ管理サーバの現在のジョブ実行進捗に応じて、資源返却デッドラインの満了前に、資源スケジューリングサーバに返却されるべき資源を返却することと、を行うように構成される、分散資源配分システムが提供される。
第2の局面では、本出願の実施形態において、資源スケジューリングサーバによって送信された資源先取りリクエストを受信することであって、資源先取りリクエストが、第1のジョブ管理サーバに対応するジョブ実行情報を含む、受信することと、第1のジョブ管理サーバに対応し、及び資源先取りリクエストに含まれるジョブ実行情報に応じて、第2のジョブ管理サーバによって返却されるべき資源及び資源返却デッドラインを決定することと、決定された資源返却デッドライン及び第2のジョブ管理サーバの現在のジョブ実行進捗に応じて、資源返却デッドラインの満了前に資源スケジューリングサーバに返却されるべき資源を返却することと、を含む、第2のジョブ管理サーバに適用される分散システム資源配分方法が提供される。
第3の局面では、本出願の実施形態において、資源先取り条件が満たされたと判断された場合に、資源先取りに関する第1のジョブ管理サーバ及び資源返却に関する第2のジョブ管理サーバを決定することと、資源返却に関する第2のジョブ管理サーバに資源先取りリクエストを送信することであって、資源先取りリクエストが、資源先取りに関する第1のジョブ管理サーバに対応するジョブ実行情報を少なくとも含む、送信することと、資源返却に関する第2のジョブ管理サーバによって送信された資源返却リクエストを受信し、及び資源返却リクエストに対応する資源を資源先取りに関する第1のジョブ管理サーバに配分することと、を含む、資源スケジューリングサーバに適用される分散システム資源配分方法が提供される。
第4の局面では、本出願の実施形態において、資源スケジューリングサーバに資源申請リクエストを送信することであって、資源申請リクエストが、ジョブの出力デッドライン又はジョブの資源取得デッドラインを少なくとも含む、送信することと、資源スケジューリングサーバによって送信された資源配分リクエストを受信し、及び資源配分リクエストに対応する資源を獲得することと、を含む、第1のジョブ管理サーバに適用される分散システム資源配分方法が提供される。
第5の局面では、本出願の実施形態において、資源スケジューリングサーバによって送信された資源先取りリクエストを受信するように構成された受信ユニットであって、資源先取りリクエストが、第1のジョブ管理サーバに対応するジョブ実行情報を含む、受信ユニットと、第1のジョブ管理サーバに対応し、及び資源先取りリクエストに含まれるジョブ実行情報に応じて、第2のジョブ管理サーバによって返却されるべき資源及び資源返却デッドラインを決定するように構成された決定ユニットと、決定された資源返却デッドライン及び第2のジョブ管理サーバの現在のジョブ実行進捗に応じて、資源返却デッドラインの満了前に資源スケジューリングサーバに返却されるべき資源を返却するように構成された資源返却ユニットと、を含む第2のジョブ管理サーバが提供される。
第6の局面では、本出願の実施形態において、資源先取り条件が満たされたと判断された場合に、資源先取りに関する第1のジョブ管理サーバ及び資源返却に関する第2のジョブ管理サーバを決定するように構成された決定ユニットと、資源返却に関する第2のジョブ管理サーバに資源先取りリクエストを送信するように構成された送信ユニットであって、資源先取りリクエストが、資源先取りに関する第1のジョブ管理サーバに対応するジョブ実行情報を少なくとも含む、送信ユニットと、資源返却に関する第2のジョブ管理サーバによって送信された資源返却リクエストを受信し、及び資源返却リクエストに対応する資源を資源先取りに関する第1のジョブ管理サーバに配分するように構成された配分ユニットと、を含む資源スケジューリングサーバが提供される。
第7の局面では、本出願の実施形態において、資源申請リクエストを資源スケジューリングサーバに送信するように構成された送信ユニットであって、資源申請リクエストが、ジョブの出力デッドライン又はジョブの資源取得デッドラインを少なくとも含む、送信ユニットと、資源スケジューリングサーバによって送信された資源配分リクエストを受信し、及び資源配分リクエストに対応する資源を獲得するように構成された受信ユニットと、を含む第1のジョブ管理サーバが提供される。
第8の局面では、本出願の実施形態において、メモリ及び1つ又は複数のプログラムを含む資源配分のための装置であって、1つ又は複数のプログラムが、メモリに保存され、及び1つ又は複数のプロセッサによって実行されるように構成され、並びに1つ又は複数のプログラムが、以下の動作:資源スケジューリングサーバによって送信された資源先取りリクエストを受信することであって、資源先取りリクエストが、第1のジョブ管理サーバに対応するジョブ実行情報を含む、受信することと、第1のジョブ管理サーバに対応し、及び資源先取りリクエストに含まれるジョブ実行情報に応じて、第2のジョブ管理サーバによって返却されるべき資源及び資源返却デッドラインを決定することと、決定された資源返却デッドライン及び第2のジョブ管理サーバの現在のジョブ実行進捗に応じて、資源返却デッドラインの満了前に資源スケジューリングサーバに返却されるべき資源を返却することと、を行うための命令を含む、装置が提供される。
第9の局面では、本出願の実施形態において、メモリ及び1つ又は複数のプログラムを含む資源配分のための装置であって、1つ又は複数のプログラムが、メモリに保存され、及び1つ又は複数のプロセッサによって実行されるように構成され、並びに1つ又は複数のプログラムが、以下の動作:資源先取り条件が満たされたと判断された場合に、資源先取りに関する第1のジョブ管理サーバ及び資源返却に関する第2のジョブ管理サーバを決定することと、資源返却に関する第2のジョブ管理サーバに資源先取りリクエストを送信することであって、資源先取りリクエストが、資源先取りに関する第1のジョブ管理サーバに対応するジョブ実行情報を少なくとも含む、送信することと、資源返却に関する第2のジョブ管理サーバによって送信された資源返却リクエストを受信し、及び資源返却リクエストに対応する資源を資源先取りに関する第1のジョブ管理サーバに配分することと、を行うための命令を含む、装置が提供される。
第10の局面では、本出願の実施形態において、メモリ及び1つ又は複数のプログラムを含む資源配分のための装置であって、1つ又は複数のプログラムが、メモリに保存され、及び1つ又は複数のプロセッサによって実行されるように構成され、並びに1つ又は複数のプログラムが、以下の動作:資源スケジューリングサーバに資源申請リクエストを送信することであって、資源申請リクエストが、ジョブの出力デッドライン又はジョブの資源取得デッドラインを少なくとも含む、送信することと、資源スケジューリングサーバによって送信された資源配分リクエストを受信し、及び資源配分リクエストに対応する資源を獲得することと、を行うための命令を含む、装置が提供される。
本出願の実施形態において提供される分散システム資源配分の方法、装置、及びシステムによれば、資源先取り条件が満たされたと決定する場合に、資源スケジューリングサーバは、資源返却に関する第2のジョブ管理サーバに資源先取りリクエストを送信することができ、並びに第2のジョブ管理サーバは、資源先取りリクエストに含まれる第1のジョブ管理サーバのジョブ実行情報に応じて、資源返却デッドラインを決定することと、決定された資源返却デッドライン及び第2ジョブ管理サーバの現在のジョブ実行進捗に応じて、資源返却デッドラインの満了前に、資源スケジューリングサーバに返却されるべき資源を返却することと、ができる。本出願の実施形態において提供される方法を用いて、資源先取り条件が満たされたと決定された場合に、第2のジョブ管理サーバに配分された資源は、すぐにリサイクルはされず、第2のジョブ管理サーバは、第2のジョブ管理サーバが効果的に資源を利用できると同時に、システムの全体的な資源利用効率を効果的に向上させることができ、及び資源の無駄を減らすことができるように、第1のジョブ管理サーバのジョブ実行情報及び第2のジョブ管理サーバの現在のジョブ実行進捗に応じて、資源返却時刻を決定する。
図面の簡単な説明
本出願の実施形態による、又は先行技術における技術的解決策をより明確に示すために、実施形態又は先行技術を説明するために必要とされる添付の図面を以下に簡潔に紹介する。以下の説明における添付の図面は、本出願に記載する幾つかの実施形態にすぎないことは明白である。当業者は、何ら創造的な努力を行うことなく、添付の図面に従って他の図面を得ることができる。
本出願の一実施形態による分散資源配分システムの模式図である。 本出願の一実施形態による分散システム資源配分方法のフローチャートである。 本出願の別の実施形態による分散システム資源配分方法のフローチャートである。 本出願の一実施形態による資源配分待ち行列の模式図である。 本出願のさらに別の実施形態による分散システム資源配分方法のフローチャートである。 本出願のさらに別の実施形態による分散システム資源配分方法のフローチャートである。 本出願の一実施形態による第1のジョブ管理サーバの模式図である。 本出願の一実施形態による資源スケジューリングサーバの模式図である。 本出願の一実施形態による第2のジョブ管理サーバの模式図である。 ある例示的実施形態による資源配分のための装置のブロック図である。 ある例示的実施形態による資源配分のための装置のブロック図である。 ある例示的実施形態による資源配分のための装置のブロック図である。
詳細な説明
分散システム資源配分の方法、装置、及びシステムが、本出願の実施形態において提供され、これにより、資源先取りに関するジョブ管理サーバのジョブ実行情報、及び資源返却に関するジョブ管理サーバの現在のジョブ実行進捗に応じて資源を返却する時刻を決定することができ、システム資源の利用を効果的に向上させることができ、並びに資源の無駄を減らすことができる。
本出願の実施形態で使用される用語は、本出願を限定するのではなく、単に、特定の実施形態を説明するために使用されるものである。本出願の実施形態及び添付の特許請求の範囲で使用される単数形「a(n)」、「said」、及び「the」は、文脈において他の意味を示すことが明確に指定されない限り、複数形も含む。本文で使用される「及び/又は」という用語が、列挙される1つ又は複数の関連の項目の何れか又は全ての可能な組み合わせを指し、及び含むことがさらに理解されるものとする。
「資源スケジューリングサーバ」(正式英名は、Resource Managerである)という技術用語は、一般に、分散システムにおいてシステムの利用可能な資源の調整及び配分を行うサーバを指す。
「ジョブ管理サーバ」(正式英名は、Job Masterである)という技術用語は、一般に、全ジョブノードを代表して資源スケジューリングサーバにジョブ資源を申請し、及びジョブプログラムをマシンノードに送信する責任を負う、分散システムにおいてジョブの全てのジョブノード(Job Worker)を制御する役割を指す。一般に、複数のジョブ管理サーバが、分散システムに含まれ得る。
「マシンノード」(正式英名は、Machine Nodeである)という技術用語は、一般に、分散システムにおいてマシンを代表してユーザのジョブプログラムの実行を監視する責任を負う役割を指す。
「ジョブノード」(正式英名は、Job Workerである)という技術用語は、一般に、分散システムにおいて特定のジョブプログラムを実行する役割を指す(これは、一般に、ジョブ管理サーバと通信するだけである)。
「ジョブ申請資源」(正式英名は、Requestである)という技術用語は、一般に、資源申請リクエストに対応する、分散システムにおいてジョブ管理サーバによって申請された資源を指す。
「ジョブ取得資源」(正式英名は、Resourceである)という技術用語は、一般に、分散システムからジョブ管理サーバによって取得された資源、すなわち、資源スケジューラによってジョブ管理サーバに配分された資源を指す。
「マシン取得資源」「正式英名は、Resourceである」という技術用語は、一般に、資源スケジューラからマシンによって取得された特定のジョブノードの資源を指す。一般に、ジョブノードは、マシンが資源スケジューラからジョブノードの資源を取得して初めてプログラムを実行することを許可される。特定のジョブノードの資源が資源スケジューラによってリサイクルされた後に、マシンは、ジョブノードの実行を強制的に終了する。
「資源申請リクエストの優先度」(Priority)という技術用語は、資源申請リクエストの優先度を表すために使用される。より高い優先度は、資源リクエストがより重要であり、及び優先的に対応されるべきであることを示す。
「生産ジョブ」という技術用語は、一般に、毎日決められた時刻に実行されるジョブを指す。
「開発ジョブ」という技術用語は、一般に、可変の毎日の実行時間で、及びより低い優先度で、プログラムをデバッグするために開発者によって提出される実験的ジョブを指す。
「ジョブ出力デッドライン」という技術用語は、一般に、ユーザジョブを完全に実行することができる最遅時刻を指す。
「資源取得デッドライン」という技術用語は、一般に、ジョブ管理サーバが資源を取得する最遅時刻を指す。
「資源返却デッドライン」という技術用語は、一般に、ジョブ管理サーバが資源を返却する最遅時刻を指す。
「ジョブ実行時間」という技術用語は、一般に、ジョブを完全に実行するためにかかる時間を指す。
図1を参照すると、本出願の一実施形態による分散資源配分システムが示されている。分散資源配分システムは、資源スケジューリングサーバ800、第1のジョブ管理サーバ700、及び第2のジョブ管理サーバ900を含む。複数のジョブ管理サーバが、分散資源配分システムに含まれ得る。
先行技術では、優先度の低いジョブの資源が優先度の高い資源申請によって先取りされるとき、資源スケジューリングサーバは、直ちに優先度の低いジョブの資源をリサイクルし得ることに留意されたい。この場合、実行中の優先度の低いジョブのプログラムが、直ちに且つ強制的に終了させられ得る。
研究時に、本出願人は、このような実施が少なくとも以下の欠点を含み得ることを発見した。(1)優先度の低いジョブが、1時間実行される必要があり、且つ現在55分間実行されていると仮定すると、ジョブがあと5分間実行された後に、資源が返却され得ることが予期される。資源先取り事象がこの時点で生じ、資源スケジューリングサーバが強制的に優先度の低いジョブの資源をリサイクルする場合、資源は、システム全体の資源利用の観点からすれば、55分間も無駄にされる。(2)優先度の低いジョブが、実行中に優先度の高いジョブに資源を譲ることができるだけである場合、強引なリサイクルの履行は、優先度の低いジョブの実行された部分の完全な損失をもたらし、及びバックアップを取る機会がない。優先度の低いジョブが再び資源を取得すると、その実行は、最初からやり直す必要があり、従って、実行効率を低下させる。(3)優先度の高いジョブが、1時間実行される必要があり、且つ資源申請リクエストの提出時刻が、ジョブ出力デッドラインから2時間の期間があると仮定して、優先度の高いジョブが直ちに優先度の低いジョブの資源を先取りし、且つ優先度の低いジョブをたった5分で完全に実行することができれば、この時点における、このような強引な先取りは、不要である。
上記の分析により、本出願人は、優先度の低いジョブの資源が、優先度の高いジョブの実行時間、出力デッドライン、及び優先度の低いジョブの実行進捗を考慮することなく、そのまま強引にリサイクルされ、及び優先度の高いジョブに配分される場合、不要な先取り事象が生じ、それによって、システムの資源利用が減少することを発見した。
上記に鑑みて、本出願では、優先度の低いジョブの配分された資源をそのまま強引にリサイクルする方法に代わる資源配分方法、装置、及びシステムが提供される。資源の先取り事象が生じると、資源スケジューリングサーバ及び優先度の低いジョブのジョブ管理サーバは、最初に一連のインタラクティブなネゴシエーションを行い、並びに優先度の高いジョブが資源を取得することができると同時に、システムの効果的な資源利用を最大化できることを確実にすることができるように、優先度の高いジョブの実行時間、出力デッドライン、及び優先度の低いジョブの実行進捗などの情報に応じて、優先度の低いジョブの資源リサイクル時刻を総合的に判断することができる。
図1に示すように、分散資源配分システムは、資源スケジューリングサーバ800、第1のジョブ管理サーバ700、及び第2のジョブ管理サーバ900を含む。
第1のジョブ管理サーバ700は、資源申請リクエストを資源スケジューリングサーバに送信するように構成され、資源申請リクエストは、第1のジョブ管理サーバ700のジョブ実行情報を少なくとも含む。
資源スケジューリングサーバ800は、資源先取り条件が満たされたと判断された場合に、資源先取りに関する第1のジョブ管理サーバ700及び資源返却に関する第2のジョブ管理サーバ900を決定することと、資源返却に関する第2のジョブ管理サーバ900に資源先取りリクエストを送信する(資源先取りリクエストは、資源先取りに関する第1のジョブ管理サーバ700に対応するジョブ実行情報を少なくとも含む)ことと、資源返却に関する第2のジョブ管理サーバ900によって送信された資源返却リクエストを受信し、及び資源返却リクエストに対応する資源を資源先取りに関する第1のジョブ管理サーバ700に配分することと、を行うように構成される。
第2のジョブ管理サーバ900は、資源スケジューリングサーバ800によって送信された資源先取りリクエストを受信し、及び資源先取りリクエストに含まれた、第1のジョブ管理サーバ700に対応するジョブ実行情報に応じて、第2のジョブ管理サーバ900の資源返却デッドラインを決定することと、決定された資源返却デッドライン及び第2のジョブ管理サーバ900の現在のジョブ実行進捗に応じて、資源スケジューリングサーバ700に返却されるべき資源を返却することと、を行うように構成される。
本出願の実施形態による資源配分システムを上記で簡潔に紹介している。本出願の実施形態による資源配分方法を、第1のジョブマネージャ、資源スケジューリングサーバ、及び第2のジョブ管理サーバそれぞれの観点から、以下に紹介する。
図2〜図5を参照して、本出願の実施形態による資源配分方法を以下に紹介する。
図2を参照すると、本出願の一実施形態による分散システム資源配分方法のフローチャートが示されている。図2に示すように、この方法は、第1のジョブ管理サーバに適用され、及び以下のステップを含み得る。
S201では、第1のジョブ管理サーバが、資源申請リクエストを資源スケジューリングサーバに送信し、資源申請リクエストは、ジョブの出力デッドライン又はジョブの資源取得デッドラインを少なくとも含む。
特定の実施において、資源を取得する必要がある第1のジョブ管理サーバは、資源スケジューリングサーバに資源申請リクエストを送信し得る。ある可能な実施において、資源申請リクエストは、ジョブの出力デッドライン、すなわち、ジョブの最遅出力時刻を含む。このような実施では、資源申請リクエストは、ジョブの出力デッドラインのみを含み、及びジョブの実行時間は、資源スケジューリングサーバによって計算される。例えば、資源スケジューリングサーバは、ジョブの履歴データを獲得し、及びジョブの履歴データに応じて計算によってジョブの実行時間を取得する。例えば、ジョブの実行時間は、一般に一定であり、及び過去7日間にわたるジョブの平均実行時間などの履歴データに応じて、ジョブ管理サーバ又は資源スケジューリングサーバによって決定され得る。
別の可能な実施において、資源申請リクエストは、ジョブの出力デッドライン及びジョブの実行時間を含み得る。ジョブの実行時間は、一般に、ジョブの実行を完了するために必要とされる時間を指すことに留意されたい。例えば、それは、資源が取得され、及びジョブが開始された時点から、ジョブが完了され、及び資源が返却された時点までの継続時間でもよい。一般に、ジョブの実行時間は、以下のように決定され得る。(1)ユーザが、ジョブの実行時間を指定することができる。例えば、ユーザジョブが、実行のために分散システムに正式に提出されると、オフラインデバッギングが実施されなければならない。ユーザジョブの実行時間は、オフラインデバッギングによって推定することができ、及びジョブの実行時間は、資源申請リクエストが提出される際にユーザによって指定又は設定することができる。(2)ジョブの履歴データが獲得され、及びジョブの実行時間が、ジョブの履歴データに応じて計算によって取得される。
別の可能な実施において、資源申請リクエストは、ジョブの資源取得デッドラインを含む。特定の実施において、第1のジョブ管理サーバは、ジョブの実行時間及び出力デッドラインを決定し、並びに、ジョブの出力デッドラインとジョブの実行時間との間の差に応じてジョブの資源取得デッドラインを取得することができる。例えば、資源取得デッドラインTA_Receive=出力デッドライン−実行時間である。例えば、特定のジョブの出力デッドラインが22:00であり、ジョブの実行時間が2時間であり、及び資源取得デッドラインが、20:00である。
当然、他の実施において、資源申請リクエストは、ジョブの実行時間、ジョブの出力デッドライン、及び資源取得デッドラインも含み得るが、これは、ここでは限定されない。
S202において、第1のジョブ管理サーバは、資源スケジューリングサーバによって送信された資源配分リクエストを受信し、及び資源配分リクエストに対応する資源を獲得する。
資源申請リクエストがリクエスト提出時刻のみを含む先行技術の方法とは異なり、本出願の資源申請リクエストは、ジョブの実行情報をさらに含み、それに応じて、資源取得デッドライン及び/又はジョブの資源返却デッドラインが決定されることに留意されたい。資源配分及び返却時刻をより柔軟に決定することができ、並びに資源利用効率を効果的に向上させることができる。
図3を参照すると、本出願の一実施形態による分散システム資源配分方法のフローチャートが提供されている。図3に示すように、この方法は、資源スケジューリングサーバに適用され、及び以下のステップを含み得る。
S301では、資源スケジューリングサーバが、資源先取り条件が満たされたと判断された場合に、資源先取りに関する第1のジョブ管理サーバ及び資源返却に関する第2のジョブ管理サーバを決定する。
特定の実施において、資源先取り条件が満たされたと判断することは、受信された資源申請リクエストの優先度が高く、且つシステムの残りの利用可能な資源の数量が、資源申請リクエストによって要求された資源の数量よりも少ないと決定された場合に、資源先取り条件が満たされたと判断することを含む。例えば、第1のジョブ管理サーバは、資源申請リクエストCを資源スケジューリングサーバに送信する。第1のジョブ管理サーバが申請する必要がある資源が、CPU:70及びMEM:60であり、並びに資源申請リクエストの優先度が4であると仮定する。この時点で、システムの残りの利用可能な資源は、CPU:0及びMEM:0であり、この場合、システムの残りの利用可能な資源は、優先度の高いジョブのリクエストを満たすことができず、又は完全に満たすことができず、資源先取りがトリガされる。資源スケジューリングサーバは、資源を返却する必要があるジョブ管理サーバを決定するために、資源配分待ち行列をたどる(横断する;traverse)ことができる。具体的には、資源スケジューリングサーバにおいて資源配分待ち行列(これは、資源申請に対する資源スケジューリングサーバの資源配分を記録する)が存在する。この待ち行列は、資源申請の優先度に応じてランク付けされる。優先度の高い資源申請が資源スケジューリングサーバに提出され、且つシステムの残りの資源が資源申請を満たすのに十分ではない場合には、資源スケジューリングサーバは、低優先度から高優先度の順に資源配分待ち行列をたどる。優先度の高い資源申請の優先度よりも低い優先度を含む資源申請ごとに、まず、その配分された全ての資源がリサイクルされ、次いでクラスタの残りの資源と共に蓄積されると仮定する。蓄積後に得られた新しい残りの資源が優先度の高い資源申請を満たし得るか否かが判断される。肯定であれば、たどることが停止される。否定であれば、資源スケジューリングサーバは、優先度の高い資源申請を満たすことができるまで、次の優先度の低い資源申請をたどることを継続する。全ての優先度の低いジョブの使用された資源が、優先度の高いジョブによって先取りされ得る。図4に示すように、本出願の一実施形態による資源配分待ち行列の模式図が示される。例えば、資源配分待ち行列は、低優先度から高優先度の順にたどられる。資源申請Bの配分された資源が全て先取りされ、新しい残りの資源がCPU:30及びMEM:20であると仮定する。これは、優先度の高い資源申請を満たすのに不十分である。資源申請Bが、継続的にたどられる。その配分された資源が全て先取りされると仮定すると、新しい残りの資源は、CPU:70及びMEM:60である。この場合、残りの資源は、優先度の高い資源申請を満たすことができる。その結果、資源返却に関する第2のジョブ管理サーバが、資源申請B及び資源申請Aに対応するジョブ管理サーバとして決定される。
S302では、資源スケジューリングサーバが、資源返却に関する第2のジョブ管理サーバに対して資源先取りリクエストを送信し、資源先取りリクエストは、資源先取りに関する第1のジョブ管理サーバに対応するジョブ実行情報を少なくとも含む。
先行技術における資源返却に関する第2のジョブ管理サーバの配分された資源をそのまま強引にリサイクルする方法とは異なり、本出願の実施形態では、資源スケジューリングサーバは、優先度の高いジョブに資源を返却する必要があることを第2のジョブ管理サーバに知らせるために、資源先取りリクエストを資源返却に関する第2のジョブ管理サーバに送信する。
ある可能な実施において、第1のジョブマネージャによって資源スケジューリングサーバに送信された資源申請リクエストは、ジョブの出力デッドラインのみを含み、資源先取りリクエストに含まれる第1のジョブ管理サーバのジョブ実行情報は、ジョブの出力デッドライン及びジョブの実行時間を含み得る。ジョブの実行時間は、以下のように決定される。資源スケジューリングサーバは、ジョブの履歴データを獲得し、及びジョブの履歴データに応じて計算によってジョブの実行時間を取得する。
別の可能な実施において、第1のジョブマネージャによって資源スケジューリングサーバに送信された資源申請リクエストは、ジョブの出力デッドライン及びジョブの実行時間を含み、資源先取りリクエストに含まれる第1のジョブ管理サーバのジョブ実行情報は、ジョブの出力デッドライン及びジョブの実行時間を含み得る。代替的に、資源先取りリクエストに含まれる第1のジョブ管理サーバのジョブ実行情報は、ジョブの資源取得デッドラインを含み得る。ジョブの資源取得デッドラインは、以下のように決定される。
別の可能な実施において、第1のジョブマネージャによって資源スケジューリングサーバに送信された資源申請リクエストは、ジョブの資源取得デッドラインを含み、資源先取りリクエストに含まれる第1のジョブ管理サーバのジョブ実行情報は、ジョブの資源取得デッドラインを含み得る。
資源返却に関する第2のジョブ管理サーバが複数のジョブ管理サーバを含むことを資源スケジューリングサーバが決定すると、資源スケジューリングサーバは、資源先取りリクエストを複数のジョブ管理サーバにそれぞれ送信する。
S303では、資源スケジューリングサーバが、資源返却に関する第2のジョブ管理サーバによって送信された資源返却リクエストを受信し、及び資源返却リクエストに対応する資源を資源先取りに関する第1のジョブ管理サーバに配分する。
資源先取りに関する第1のジョブ管理サーバ及び資源返却に関する第2のジョブ管理サーバを決定する場合に、資源スケジューリングサーバは、第1のジョブ管理サーバと第2のジョブ管理サーバとの間の対応を記録し得ることに留意されたい。第2のジョブ管理サーバが資源返却リクエストを送信すると、返却された資源は、対応する第1のジョブ管理サーバに配分することができ、及び他の待機しているジョブ管理サーバには配分しなくてよく、従って、優先度の高いジョブが迅速に資源を得ることができることが確実となる。
図5を参照すると、本出願の一実施形態による分散システム資源配分方法のフローチャートが示されている。図5に示すように、この方法は、第2のジョブ管理サーバに適用され、及び以下のステップを含み得る。
S501では、第2のジョブ管理サーバが、資源スケジューリングサーバによって送信された資源先取りリクエストを受信し、資源先取りリクエストは、第1のジョブ管理サーバに対応するジョブ実行情報を含む。
第1のジョブ管理サーバに対応するジョブ実行情報は、ジョブの出力デッドライン及びジョブの実行時間を含むことができ、又はジョブ実行情報は、ジョブの資源取得デッドラインを含む。
資源先取りリクエストが、返却された資源の数量をさらに含むことができ、及び第2のジョブ管理サーバが、返却された資源の数量に応じて、配分された資源の一部又は全てを返却することを決定することができることに留意されたい。
S502では、第2のジョブ管理サーバが、第1のジョブ管理サーバに対応し、及び資源先取りリクエストに含まれるジョブ実行情報に応じて、第2のジョブ管理サーバによって返却されるべき資源及び資源返却デッドラインを決定する。
幾つかの実施では、第1のジョブ管理サーバに対応するジョブ実行情報が、ジョブの出力デッドライン及びジョブの実行時間を含み、並びに第1のジョブ管理サーバに対応し、及び資源先取りリクエストに含まれるジョブ実行情報に応じて、第2のジョブ管理サーバによって返却されるべき資源及び資源返却デッドラインを決定することが、ジョブの出力デッドラインとジョブの実行時間との間の差に応じて、ジョブの資源取得デッドラインを取得することと、ジョブの資源取得デッドラインを第2のジョブ管理サーバの資源返却デッドラインと見なすことと、を含む。
別の実施では、第1のジョブ管理サーバに対応するジョブ実行情報は、ジョブの資源取得デッドラインを含み、資源取得デッドラインは、資源返却デッドラインと見なすことができる。
S503では、第2のジョブ管理サーバが、決定された資源返却デッドライン及び第2のジョブ管理サーバの現在のジョブ実行進捗に応じて、資源返却デッドラインの満了前に、資源スケジューリングサーバに返却されるべき資源を返却する。
幾つかの実施では、決定された資源返却デッドライン及び第2のジョブ管理サーバの現在のジョブ実行進捗に応じて、資源返却デッドラインの満了前に、資源スケジューリングサーバに返却されるべき資源を返却することは、第2のジョブ管理サーバの現在のジョブ実行進捗に応じて、計算によって、現在のジョブの完了のための残り時間を取得することと、現在の時刻及び現在のジョブの完了のための残り時間の合計が、資源返却デッドラインを越えないと判断された場合に、第2のジョブ管理サーバによって、現在のジョブの実行が完了した後に、資源スケジューリングサーバに返却されるべき資源を返却することと、を含む。
幾つかの実施では、決定された資源返却デッドライン及び第2のジョブ管理サーバの現在のジョブ実行進捗に応じて、資源返却デッドラインの満了前に、資源スケジューリングサーバに返却されるべき資源を返却することは、第2のジョブ管理サーバの現在のジョブ実行進捗に応じて、計算によって、現在のジョブの完了のための残り時間を取得することと、現在の時刻及び現在のジョブの完了のための残り時間の合計が、資源返却デッドラインを越えると判断された場合に、第2のジョブ管理サーバが、現在のジョブをバックアップし、バックアップ位置を記録し、及びバックアップの完了後に資源スケジューリングサーバに返却されるべき資源を返却することと、を含む。さらに、この方法は、資源スケジューリングサーバによって再配分された資源を受信すること、現在のジョブのバックアップを獲得すること、及びバックアップ位置から現在のジョブの実行を再開することも含む。
例えば、資源スケジューリングサーバによって送信された資源先取りリクエストの受信後に、第2のジョブ管理サーバは、最終資源返却時刻TA_Returnを決定することができ、及び現在のジョブが実行されている時間TA_run及びジョブの推定実行時間TA_allに応じて、ジョブの完了のための残り時間を取得することができる:TA_left=TA_all−TA_run。現在の時刻+TA_left≦TA_Returnである場合、資源は、当然ジョブAの実行が完了した後に返却される。現在の時刻+TA_left>TA_Returnである場合、ジョブAは、その実行がTA_Returnの時点に近いところでバックアップの記録を開始するので、資源が再び取得された場合に、最初からではなくバックアップ位置から実行を再開することができる。バックアップが完全に記録された後に、第2のジョブ管理サーバは、能動的に資源を資源スケジューリングサーバに返却すると同時に、資源スケジューリングサーバが資源の再配分を行うことを待つ。
当業者が本出願の実施をより明確に理解することを容易にするために、具体例と共に、本出願の実施を以下に紹介する。具体例が、当業者が本出願をより明確に理解することを可能にすることを意図したものにすぎず、本出願の実施がこの具体例に限定されないことを留意されたい。
図6を参照すると、本出願の一実施形態による分散システム資源配分方法のフローチャートが示されている。図6に示すように、この方法は、以下のステップを含み得る。
S601では、第1のジョブ管理サーバが、資源申請リクエストを資源スケジューリングサーバに送信する。
資源申請リクエストは、ジョブの出力デッドライン、及びジョブの実行時間を含む。
S602では、資源スケジューリングサーバが、資源申請リクエストを受信し、及び資源先取り条件が満たされたか否かを判断する。
S603では、資源スケジューリングサーバが、資源先取り条件が満たされたことを決定し、資源配分待ち行列をたどり、資源返却に関する第2のジョブ管理サーバを決定し、及び第1のジョブ管理サーバと第2のジョブ管理サーバとの間の対応を記録する。
複数の第2のジョブ管理サーバが、資源返却に関するジョブ管理サーバとして決定され得る。
S604では、資源スケジューリングサーバが、資源先取りリクエストを第2のジョブ管理サーバに送信する。
資源先取りリクエストは、ジョブの出力デッドライン及び第1のジョブ管理サーバのジョブの実行時間を含む。
S605では、第2のジョブ管理サーバが、資源返却デッドラインを決定する。
第2のジョブ管理サーバが、ジョブの出力デッドラインとジョブの実行時間との間の差に応じて、ジョブの資源取得デッドラインを取得し、及びジョブの資源取得デッドラインを第2のジョブ管理サーバの資源返却デッドラインと見なす。
S606では、第2のジョブ管理サーバが、資源返却デッドライン及び第2のジョブ管理サーバの現在のジョブ実行進捗に応じて、資源を返却する時刻を決定する。
第2のジョブ管理サーバは、第2のジョブ管理サーバの現在のジョブ実行進捗に応じて、計算によって、現在のジョブの完了のための残り時間を取得する。第2のジョブ管理サーバは、現在の時刻及び現在のジョブの完了のための残り時間の合計が、資源返却デッドラインを越えないと判断された場合に、現在のジョブの実行が完了した後に、資源スケジューリングサーバに返却されるべき資源を返却する。第2のジョブ管理サーバは、現在の時刻及び現在のジョブの完了のための残り時間の合計が、資源返却デッドラインを越えると判断された場合に、現在のジョブをバックアップし、バックアップ位置を記録し、及びバックアップの完了後に資源スケジューリングサーバに返却されるべき資源を返却する。
S607では、第2のジョブ管理サーバが、資源返却リクエストを送信する。
S608では、資源スケジューリングサーバが、資源を第1のジョブ管理サーバに配分する。
本出願の実施形態において提供された資源配分方法によれば、システムの資源利用効率を最大限に向上させることができる一方で、資源が優先度の高いジョブによって迅速に取得され得ることが確実となる。
本出願の実施形態において提供された方法に対応するデバイスを以下に紹介する。
図7を参照すると、本出願の一実施形態による第1のジョブ管理サーバの模式図が示されている。
第1のジョブ管理サーバ装置700は、
資源申請リクエストを資源スケジューリングサーバに送信するように構成された送信ユニット701であって、資源申請リクエストが、ジョブの出力デッドライン又はジョブの資源取得デッドラインを少なくとも含み、送信ユニット701の具体的実施が、図2に示す実施形態のS201を参照して取得され得る、送信ユニット701と、
資源スケジューリングサーバによって送信された資源配分リクエストを受信し、及び資源配分リクエストに対応する資源を獲得するように構成された受信ユニット702であって、受信ユニット702の具体的実施が、図2に示す実施形態のS202を参照して取得され得る、受信ユニット702と、
を含む。
図8を参照すると、本出願の一実施形態による資源スケジューリングサーバの模式図が示されている。
資源スケジューリングサーバ800は、
資源先取り条件が満たされたと判断された場合に、資源先取りに関する第1のジョブ管理サーバ及び資源返却に関する第2のジョブ管理サーバを決定するように構成された決定ユニット801であって、決定ユニット801の具体的実施が、図3に示す実施形態のS301を参照して取得され得る、決定ユニット801と、
資源返却に関する第2のジョブ管理サーバに資源先取りリクエストを送信するように構成された送信ユニット802であって、資源先取りリクエストが、資源先取りに関する第1のジョブ管理サーバに対応するジョブ実行情報を少なくとも含み、送信ユニット802の具体的実施が、図3に示す実施形態のS302を参照して取得され得る、送信ユニット802と、
資源返却に関する第2のジョブ管理サーバによって送信された資源返却リクエストを受信し、及び資源返却リクエストに対応する資源を資源先取りに関する第1のジョブ管理サーバに配分するように構成された配分ユニット803であって、配分ユニット803の具体的実施が、図3に示す実施形態のS303を参照して取得され得る、配分ユニット803と、
を含む。
幾つかの実施では、資源スケジューリングサーバは、
受信した資源申請リクエストの優先度が高く、且つシステムの残りの利用可能な資源の数量が、資源申請リクエストによって要求された資源の数量よりも少ないと決定された場合に、資源先取り条件が満たされたと判断するように構成された判断ユニットをさらに含む。
幾つかの実施では、送信ユニットによって送信された、第1のジョブ管理サーバに対応するジョブ実行情報は、ジョブの出力デッドライン及びジョブの実行時間を含み、又はジョブ実行情報は、ジョブの資源取得デッドラインを含む。
幾つかの実施では、受信ユニットによって受信された、第1のジョブ管理サーバの資源申請リクエストは、ジョブの出力デッドラインを含む。送信ユニットによって送信されたジョブの実行時間は、以下のように決定される:ジョブの履歴データを獲得すること、及びジョブの履歴データに応じて、計算によってジョブの実行時間を取得すること。送信ユニットによって送信されたジョブの資源取得デッドラインは、以下のように決定される:ジョブの出力デッドラインとジョブの実行時間との間の差に応じてジョブの資源取得デッドラインを取得すること。
図9を参照すると、本出願の一実施形態による第2のジョブ管理サーバの模式図が示されている。
第2のジョブ管理サーバ900は、
資源スケジューリングサーバによって送信された資源先取りリクエストを受信するように構成された受信ユニット901であって、資源先取りリクエストが、第1のジョブ管理サーバに対応するジョブ実行情報を含み、受信ユニット901の具体的実施が、図5に示される実施形態のS501を参照して取得され得る、受信ユニット901と、
第1のジョブ管理サーバに対応し、及び資源先取りリクエストに含まれるジョブ実行情報に応じて、第2のジョブ管理サーバによって返却されるべき資源及び資源返却デッドラインを決定するように構成された決定ユニット902であって、決定ユニット902の具体的実施が、図5に示される実施形態のS502を参照して取得され得る、決定ユニット902と、
決定された資源返却デッドライン及び第2のジョブ管理サーバの現在のジョブ実行進捗に応じて、資源返却デッドラインの満了前に資源スケジューリングサーバに返却されるべき資源を返却するように構成された資源返却ユニット903であって、資源返却ユニット903の具体的実施が、図5に示される実施形態のS503を参照して取得され得る、資源返却ユニット903と、
を含む。
幾つかの実施では、受信ユニットによって受信された、第1のジョブ管理サーバに対応するジョブ実行情報は、ジョブの出力デッドライン及びジョブの実行時間を含む。決定ユニットは、ジョブの出力デッドラインとジョブの実行時間との間の差に応じてジョブの資源取得デッドラインを取得し、及びジョブの資源取得デッドラインを第2のジョブ管理サーバの資源返却デッドラインと見なすように構成される。
幾つかの実施では、資源返却ユニットは、第2のジョブ管理サーバの現在のジョブ実行進捗に応じて、計算によって、現在のジョブの完了のための残り時間を取得することと、現在の時刻及び現在のジョブの完了のための残り時間の合計が、資源返却デッドラインを越えないと判断された場合に、第2のジョブ管理サーバによって、現在のジョブの実行が完了した後に、資源スケジューリングサーバに返却されるべき資源を返却するように特に構成される。
幾つかの実施では、資源返却ユニットは、第2のジョブ管理サーバの現在のジョブ実行進捗に応じて、計算によって、現在のジョブの完了のための残り時間を取得することと、現在の時刻及び現在のジョブの完了のための残り時間の合計が、資源返却デッドラインを越えると判断された場合に、第2のジョブ管理サーバによって、現在のジョブをバックアップし、バックアップ位置を記録し、及びバックアップの完了後に資源スケジューリングサーバに返却されるべき資源を返却することと、を行うように特に構成される。
幾つかの実施では、第2のジョブ管理サーバは、
資源スケジューリングサーバによって再配分された資源を受信し、現在のジョブのバックアップを獲得し、及びバックアップ位置から現在のジョブの実行を再開するように構成された獲得ユニットをさらに含む。
図10を参照すると、本出願の別の実施形態による資源配分のための装置のブロック図が示されている。この装置は、少なくとも1つのプロセッサ1001(CPUなど)、メモリ1002、及び装置間の接続通信を実施するように構成された少なくとも1つの通信バス1003を含む。プロセッサ1001は、コンピュータプログラムなどのメモリ1002に保存された実行可能モジュールを実行するように構成される。メモリ1002は、高速ランダムアクセスメモリ(RAM)を含んでもよく、及び少なくとも1つの磁気ディスクメモリなどの不揮発性メモリも含んでもよい。1つ又は複数のプログラムは、メモリに保存され、及び1つ又は複数のプロセッサ1001によって実行されるように構成され、並びに1つ又は複数のプログラムは、以下の動作:資源スケジューリングサーバによって送信された資源先取りリクエストを受信することであって、資源先取りリクエストが、第1のジョブ管理サーバに対応するジョブ実行情報を含む、受信することと、第1のジョブ管理サーバに対応し、及び資源先取りリクエストに含まれるジョブ実行情報に応じて、第2のジョブ管理サーバによって返却されるべき資源及び資源返却デッドラインを決定することと、決定された資源返却デッドライン及び第2のジョブ管理サーバの現在のジョブ実行進捗に応じて、資源返却デッドラインの満了前に資源スケジューリングサーバに返却されるべき資源を返却することと、を行うための命令を含む。
幾つかの実施では、プロセッサ1001は、以下の動作:第1のジョブ管理サーバに対応するジョブ実行情報がジョブの出力デッドライン及びジョブの実行時間を含む場合、ジョブの出力デッドラインとジョブの実行時間との間の差に応じて、ジョブの資源取得デッドラインを取得すること、及びジョブの資源取得デッドラインを第2のジョブ管理サーバの資源返却デッドラインと見なすことを行うための命令を含む1つ又は複数のプログラムを実行するように特に構成される。
幾つかの実施では、プロセッサ1001は、以下の動作:第2のジョブ管理サーバの現在のジョブ実行進捗に応じて、計算によって、現在のジョブの完了のための残り時間を取得することと、現在の時刻及び現在のジョブの完了のための残り時間の合計が、資源返却デッドラインを越えないと判断された場合に、第2のジョブ管理サーバによって、現在のジョブの実行が完了した後に、資源スケジューリングサーバに返却されるべき資源を返却することと、を行うための命令を含む1つ又は複数のプログラムを実行するように特に構成される。
幾つかの実施では、プロセッサ1001は、以下の動作:第2のジョブ管理サーバの現在のジョブ実行進捗に応じて、計算によって、現在のジョブの完了のための残り時間を取得することと、現在の時刻及び現在のジョブの完了のための残り時間の合計が、資源返却デッドラインを越えると判断された場合に、第2のジョブ管理サーバが現在のジョブをバックアップし、バックアップ位置を記録し、及びバックアップの完了後に資源スケジューリングサーバに返却されるべき資源を返却することと、を行うための命令を含む1つ又は複数のプログラムを実行するように特に構成される。
幾つかの実施では、プロセッサ1001は、以下の動作:資源スケジューリングサーバによって再配分された資源を受信することと、現在のジョブのバックアップを獲得することと、バックアップ位置から現在のジョブの実行を継続することと、を行うための命令を含む1つ又は複数のプログラムを実行するように特に構成される。
図11を参照すると、本出願の別の実施形態による資源配分のための装置のブロック図が示されている。この装置は、少なくとも1つのプロセッサ1101(CPUなど)、メモリ1102、及び装置間の接続通信を実施するように構成された少なくとも1つの通信バス1103を含む。プロセッサ1101は、コンピュータプログラムなどのメモリ1102に保存された実行可能モジュールを実行するように構成される。メモリ1102は、高速ランダムアクセスメモリ(RAM)を含んでもよく、及び少なくとも1つの磁気ディスクメモリなどの不揮発性メモリも含んでもよい。1つ又は複数のプログラムは、メモリに保存され、及び1つ又は複数のプロセッサ1101によって実行されるように構成され、並びに1つ又は複数のプログラムは、以下の動作:資源先取り条件が満たされたと判断された場合に、資源先取りに関する第1のジョブ管理サーバ及び資源返却に関する第2のジョブ管理サーバを決定することと、資源返却に関する第2のジョブ管理サーバに資源先取りリクエストを送信することであって、資源先取りリクエストが、資源先取りに関する第1のジョブ管理サーバに対応するジョブ実行情報を少なくとも含む、送信することと、資源返却に関する第2のジョブ管理サーバによって送信された資源返却リクエストを受信し、及び資源返却リクエストに対応する資源を資源先取りに関する第1のジョブ管理サーバに配分することと、を行うための命令を含む。
幾つかの実施では、プロセッサ1101は、以下の動作:受信された資源申請リクエストの優先度が高く、且つシステムの残りの利用可能な資源の数量が、資源申請リクエストによって要求された資源の数量よりも少ないと決定された場合に、資源先取り条件が満たされたと判断することを行うための命令を含む1つ又は複数のプログラムを実行するように特に構成される。
幾つかの実施では、プロセッサ1101は、以下の動作:ジョブの履歴データを獲得し、及びジョブの履歴データに応じて、計算によってジョブの実行時間を取得することと、ジョブの出力デッドラインとジョブの実行時間との間の差に応じてジョブの資源取得デッドラインを取得することと、を行うための命令を含む1つ又は複数のプログラムを実行するように特に構成される。
図12を参照すると、本出願の別の実施形態による資源配分のための装置のブロック図が示されている。この装置は、少なくとも1つのプロセッサ1201(CPUなど)、メモリ1202、及び装置間の接続通信を実施するように構成された少なくとも1つの通信バス1203を含む。プロセッサ1201は、コンピュータプログラムなどのメモリ1202に保存された実行可能モジュールを実行するように構成される。メモリ1202は、高速ランダムアクセスメモリ(RAM)を含んでもよく、及び少なくとも1つの磁気ディスクメモリなどの不揮発性メモリも含んでもよい。1つ又は複数のプログラムは、メモリに保存され、及び1つ又は複数のプロセッサ1201によって実行されるように構成され、並びに1つ又は複数のプログラムは、以下の動作:資源スケジューリングサーバに資源申請リクエストを送信することであって、資源申請リクエストがジョブの出力デッドライン又はジョブの資源取得デッドラインを少なくとも含む、送信することと、資源スケジューリングサーバによって送信された資源配分リクエストを受信し、及び資源配分リクエストに対応する資源を獲得することと、を行うための命令を含む。
ある例示的実施形態では、命令を含む不揮発性コンピュータ可読媒体(例えば、命令を含むメモリ304)がさらに提供される。これらの命令は、上記の方法を実施するために装置300のプロセッサ320によって実行され得る。例えば、不揮発性コンピュータ可読媒体は、ROM、RAM、CD−ROM、磁気テープ、フロッピーディスク、光学式データストレージデバイスなどでもよい。
マシン可読媒体が提供される。例えば、マシン可読媒体は、不揮発性コンピュータ可読媒体でもよい。媒体中の命令が装置(端末又はサーバ)のプロセッサによって実行されると、装置は、図1に示すようなディープホール測定方法を行うことができる。この方法は、資源スケジューリングサーバによって送信された資源先取りリクエストを受信することであって、資源先取りリクエストが、第1のジョブ管理サーバに対応するジョブ実行情報を含む、受信することと、第1のジョブ管理サーバに対応するジョブ実行情報に応じて、第2のジョブ管理サーバによって返却されるべき資源及び資源返却デッドラインを決定することと、決定された返却されるべき資源及び資源返却デッドライン、並びに第2のジョブ管理サーバの現在のジョブ実行進捗に応じて、資源返却デッドラインの満了前に資源スケジューリングサーバに返却されるべき資源を返却することと、を含む。
本出願の装置におけるユニット又はモジュールの設定は、図2〜図6に示す方法を参照して実施され得るが、それらは、ここでは詳細に説明しない。
本明細書を考察し、及びここに開示した本発明を実施した後に、当業者は、本出願の他の実施解決策を容易に思い付くだろう。本出願は、本出願の一般原理に従い、且つ本開示において開示されない当該分野における常識又は一般的技術手段を含む本出願のあらゆる変形形態、用途、又は適応的変更をカバーすることが意図される。本明細書及び実施形態は、単に例示的であると見なされるものであり、本出願の真の範囲及び精神は、以下の特許請求の範囲によって示される。
本出願は、上記に記載した、及び添付の図面に示した正確な構造に限定されないこと、並びにその範囲から逸脱することなく修正及び変更が行われ得ることが理解されるだろう。本出願の範囲は、添付の特許請求の範囲によってのみ限定される。
本文において、「第1の」及び「第2の」などの関係用語は、単に、あるエンティティ又は動作を別のエンティティ又は動作と区別するために使用されるものであり、これらのエンティティ又は動作が、この実際の関係又は順序を含んでいることを必要とせず、又は示唆しないことに留意されたい。また、「含む(include)」、「含む(comprise)」、又はそれらの他の変形形態は、非排他的包含をカバーすることが意図され、従って、一連の要素を含むプロセス、方法、物品、又はデバイスは、それらの要素を含むだけでなく、明確に列挙されていない他の要素も含み、又はそのプロセス、方法、物品、若しくはデバイスに固有の要素をさらに含む。さらなる限定がなければ、「1つの…を含む(including a/an...)」によって定義される要素は、その要素を含むプロセス、方法、物品、又はデバイスが他の同一の要素をさらに含むことを除外しない。本出願は、コンピュータによって実行されるコンピュータ実行可能命令(例えば、プログラムモジュール)の一般的コンテキストで記述され得る。一般に、プログラムモジュールは、特定のタスクを実行するため、又は特定の抽象データ型を実施するためのルーチン、プログラム、オブジェクト、アセンブリ、データ構造などを含む。本出願は、分散コンピューティング環境で実施されてもよく、分散コンピュータ環境では、タスクは、通信ネットワークを介して接続されたリモート処理デバイスを使用して実行される。分散コンピュータ環境では、プログラムモジュールは、ストレージデバイスを含むローカル及びリモートコンピュータストレージ媒体に位置してもよい。
本明細書の実施形態は、全て漸進的に記載され、各実施形態は、それと他の実施形態との間の違いを強調し、これらの実施形態における同一又は類似の部分は、互いを参照して取得することができる。特に、装置の実施形態は、方法の実施形態と基本的に類似しているので、簡潔に記載される。関連する部分に関しては、方法の実施形態における部分の記載を参照せよ。上記の装置の実施形態は、模式的なものにすぎない。分離した部分として記載されたユニットは、物理的に分離していても、或いは物理的に分離していなくてもよく、ユニットとして表示された部分は、物理的ユニットであっても、或いは物理的ユニットでなくてもよい(すなわち、1つの場所に位置してもよいし、或いは複数のネットワークユニットに分散されてもよい)。その中のモジュールの一部又は全てが、実施形態の解決策の目的を達成するために実際のニーズに応じて選択され得る。当業者は、創造的な努力を行うことなく、本出願を理解し、及び実施することができる。上記の記載は、本出願の具体的な実施にすぎない。当業者が、本出願の原理から逸脱することなく、幾つかの改良及び変更も行い得ることに留意されたい。改良及び変更も、本出願の保護範囲と見なされるものとする。

Claims (18)

  1. 資源スケジューリングサーバ、第1のジョブ管理サーバ、及び第2のジョブ管理サーバを含む分散資源配分システムであって、
    前記第1のジョブ管理サーバが、資源申請リクエストを前記資源スケジューリングサーバに送信するように構成され、及び前記資源申請リクエストが、前記第1のジョブ管理サーバのジョブ実行情報を少なくとも含み、
    前記資源スケジューリングサーバが、資源先取り条件が満たされたと判断された場合に、資源先取りに関する前記第1のジョブ管理サーバ及び資源返却に関する前記第2のジョブ管理サーバを決定することと、資源返却に関する前記第2のジョブ管理サーバに資源先取りリクエストを送信することであって、前記資源先取りリクエストが、資源先取りに関する前記第1のジョブ管理サーバに対応する前記ジョブ実行情報を少なくとも含む、送信することと、資源返却に関する前記第2のジョブ管理サーバによって送信された資源返却リクエストを受信し、及び前記資源返却リクエストに対応する資源を資源先取りに関する前記第1のジョブ管理サーバに配分することと、を行うように構成され、
    前記第2のジョブ管理サーバが、前記資源スケジューリングサーバによって送信された前記資源先取りリクエストを受信し、並びに前記第1のジョブ管理サーバに対応し、及び前記資源先取りリクエストに含まれる前記ジョブ実行情報に応じて、前記第2のジョブ管理サーバによって返却されるべき資源及び資源返却デッドラインを決定することと、前記決定された返却されるべき資源及び資源返却デッドライン、並びに前記第2のジョブ管理サーバの現在のジョブ実行進捗に応じて、前記資源返却デッドラインの満了前に、前記資源スケジューリングサーバに対して前記返却されるべき資源を返却することと、を行うように構成される、
    分散資源配分システム。
  2. 第2のジョブ管理サーバに適用される分散システム資源配分方法であって、
    資源スケジューリングサーバによって送信された資源先取りリクエストを受信することであって、前記資源先取りリクエストが、第1のジョブ管理サーバに対応するジョブ実行情報を含む、受信することと、
    前記第1のジョブ管理サーバに対応する前記ジョブ実行情報に応じて、前記第2のジョブ管理サーバによって返却されるべき資源及び資源返却デッドラインを決定することと、
    前記決定された返却されるべき資源及び資源返却デッドライン、並びに前記第2のジョブ管理サーバの現在のジョブ実行進捗に応じて、前記資源返却デッドラインの満了前に前記資源スケジューリングサーバに対して前記返却されるべき資源を返却することと、
    を含む、方法。
  3. 前記第1のジョブ管理サーバに対応する前記ジョブ実行情報が、前記ジョブの出力デッドライン及び前記ジョブの実行時間を含み、並びに前記第1のジョブ管理サーバに対応し、及び前記資源先取りリクエストに含まれる前記ジョブ実行情報に応じて、前記第2のジョブ管理サーバによって返却されるべき資源及び資源返却デッドラインを前記決定することが、
    前記ジョブの前記出力デッドラインと前記ジョブの前記実行時間との間の差に応じて前記ジョブの資源取得デッドラインを取得することと、前記ジョブの前記資源取得デッドラインを前記第2のジョブ管理サーバの前記資源返却デッドラインと見なすことと、
    を含む、請求項2に記載の方法。
  4. 前記決定された資源返却デッドライン及び前記第2のジョブ管理サーバの現在のジョブ実行進捗に応じて、前記資源返却デッドラインの満了前に、前記資源スケジューリングサーバに対して前記返却されるべき資源を前記返却することが、
    前記第2のジョブ管理サーバの前記現在のジョブ実行進捗に応じて、計算によって、前記現在のジョブの完了のための残り時間を取得することと、
    前記現在の時刻及び前記現在のジョブの完了のための前記残り時間の合計が、前記資源返却デッドラインを越えないと判断された場合に、前記第2のジョブ管理サーバによって、前記現在のジョブの実行が完了した後に、前記資源スケジューリングサーバに対して前記返却されるべき資源を返却することと、
    を含む、請求項2に記載の方法。
  5. 前記決定された資源返却デッドライン及び前記第2のジョブ管理サーバの現在のジョブ実行進捗に応じて、前記資源返却デッドラインの満了前に、前記資源スケジューリングサーバに対して前記返却されるべき資源を前記返却することが、
    前記第2のジョブ管理サーバの前記現在のジョブ実行進捗に応じて、計算によって、前記現在のジョブの完了のための残り時間を取得することと、
    前記現在の時刻及び前記現在のジョブの完了のための前記残り時間の合計が、前記資源返却デッドラインを越えると判断された場合に、前記第2のジョブ管理サーバが、前記現在のジョブをバックアップし、バックアップ位置を記録し、及び前記バックアップの完了後に前記資源スケジューリングサーバに対して前記返却されるべき資源を返却することと、
    を含む、請求項2に記載の方法。
  6. 前記資源スケジューリングサーバによって再配分された資源を受信することと、前記現在のジョブの前記バックアップを獲得することと、前記バックアップ位置から前記現在のジョブの前記実行を再開することと、
    をさらに含む、請求項5に記載の方法。
  7. 資源スケジューリングサーバに適用される分散システム資源配分方法であって、
    資源先取り条件が満たされたと判断された場合に、資源先取りに関する第1のジョブ管理サーバ及び資源返却に関する第2のジョブ管理サーバを決定することと、
    資源返却に関する前記第2のジョブ管理サーバに資源先取りリクエストを送信することであって、前記資源先取りリクエストが、資源先取りに関する前記第1のジョブ管理サーバに対応するジョブ実行情報を少なくとも含む、送信することと、
    資源返却に関する前記第2のジョブ管理サーバによって送信された資源返却リクエストを受信し、及び前記資源返却リクエストに対応する資源を資源先取りに関する前記第1のジョブ管理サーバに配分することと、
    を含む、方法。
  8. 資源先取り条件が満たされたと前記判断することが、
    前記受信された資源申請リクエストの優先度が高く、且つ前記システムの残りの利用可能な資源の数量が、前記資源申請リクエストによって要求された資源の数量よりも少ないと決定された場合に、前記資源先取り条件が満たされたと判断することを含む、請求項7に記載の方法。
  9. 前記第1のジョブ管理サーバに対応する前記ジョブ実行情報が、前記ジョブの出力デッドライン及び前記ジョブの実行時間を含み、又は前記ジョブ実行情報が、前記ジョブの資源取得デッドラインを含む、請求項7又は8に記載の方法。
  10. 前記第1のジョブ管理サーバの前記資源申請リクエストが、前記ジョブの前記出力デッドラインを含み、前記ジョブの前記実行時間が、
    前記ジョブの履歴データを獲得すること、及び前記ジョブの前記履歴データに応じて、計算によって前記ジョブの前記実行時間を取得すること、
    によって決定され、並びに
    前記ジョブの前記資源取得デッドラインが、
    前記ジョブの前記出力デッドラインと前記ジョブの前記実行時間との間の差に応じて前記ジョブの前記資源取得デッドラインを取得すること、
    によって決定される、請求項9に記載の方法。
  11. 第1のジョブ管理サーバに適用される分散システム資源配分方法であって、
    資源スケジューリングサーバに資源申請リクエストを送信することであって、前記資源申請リクエストが、ジョブの出力デッドライン又は前記ジョブの資源取得デッドラインを少なくとも含む、送信することと、
    前記資源スケジューリングサーバによって送信された資源配分リクエストを受信し、及び前記資源配分リクエストに対応する資源を獲得することと、
    を含む、方法。
  12. 第2のジョブ管理サーバであって、
    資源スケジューリングサーバによって送信された資源先取りリクエストを受信するように構成された受信ユニットであって、前記資源先取りリクエストが、第1のジョブ管理サーバに対応するジョブ実行情報を含む、受信ユニットと、
    前記第1のジョブ管理サーバに対応し、及び前記資源先取りリクエストに含まれる前記ジョブ実行情報に応じて、前記第2のジョブ管理サーバによって返却されるべき資源及び資源返却デッドラインを決定するように構成された決定ユニットと、
    前記決定された資源返却デッドライン及び前記第2のジョブ管理サーバの現在のジョブ実行進捗に応じて、前記資源返却デッドラインの満了前に前記資源スケジューリングサーバに対して前記返却されるべき資源を返却するように構成された資源返却ユニットと、
    を含む、第2のジョブ管理サーバ。
  13. 資源先取り条件が満たされたと判断された場合に、資源先取りに関する第1のジョブ管理サーバ及び資源返却に関する第2のジョブ管理サーバを決定するように構成された決定ユニットと、
    資源返却に関する前記第2のジョブ管理サーバに資源先取りリクエストを送信するように構成された送信ユニットであって、前記資源先取りリクエストが、資源先取りに関する前記第1のジョブ管理サーバに対応するジョブ実行情報を少なくとも含む、送信ユニットと、
    資源返却に関する前記第2のジョブ管理サーバによって送信された資源返却リクエストを受信し、及び前記資源返却リクエストに対応する資源を資源先取りに関する前記第1のジョブ管理サーバに配分するように構成された配分ユニットと、
    を含む資源スケジューリングサーバ。
  14. 資源申請リクエストを資源スケジューリングサーバに送信するように構成された送信ユニットであって、前記資源申請リクエストが、ジョブの出力デッドライン又は前記ジョブの資源取得デッドラインを少なくとも含む、送信ユニットと、
    前記資源スケジューリングサーバによって送信された資源配分リクエストを受信し、及び前記資源配分リクエストに対応する資源を獲得するように構成された受信ユニットと、
    を含む、第1のジョブ管理サーバ。
  15. メモリ及び1つ又は複数のプログラムを含む資源配分のための装置であって、前記1つ又は複数のプログラムが、前記メモリに保存され、及び1つ又は複数のプロセッサによって実行されるように構成され、並びに前記1つ又は複数のプログラムが、以下の動作:
    資源スケジューリングサーバによって送信された資源先取りリクエストを受信することであって、前記資源先取りリクエストが、第1のジョブ管理サーバに対応するジョブ実行情報を含む、受信することと、
    前記第1のジョブ管理サーバに対応し、及び前記資源先取りリクエストに含まれる前記ジョブ実行情報に応じて、第2のジョブ管理サーバによって返却されるべき資源及び資源返却デッドラインを決定することと、
    前記決定された資源返却デッドライン及び前記第2のジョブ管理サーバの現在のジョブ実行進捗に応じて、前記資源返却デッドラインの満了前に前記資源スケジューリングサーバに対して前記返却されるべき資源を返却することと、
    を行うための命令を含む、装置。
  16. メモリ及び1つ又は複数のプログラムを含む資源配分のための装置であって、前記1つ又は複数のプログラムが、前記メモリに保存され、及び1つ又は複数のプロセッサによって実行されるように構成され、並びに前記1つ又は複数のプログラムが、以下の動作:
    資源先取り条件が満たされたと判断された場合に、資源先取りに関する第1のジョブ管理サーバ及び資源返却に関する第2のジョブ管理サーバを決定することと、
    資源返却に関する前記第2のジョブ管理サーバに資源先取りリクエストを送信することであって、前記資源先取りリクエストが、資源先取りに関する前記第1のジョブ管理サーバに対応するジョブ実行情報を少なくとも含む、送信することと、
    資源返却に関する前記第2のジョブ管理サーバによって送信された資源返却リクエストを受信し、及び前記資源返却リクエストに対応する資源を資源先取りに関する前記第1のジョブ管理サーバに配分することと、
    を行うための命令を含む、装置。
  17. メモリ及び1つ又は複数のプログラムを含む資源配分のための装置であって、前記1つ又は複数のプログラムが、前記メモリに保存され、及び1つ又は複数のプロセッサによって実行されるように構成され、並びに前記1つ又は複数のプログラムが、以下の動作:
    資源スケジューリングサーバに資源申請リクエストを送信することであって、前記資源申請リクエストが、ジョブの出力デッドライン又は前記ジョブの資源取得デッドラインを少なくとも含む、送信することと、
    前記資源スケジューリングサーバによって送信された資源配分リクエストを受信し、及び前記資源配分リクエストに対応する資源を獲得することと、
    を行うための命令を含む、装置。
  18. 命令を保存するマシン可読媒体であって、前記命令が、1つ又は複数のプロセッサによって実行されると、装置が、請求項2〜6の1つに記載の前記資源配分方法を行わせられる、マシン可読媒体。
JP2020508488A 2017-08-24 2018-08-15 分散システム資源配分の方法、装置、及びシステム Pending JP2020531967A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201710737516.8 2017-08-24
CN201710737516.8A CN109428912B (zh) 2017-08-24 2017-08-24 一种分布式系统资源分配方法、装置及系统
PCT/CN2018/100579 WO2019037626A1 (zh) 2017-08-24 2018-08-15 一种分布式系统资源分配方法、装置及系统

Publications (1)

Publication Number Publication Date
JP2020531967A true JP2020531967A (ja) 2020-11-05

Family

ID=65438390

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020508488A Pending JP2020531967A (ja) 2017-08-24 2018-08-15 分散システム資源配分の方法、装置、及びシステム

Country Status (5)

Country Link
US (1) US11372678B2 (ja)
EP (1) EP3675434B1 (ja)
JP (1) JP2020531967A (ja)
CN (1) CN109428912B (ja)
WO (1) WO2019037626A1 (ja)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109428912B (zh) 2017-08-24 2020-07-10 阿里巴巴集团控股有限公司 一种分布式系统资源分配方法、装置及系统
US10949241B2 (en) * 2019-03-08 2021-03-16 Google Llc Cost-efficient high-availability multi-single-tenant services
CN110096357A (zh) * 2019-03-29 2019-08-06 北京奇安信科技有限公司 一种分布式系统的内存资源清理方法及装置
CN110134521B (zh) * 2019-05-28 2021-06-11 北京达佳互联信息技术有限公司 资源分配的方法、装置、资源管理器及存储介质
CN110362407A (zh) * 2019-07-19 2019-10-22 中国工商银行股份有限公司 计算资源调度方法及装置
CN112395077A (zh) * 2019-08-16 2021-02-23 阿里巴巴集团控股有限公司 资源控制方法、装置及系统
FR3103596B1 (fr) * 2019-11-26 2021-11-19 Thales Sa Procede d'affectation de ressources en reponse a des requetes en fonction de leur priorite, programme d'ordinateur, bloc de controle d'affectation et systeme informatique associes
WO2021156929A1 (ja) * 2020-02-04 2021-08-12 日本電信電話株式会社 履歴管理装置、履歴管理方法、およびプログラム
CN111459656B (zh) * 2020-03-06 2023-11-03 北京百度网讯科技有限公司 服务器管理方法、装置、电子设备和存储介质
CN112416450B (zh) * 2020-06-05 2023-02-17 上海哔哩哔哩科技有限公司 资源加密及展示方法及系统
CN113377541A (zh) * 2021-06-22 2021-09-10 云知声智能科技股份有限公司 集群资源分配与回收方法、装置、电子设备和存储介质
CN115311123B (zh) * 2022-08-11 2023-04-28 浙江中测新图地理信息技术有限公司 一种像素流gpu资源调度方法及装置

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100247146B1 (ko) * 1995-03-31 2000-04-01 비센트 비.인그라시아 통신자원을 할당하는 방법 및 장치
US6081513A (en) * 1997-02-10 2000-06-27 At&T Corp. Providing multimedia conferencing services over a wide area network interconnecting nonguaranteed quality of services LANs
CA2297994A1 (en) * 2000-02-04 2001-08-04 Ibm Canada Limited-Ibm Canada Limitee Automated testing computer system components
US20030022395A1 (en) * 2001-07-17 2003-01-30 Thoughtbeam, Inc. Structure and method for fabricating an integrated phased array circuit
US7139846B1 (en) * 2003-09-30 2006-11-21 Veritas Operating Corporation Computer system and method for performing low impact backup operations
US7234075B2 (en) * 2003-12-30 2007-06-19 Dell Products L.P. Distributed failover aware storage area network backup of application data in an active-N high availability cluster
US7380711B2 (en) * 2004-07-23 2008-06-03 Checkpoint Systems, Inc. Self-check system and method for protecting digital media
US20080065663A1 (en) * 2005-04-14 2008-03-13 Emc Corporation Reestablishing process context
JP4688617B2 (ja) * 2005-09-16 2011-05-25 株式会社日立製作所 記憶制御システム及び方法
US7844445B2 (en) * 2005-10-12 2010-11-30 Storage Appliance Corporation Automatic connection to an online service provider from a backup system
JP4778916B2 (ja) * 2007-02-05 2011-09-21 富士通株式会社 QoS要求受付プログラム、QoS要求受付装置およびQoS要求受付方法
JP4935595B2 (ja) * 2007-09-21 2012-05-23 富士通株式会社 ジョブ管理方法、ジョブ管理装置およびジョブ管理プログラム
US20090133099A1 (en) * 2007-11-12 2009-05-21 Srinidhi Varadarajan Methods and systems for transparent software license suspension
US20100131959A1 (en) * 2008-11-26 2010-05-27 Spiers Adam Z Proactive application workload management
US20100191881A1 (en) * 2009-01-23 2010-07-29 Computer Associates Think, Inc. System and Method for Reserving and Provisioning IT Resources
CN102056268B (zh) * 2009-10-27 2015-06-10 中兴通讯股份有限公司 业务接纳处理方法及装置
US8627322B2 (en) * 2010-10-29 2014-01-07 Google Inc. System and method of active risk management to reduce job de-scheduling probability in computer clusters
US8612597B2 (en) * 2010-12-07 2013-12-17 Microsoft Corporation Computing scheduling using resource lend and borrow
CN102761469B (zh) * 2011-04-27 2015-05-27 阿里巴巴集团控股有限公司 一种资源池的分配方法和装置
US9374731B2 (en) * 2012-04-16 2016-06-21 Telefonaktiebolaget Lm Ericsson (Publ) Method and radio network node for managing radio resources
WO2014005288A1 (zh) * 2012-07-03 2014-01-09 厦门简帛信息科技有限公司 一种基于数字资源的网络系统及其使用方法
US8896867B2 (en) * 2012-09-11 2014-11-25 Xerox Corporation Methods and systems for assigning jobs to production devices
CN103294533B (zh) * 2012-10-30 2016-09-07 北京安天电子设备有限公司 任务流控制方法及系统
CN104079503B (zh) * 2013-03-27 2018-07-20 华为技术有限公司 一种资源分配方法及装置
US20150154714A1 (en) * 2013-05-08 2015-06-04 Panasonic Intellectual Property Corporation Of America Service provision method
CN106817701B (zh) * 2015-11-30 2020-05-05 中兴通讯股份有限公司 资源分配方法及装置
US9448842B1 (en) * 2016-01-29 2016-09-20 International Business Machines Corporation Selecting and resizing currently executing job to accommodate execution of another job
US10169082B2 (en) * 2016-04-27 2019-01-01 International Business Machines Corporation Accessing data in accordance with an execution deadline
US10089144B1 (en) * 2016-06-17 2018-10-02 Nutanix, Inc. Scheduling computing jobs over forecasted demands for computing resources
US20180060133A1 (en) * 2016-09-01 2018-03-01 Amazon Technologies, Inc. Event-driven resource pool management
US10545796B2 (en) * 2017-05-04 2020-01-28 Salesforce.Com, Inc. Systems, methods, and apparatuses for implementing a scheduler with preemptive termination of existing workloads to free resources for high priority items
CN109428912B (zh) 2017-08-24 2020-07-10 阿里巴巴集团控股有限公司 一种分布式系统资源分配方法、装置及系统

Also Published As

Publication number Publication date
EP3675434B1 (en) 2023-10-04
EP3675434A1 (en) 2020-07-01
CN109428912A (zh) 2019-03-05
US20200192711A1 (en) 2020-06-18
US11372678B2 (en) 2022-06-28
WO2019037626A1 (zh) 2019-02-28
CN109428912B (zh) 2020-07-10
EP3675434A4 (en) 2020-09-02

Similar Documents

Publication Publication Date Title
JP2020531967A (ja) 分散システム資源配分の方法、装置、及びシステム
US12081454B2 (en) Systems and methods for provision of a guaranteed batch
US10089142B2 (en) Dynamic task prioritization for in-memory databases
CN107291547B (zh) 一种任务调度处理方法、装置及系统
US10191771B2 (en) System and method for resource management
US6539445B1 (en) Method for load balancing in an application server system
CN109564528B (zh) 分布式计算中计算资源分配的系统和方法
US6502148B1 (en) System for scaling an application server system
JP2012221273A (ja) 動的にリソースを割り当てる方法、システム及びプログラム
CN107168777B (zh) 分布式系统中资源的调度方法以及装置
CN106557369A (zh) 一种多线程的管理方法及系统
US6618742B1 (en) Method for job impact learning
CN107430526B (zh) 用于调度数据处理的方法和节点
CN112130966A (zh) 任务调度方法和系统
CN109189581B (zh) 一种作业调度方法和装置
CN113391911B (zh) 一种大数据资源动态调度方法、装置和设备
US8001341B2 (en) Managing dynamically allocated memory in a computer system
EP2840513B1 (en) Dynamic task prioritization for in-memory databases
US8788601B2 (en) Rapid notification system
US20200379806A1 (en) System and Method for Scheduling and Running Interactive Database Queries with Service Level Agreements in a Multi-Tenant Processing System
Chen et al. Speculative slot reservation: Enforcing service isolation for dependent data-parallel computations
CN107491448A (zh) 一种HBase资源调整方法和装置
CN115934322A (zh) 用于在计算系统中执行任务的方法、装置、设备和介质
CN115543554A (zh) 一种计算作业的调度方法、装置及计算机可读存储介质
CN113934525A (zh) 一种基于正负反馈负载调度算法的Hadoop集群任务调度方法