JP2011243120A - ジョブ管理装置、ジョブ管理方法、およびジョブ管理プログラム - Google Patents

ジョブ管理装置、ジョブ管理方法、およびジョブ管理プログラム Download PDF

Info

Publication number
JP2011243120A
JP2011243120A JP2010116709A JP2010116709A JP2011243120A JP 2011243120 A JP2011243120 A JP 2011243120A JP 2010116709 A JP2010116709 A JP 2010116709A JP 2010116709 A JP2010116709 A JP 2010116709A JP 2011243120 A JP2011243120 A JP 2011243120A
Authority
JP
Japan
Prior art keywords
job
execution
priority
flow
group
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
JP2010116709A
Other languages
English (en)
Other versions
JP5482442B2 (ja
Inventor
Kazutoshi Nakagawa
和俊 中川
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP2010116709A priority Critical patent/JP5482442B2/ja
Publication of JP2011243120A publication Critical patent/JP2011243120A/ja
Application granted granted Critical
Publication of JP5482442B2 publication Critical patent/JP5482442B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

【課題】特定のジョブフローを迅速に実行するためのジョブ実行順位を決定する。
【解決手段】予め設定された各ジョブフローに対して実行完了時刻に基づき実行優先度を設定し、実行優先度が設定されたジョブフローとしての優先ジョブフローに含まれるジョブの実行が投入キュー内の格納ジョブの実行後に行われる場合に、格納ジョブおよびこの格納ジョブの後続ジョブを優先ジョブフローとの依存関係を有する依存ジョブとして抽出して依存ジョブおよび前記優先ジョブフローからなる優先ジョブグループを設定するジョブフロー解析部112と、優先ジョブグループに含まれるジョブの実行順位を、依存ジョブの依存関係を保持しつつ並べ替えると共に、並べ替えたジョブ実行順位のうちの優先ジョブグループの実行時間が最短となる格納ジョブの実行順位を投入順位として決定する投入順決定部113を備えたジョブ管理装置。
【選択図】図1

Description

本発明は、ジョブの実行順位を管理するシステムに関し、特に、実行装置に対するジョブの投入順位を決定するシステムに関する
ジョブの実行を行う実行サーバと、この実行サーバに対してジョブの投入を行うジョブ管理装置とを有する、一般的なジョブ実行管理システムにおいては、通常ジョブ管理装置側で、実行サーバに対するジョブの投入順位を決定する。
この場合、例えば、予め設定された特定のジョブフローを指定時間内に終了させるため、他のジョブフローおよび上記特定のジョブフローとの依存関係にないジョブなどに優先して、特定のジョブフローに係るジョブの投入および処理を行う必要が生じる。
このような場合、上記特定のジョブフローだけでなく、そのジョブフローと依存関係にあるジョブも優先して実行サーバに対して投入する必要が生じる。
しかしながら、予めジョブ管理装置の投入キューにキューイングされたジョブの順序が、そのような目的を達成するために適切な順序であるとは限らない。
また、本来優先して処理する必要のないジョブが、優先して実行すべきジョブより先にジョブ実行サーバに投入された場合などには、優先して処理すべきジョブの投入が待たされてしまい、優先ジョブフローが設定された時間内に実行されないといった不都合が生じ得る。
更に、優先して処理したいジョブフローと依存関係のあるジョブの投入を優先させることができた場合であっても、それらのジョブをどのような順でジョブ実行サーバに投入するかによっても目的のジョブフローの終了時間が変化する。
このため、優先させて処理したいジョブフローの実行を迅速にすることを考慮してつつ、予めキューイングされたジョブのジョブ実行サーバへの投入順序を決定する必要がある。
また、一般的なジョブ管理システムを構築するためのソフトウェアでは、ジョブそのものに優先度の設定を行う、ジョブフローに希望終了時間の設定を行うなどの機能を実現しており、それらの設定を行うことによって、ジョブやジョブフローへの優先度の設定を可能にしている。
しかしながら、これらの製品を用いて作成されるジョブフローには、一般的に、ジョブ間における上述のような依存関係が存在するため、ジョブフローそのものに対する優先度の設定だけでは適正なジョブ投入順序を決定することができないという不都合があった。
これに対する関連技術として、各ジョブの投入予定時刻と予定実行時間、およびジョブ同士の実行順位に係る依存関係に基づきジョブのスケジュールを決定するシステムが開示されている(特許文献1、2)。
特開2004−013235号公報 特開平02−244223号公報
しかしながら、上記特許文献1および2を組み合わせた内容では、各ジョブに設定されたジョブ優先度が一定値より低いジョブの実行をキャンセルする処理を行っており、このため、キャンセル可能なジョブであるか否かを選別する必要が生じ、更には、ジョブのキャンセルを行うことにより、ジョブ実行を待っている後述のジョブに対する影響が及んでしまうといった不都合が生じ得る。
また、ジョブ管理システム全体が平常動作状態であれば、いつ、どのようなタイミングでジョブが実行されるか、そのときにどのようなジョブを優先させる必要があるかの予測(静的優先度設定)が比較的容易であるが、例えば、ジョブの実行を行うジョブ実行サーバに障害が発生し、ジョブ実行サーバへのジョブ投入処理が滞った場合に、どのジョブを優先して投入する必要があるかを判断することは非常に困難となる。
また、このような環境では人手でジョブ実行順序を決定したり、ジョブの並び替えを行ったりする必要があるが、この場合、人的ミスなどによるジョブ実行遅延が発生するといった不都合がある。
また、システム復旧時のような環境において、人手によりジョブ実行順序を決定したり、ジョブの並べ替えを行ったりする場合、人的ミスなどによるジョブ実行遅延が発生する可能性が高くなるといった不都合がある。
[発明の目的]
本発明は、上記関連技術の有する不都合を改善し、特定のジョブフローをより迅速に実行するためのジョブ実行順位を決定するジョブ管理装置、ジョブ管理方法、およびジョブ管理プログラムを提供することを、その目的とする。
上記目的を達成するために、本発明に係るジョブ管理装置は、ジョブの実行を行うジョブ実行サーバに対して予め設定された投入順位に基づきジョブを投入するジョブ要求投入部と、予め設定された投入キュー内に格納されたジョブである格納ジョブの投入順位を決定する投入順位決定部とを備えたジョブ管理装置であって、前記投入順位決定部は、予め設定された異なるジョブの実行スケジュールを示す各ジョブフローに対して当該ジョブフローの実行完了時刻に基づき実行優先度を設定するジョブフロー優先度設定手段と、前記実行優先度が設定されたジョブフローとしての優先ジョブフローに含まれるジョブの実行が前記格納ジョブの実行後に行われる場合に、前記格納ジョブおよび当該格納ジョブに後続して実行される後続ジョブを前記優先ジョブフローとの依存関係を有する依存ジョブとして抽出すると共に、当該依存ジョブおよび前記優先ジョブフローからなる優先ジョブグループを設定するグループ設定手段と、前記優先ジョブグループに含まれるジョブの実行順位を、前記依存ジョブの依存関係を保持しつつ並べ替えると共に、当該並べ替えたジョブ実行順位のうちの前記優先ジョブグループの実行時間をグループ実行時間として算出するグループ実行時間算出手段と、前記グループ実行時間が最短となる前記格納ジョブの実行順位を前記投入順位として決定するジョブ投入順位決定手段とを備えた構成をとっている。
また、本発明にかかるジョブ管理方法は、ジョブの実行を行うジョブ実行サーバに対してジョブを投入するジョブ要求投入部と、予め設定された投入キュー内に格納されたジョブである格納ジョブを前記投入用に並べ替えを行う投入順位決定部とを備えたジョブ管理装置にあって、前記ジョブの前記ジョブ実行サーバへの投入順位を決定するジョブ管理方法であって、
前記投入順位決定部が、予め設定された異なるジョブの実行スケジュールを示す各ジョブフローに対して当該ジョブフローの実行完了時刻に基づき実行優先度を設定し(ジョブフロー優先度設定手段)、前記実行優先度が設定されたジョブフローとしての優先ジョブフローに含まれるジョブの実行が前記格納ジョブの実行後に行われる場合に、前記格納ジョブおよび当該格納ジョブに後続して実行される後続ジョブを前記優先ジョブフローとの依存関係を有する依存ジョブとして抽出し、当該依存ジョブおよび前記優先ジョブフローからなる優先ジョブグループを設定し(グループ設定手段)、前記優先ジョブグループに含まれるジョブの実行順位を、前記依存ジョブの依存関係を保持しつつ並べ替えると共に、当該並べ替えたジョブ実行順位のうちの前記優先ジョブグループの実行時間をグループ実行時間として算出し(グループ実行時間算出手段)、前記グループ実行時間が最短となる前記格納ジョブの実行順位を前記投入順位として決定する(ジョブ投入順位決定手段)ことを特徴としている。
また、本発明にかかるジョブ管理プログラムは、ジョブの実行を行うジョブ実行サーバに対してジョブを投入するジョブ要求投入部と、予め設定された投入キュー内に格納されたジョブである格納ジョブを前記投入用に並べ替えを行う投入順位決定部とを備えたジョブ管理装置にあって、前記ジョブの前記ジョブ実行サーバへの投入順位を決定するジョブ管理方法であって、予め設定された異なるジョブの実行スケジュールを示す各ジョブフローに対して当該ジョブフローの実行完了時刻に基づき実行優先度を設定するジョブフロー優先度設定機能と、前記実行優先度が設定されたジョブフローとしての優先ジョブフローに含まれるジョブの実行が前記格納ジョブの実行後に行われる場合に、前記格納ジョブおよび当該格納ジョブに後続して実行される後続ジョブを前記優先ジョブフローとの依存関係を有する依存ジョブとして抽出し、当該依存ジョブおよび前記優先ジョブフローからなる優先ジョブグループを設定するグループ設定機能と、前記優先ジョブグループに含まれるジョブの実行順位を、前記依存ジョブの依存関係を保持しつつ並べ替えると共に、当該並べ替えたジョブ実行順位のうちの前記優先ジョブグループの実行時間をグループ実行時間として算出するグループ実行時間算出機能と、前記グループ実行時間が最短となる前記格納ジョブの実行順位を前記投入順位として決定するジョブ投入順位決定機能とをコンピュータに実行させることを特徴としている。
本発明は、以上のように構成され機能するので、これによると、
優先ジョブフローに含まれるジョブの実行が格納ジョブの実行後に行われる場合に、格納ジョブおよび後続ジョブを優先ジョブフローとの依存関係を有する依存ジョブとして優先ジョブグループを設定するグループ設定手段と、依存ジョブの依存関係を保持しつつ優先ジョブグループの実行時間をグループ実行時間として算出し、このグループ実行時間が最短となる前記格納ジョブの実行順位を投入順位として決定するジョブ投入順位決定手段とを備えた構成とすることにより、予め設定された特定のジョブフローを優先して迅速に実行することを可能としたジョブ管理装置、ジョブ管理方法、およびジョブ管理プログラムを提供することができる。
本発明にかかるジョブ管理システムの一実施形態を示す概略ブロック図である。 図1に開示したジョブ管理システムにおける投入キュー内における格納ジョブの並べ替え動作内容の一例を示す説明図である。 図1に開示したジョブ管理システムにおける優先ジョブフローと格納ジョブとの依存関係を示す説明図である。
[実施形態]
次に、本発明の実施形態について、その基本的構成内容を説明する。
本実施形態であるジョブ管理システムは、図1に示すように、外部より投入されたジョブを、その投入順に実行処理するジョブ実行サーバ210と、実行投入用のメモリである投入キュー(ジョブ実行サーバへの投入キュー)115と、この投入キュー115に格納されたジョブの投入順序を決定し、この投入順序に基づき予め設定されたジョブをジョブ実行サーバ210に対して投入する投入キュー管理部111を有するジョブ管理マネージャ装置(以下「ジョブ管理マネージャ」という)110を備えた構成を有する。
ジョブ管理マネージャ(ジョブ管理装置に対応)110は、図1に示すように、予め設定された異なるジョブフローおよびジョブを記憶保持するジョブフロー保存部116と、ジョブ実行サーバへの投入用にキューイングされたジョブを一時的に記憶するメモリであるジョブ実行サーバへの投入キュー(以下「投入キュー」という)115と、投入キュー115に対してのジョブキューイングおよびジョブ実行サーバ210に対するジョブ投入の実行制御する投入キュー管理部111と、ジョブフロー保存部116内に予め登録されたジョブフローを取得し、このジョブフローの解析を行うことによりジョブフローおよびキューイングされたジョブ間の実行順位に係る依存関係を解析するジョブフロー解析部112と、上記解析結果に基き投入キュー内に蓄積されたジョブの投入順序を決定する投入順決定部113と、投入キュー内に蓄積されたジョブを予め決定された投入順序に基づき並べ替えるジョブ投入順変更部114を備えた構成を有する。
投入キュー管理部111は、以下に示すジョブフロー解析部112、投入順決定部113、およびジョブ投入順変更部114における機能動作を制御し、これにより、投入キュー115に格納された格納ジョブのジョブ実行サーバ210へのジョブ投入動作を制御する。
尚、ジョブ実行サーバへの投入キュー(投入キュー)115は、コンピュータ装置であるジョブ管理マネージャ110内に予め設けられた1次記憶装置(メモリ装置)における特定のメモリ領域であり、ジョブフロー保存部116は、ジョブ管理マネージャ110内に予め設けられたHDD(ハードディスクドライブ)などの2次記憶装置であるものとする。
ジョブフロー解析部112は、ジョブフロー保存部116内に予め記憶されたジョブフローについて、各ジョブフローに予め設定された希望終了時刻と現在時刻を比較し、時刻差が短い(近い)ジョブフローほど優先度が高くなるように、各ジョブフローに対して優先度付けを行う(優先度設定機能)。
ここでは、各ジョブフローに予め設定された希望実行終了時間と取得された現在時刻との差が短いジョブフローに対してより高い優先度が割当てられるように、ジョブフロー解析部112が、各ジョブフローに対する優先度付けを行うものとする。
ここで、例えば、ある特定のジョブ(ここでは「ジョブX」とする)の実行が、他のジョブ(ここでは「ジョブZ」とする)の実行完了を待って行われる場合、つまり、ジョブZの実行が完了しなければジョブXの実行が行われないようにジョブ実行順序が設定されている場合、上記ジョブXのように他のジョブ(ジョブZ)の実行完了を待って実行が行われるジョブを「ジョブ待ち部品」と呼ぶものとする。
また、このジョブの実行待ちの対象となるジョブ部品(ジョブZに対応)を、「ジョブ待ち対象部品」と呼ぶものとする。
また、上記ジョブXおよびジョブZがそれぞれ異なるジョブフローに属し、「ジョブZの実行が終了した場合に、ジョブXおよびジョブXの後続ジョブの実行される」という関係にある場合、ジョブXおよびZは連結点を成すものと定義し、また、ジョブXの所属するジョブフローとジョブZの所属するジョブフローとは相互に依存関係にあるものと定義する。
更に、この場合、ジョブZの所属するジョブフローにおける、ジョブZの前に実行されるジョブ(ジョブYとする)は、ジョブZの所属するジョブフローと依存関係にあるものと定義する。つまり、ジョブYの後続ジョブであるジョブZと共に連結点を形成するジョブXが所属するジョブフローとジョブYとが依存関係にあると定義する
ジョブフロー解析部112は、ジョブ投入キュー115に予め格納された格納ジョブそれぞれについて、上述の定義に基づき、優先度付けが行われたジョブフロー(以下「優先ジョブフロー」という)と依存関係にあるか否かを判定する依存関係判定機能を有する。
また、ジョブフロー解析部112は、優先ジョブフローとの依存関係がある格納ジョブを抽出し、この格納ジョブと優先フローを含むグループ(優先グループ)を設定するグルーピング機能を備えている。
これにより、優先ジョブフローとの連結点に含まれる格納ジョブは優先ジョブフローに対応してグルーピングされる。
例えば、投入キュー115内に格納ジョブE,G,およびIが格納されている場合に、ジョブフロー解析部112は、この格納ジョブそれぞれが所属するジョブフローにおける後続ジョブについて、優先ジョブフロー(ジョブフロー1)に所属するジョブとの連結点があるか否かを調べる。
本実施形態においては、図3に示すように、ジョブAは、ジョブFの実行終了を待って実行される待ちジョブ部品、また、ジョブBは、ジョブHの実行終了を待って実行される待ちジョブ部品、また、ジョブCは、ジョブJの実行終了を待って実行される待ちジョブ部品であるものとする。
つまり、ジョブEが所属するジョブフローにおける後続ジョブであるジョブFとジョブフロー1に所属するジョブAとが連結点を成し、また、ジョブGが所属するジョブフローにおける後続ジョブであるジョブHとジョブフロー1に所属するジョブBとが連結点を成し、更に、ジョブIが所属するジョブフローにおける、ジョブIの後続ジョブであるジョブJとジョブフロー1に所属するジョブCとが連結点を成す。
これにより、ジョブE,GおよびIはそれぞれジョブフロー1との依存関係にあるものとて定義される。
このとき、ジョブフロー解析部112は、優先ジョブフローであるジョブフロー1との依存関係があるジョブ(ここでは、ジョブE,G,およびI)を抽出すると共に、ジョブフロー1を含む優先グループとして設定するグルーピングを行う(グルーピング機能)。
投入順序決定部113は、優先ジョブフローとグルーピングされたジョブ(格納ジョブ)それぞれに対応して、各格納ジョブの、当該格納ジョブの所属するジョブフローにおける、直後の後続ジョブから優先ジョブフローに含まれる(所属する)最後のジョブが実行されるまでにかかる実行時間を、後続予想実行時間として算出する後続予想実行時間算出手段を備えている。
ここで、投入順序決定部113は、優先ジョブフロー内に序属するジョブ部品について、予め記憶保持された過去における実行時間の実績値を後続予想実行時間とし、ジョブ待ち部品に対しては、予想実行時間の計算時点での予め設定された待ち合わせの条件を満たしているかどうかをチェックし、条件を満たしている場合は予想実行時間を0に設定するものとする。
尚、条件を満たしていない場合は予想実行時間を過去の待ち合わせ時間の実績値として設定する。
更に、投入順決定部113は、上述のように算出された後述予想実行時間、投入キュー115に格納されている各格納ジョブそのものの実行にかかる時間、および、ジョブ実行サーバ210における同時並行実行数に基づき、当該格納ジョブを含む連結点に基づいて予想実行時間を算出し、上記優先ジョブフローの終了完了までの時間が最も短くなるように、グルーピングされた格納ジョブの投入順を決定する。
尚、グルーピングされた格納ジョブの後続ジョブがキューイングされた場合、予め設定されたグループの優先度に応じて、投入キュー115内の格納ジョブの順序の並べ替えを行うものとする。
また、同等の優先度のグループ内のジョブに対しては、先にキューイングされたジョブを優先するものとする。
ジョブ投入順変更部114は、投入キュー内に格納されたジョブを、投入順決定部113により決定された投入順に基づき再配置するジョブ再配置機能を有する。
このジョブ再配置機能で、ジョブ投入順変更部114は、設定された優先度が最も高いグループ、つまり、最も優先度が高いジョブフローと、このジョブフローと依存関係にある格納ジョブを含むグループについて、投入順序決定部113で決定された投入順に基づき投入キュー115内における格納ジョブの並べ替えを行う。
これにより、例えば、格納ジョブ(ジョブE,G,I)は、図2に示すように、優先処理ジョブフローの実行がより早く完了されるように、投入キュー内における記憶位置が最適化される。
また、ジョブ投入順変更部114は、グルーピングされなかったジョブ、つまり、優先度が高いジョブフローと依存関係にないジョブ(例えば、ジョブX,Y)を、投入用に並べ替えがなされたキュー(グループ)の最後尾に設定する(図2)。
ジョブ実行サーバ210は、ジョブ管理サーバ110から送り込まれたジョブ(実行要求)を実行用に格納するジョブ実行キュー211と、ジョブ実行キュー211内に格納されたジョブを投入された順に実行処理を行うジョブ実行本体部(図示なし)を備えた構成を有する。
以上のように、本実施形態では、例えば、ジョブ実行サーバ210の動作状態に障害が発生し、その後、動作状態が復旧した場合においても、復旧後に、ジョブフローの完了予定時間に基づき、格納ジョブの投入順序を自動的に、迅速に決定することが可能である。
このため、人手によるジョブ実行順序の並べ替えを行うことなく、最適なジョブ実行順序を設定することができ、更には、ジョブ並べ替えにかかる人的ミスに起因するジョブ実行遅延の発生を有効に抑制することができる。
[実施形態の動作説明]
次に、本実施形態の動作について、その概略を説明する。
まず、ジョブフロー解析部112が、予め設定された異なるジョブの実行スケジュールを示す各ジョブフローに対して当該ジョブフローの実行完了時刻に基づき実行優先度を設定する(ジョブフロー優先度設定行程)。
次いで、ジョブフロー解析部112は、実行優先度が設定されたジョブフローとしての優先ジョブフローに含まれるジョブの実行が前記格納ジョブの実行後に行われる場合に、前記格納ジョブおよび当該格納ジョブに後続して実行される後続ジョブを前記優先ジョブフローとの依存関係を有する依存ジョブとして抽出し、当該依存ジョブおよび前記優先ジョブフローからなる優先ジョブグループを設定する(グループ設定行程:グルーピング機能)。
次に、投入順決定部は113、優先ジョブグループに含まれるジョブの実行順位を、前記依存ジョブの依存関係を保持しつつ並べ替えると共に、当該並べ替えたジョブ実行順位のうちの前記優先ジョブグループの実行時間をグループ実行時間として算出し(グループ実行時間算出行程)、グループ実行時間が最短となる前記格納ジョブの実行順位を前記投入順位として決定する(ジョブ投入順位決定工程)。
ここで、上記ジョブフロー優先度設定行程、グループ設定行程、グループ実行時間算出行程、およびジョブ投入順位決定工程については、その実行内容をプログラム化し、コンピュータに実行させるように構成してもよい。
次に、本実施形態におけるジョブ管理マネージャ110およびジョブ実行サーバ210からなるジョブ管理システムの動作について説明する。
まず、ジョブフロー解析部112は、予め希望終了時刻の設定がなされたジョブフロー(優先ジョブフロー)を、ジョブフロー保存部116から取得すると共に、現在時刻に基づき優先ジョブフローにおける優先度を決定する(ステップS101)。
このとき、ジョブフロー解析部112は、現在時刻と希望終了時刻との差が小さいジョブフローに対してより優先度の高い値が設定されるように、優先度付けを行うものとする(ステップS102)。
ここでは、ジョブフロー保存部116に格納されたジョブフローのうち、希望終了時刻の設定がなされたジョブフローがジョブフロー1だけであるものとし、ジョブフロー解析部112は、このジョブフロー1を優先ジョブフローとして設定する。
尚、このジョブフロー1に設定された希望終了時刻(終了予定時間)は、図3に示すように、22:00であるものとする。
次いで、ジョブフロー解析部112は、投入キュー115内に格納されたジョブ(以下「格納ジョブ」という)それぞれが所属するジョブフローについて、優先ジョブフローであるジョブフロー1との依存関係があるか否かを確認する(ステップS103)。
具体的には、ジョブフロー解析部112は投入キュー115内に格納されたジョブE,G,およびIそれぞれが所属するジョブフローにおける後続ジョブについて、ジョブフロー1に所属するジョブとの連結点があるか否かを調べる。
本実施形態においては、図3に示すように、ジョブAは、ジョブFの実行終了を待って実行される待ちジョブ部品、また、ジョブBは、ジョブHの実行終了を待って実行される待ちジョブ部品、また、ジョブCは、ジョブJの実行終了を待って実行される待ちジョブ部品であるものとする。
このため、ジョブEが所属するジョブフローにおける後続ジョブであるジョブFとジョブフロー1に所属するジョブAとが連結点を成し、また、ジョブGが所属するジョブフローにおける後続ジョブであるジョブHとジョブフロー1に所属するジョブBとが連結点を成し、更に、ジョブIが所属するジョブフローにおける、ジョブIの後続ジョブであるジョブJとジョブフロー1に所属するジョブCとが連結点を成す。
これにより、ジョブE,GおよびIはそれぞれジョブフロー1との依存関係にあるものとて定義される。
ここで、ジョブフロー解析部112は、優先ジョブフローであるジョブフロー1との依存関係があるジョブ(ここでは、ジョブE,G,およびI)を抽出すると共に、ジョブフロー1を含む優先グループとして設定するグルーピングを行う(ステップS104:グルーピング行程)。
また、ジョブフロー解析部112は、ジョブフロー1と依存関係にないジョブXおよびY(図2)を、グループには所属しないジョブ(グループ無所属ジョブ)として設定する。
次に、投入順決定部113は、優先グループとして設定された(グルーピングされた)格納ジョブそれぞれの後続フローにおける予想実行時間を算出する(ステップS105:予想実行時間算出行程)。
具体的には、投入順決定部113は、ジョブEの後続フローとしての、ジョブF→ジョブA→ジョブDの予想実行時間を算出する。ここでは、50秒であるものとする(図3)。
また、投入順決定部113は、図3に示すように、ジョブEの後続フローとしての、ジョブH→ジョブB→ジョブDの予想実行時間を算出し(ここでは、70秒であるものとする)、更には、ジョブIの後続フローとしての、ジョブJ→ジョブA→ジョブDの予想実行時間を算出する(ここでは、60秒であるものとする)。
次いで、投入順決定部113は、上述のように算出した予想実行時間と、ジョブフロー1と依存関係にあるジョブとしてグルーピングした格納ジョブ(ジョブE,G,I)それぞれの予想実行時間、ジョブ実行サーバ210におけるジョブ同時並行実行可能数、および、上記連結点を含む後続フローの予想実行時間に基づき、ジョブフロー1の実行を最も早く完了するための、格納ジョブ(E,G,I)の投入順を決定する(ステップS106:投入順決定工程)。
ここでは、格納ジョブをG,I,Eの順に投入した場合に、優先ジョブフローであるジョブフロー1の実行完了までの時間が最短となるものとする。
ここで、ジョブ投入順編後部114が、投入キュー115内における格納ジョブについて、図2に示すように、並べ替えを行うものとする(ステップS107:格納ジョブ並べ替え工程)。
尚、本実施形態では、ジョブ実行サーバ210における同時実行数が「2」のため、G,Iは順不同であるものとする。
また、優先度付けが行われたジョブフローが1つだけであるため、グループに所属しないジョブについては、並べ替えを行う前に格納されていた順(Y→X)に投入されるものとする。
ジョブ投入順変更部114による格納ジョブの並べ替えが完了した場合、投入キュー管理部111は、ジョブ実行サーバ210へのジョブ投入を開始する。
また、投入キュー管理部111は、ジョブフロー1と依存関係にあるグループ内に所属するジョブ(例えば、ジョブE)が投入された後、上記グループ未所属のジョブやグループ未所属のジョブの後続フローのジョブよりも優先して後続フローのジョブを投入するものとする(ステップS108:ジョブ投入行程)。
以上のように、本実施形態では、予め希望実行完了時刻が設定された優先度が高いジョブフローを、当該ジョブフローとの依存関係があるジョブも含めて、最短時間での実行することを可能とするための、投入キュー内に格納されたジョブ(格納ジョブ)の最適な投入順位を決定することができる。
上述した実施形態については、その新規な技術的内容の要点をまとめると、以下のようになる。
尚、上記の実施形態の一部又は全部は、新規な技術として以下のようにまとめられるが、本発明は必ずしもこれに限定されるものではない。
(付与1)
ジョブの実行を行うジョブ実行サーバに対して予め設定された投入順位に基づきジョブを投入するジョブ要求投入部と、予め設定された投入キュー内に格納されたジョブである格納ジョブの投入順位を決定する投入順位決定部とを備えたジョブ管理装置であって、
前記投入順位決定部は、
予め設定された異なるジョブの実行スケジュールを示す各ジョブフローに対して当該ジョブフローの実行完了時刻に基づき実行優先度を設定するジョブフロー優先度設定手段と、
前記実行優先度が設定されたジョブフローとしての優先ジョブフローに含まれるジョブの実行が前記格納ジョブの実行後に行われる場合に、前記格納ジョブおよび当該格納ジョブに後続して実行される後続ジョブを前記優先ジョブフローとの依存関係を有する依存ジョブとして抽出すると共に、当該依存ジョブおよび前記優先ジョブフローからなる優先ジョブグループを設定するグループ設定手段と、
前記優先ジョブグループに含まれるジョブの実行順位を、前記依存ジョブの依存関係を保持しつつ並べ替えると共に、当該並べ替えたジョブ実行順位のうちの前記優先ジョブグループの実行時間をグループ実行時間として算出するグループ実行時間算出手段と、
前記グループ実行時間が最短となる前記格納ジョブの実行順位を前記投入順位として決定するジョブ投入順位決定手段とを備えたことを特徴とするジョブ管理装置。
(付与2)
付与1に記載のジョブ管理装置において、
前記グループ実行時間算出手段は、前記ジョブ実行サーバにおけるジョブの並行実行数に基づき前記グループ実行時間の算出を行う並行実行時間算出機能を備えたことを特徴とするジョブ管理装置。
(付与3)
付与1に記載のジョブ管理装置において、
ジョブ要求投入部は、
前記投入キュー内に予め格納された前記優先ジョブグループ以外の前記優先ジョブフローとの依存関係がないジョブを、前記優先ジョブグループの後続ジョブ部品として設定する後続投入ジョブ設定機能を備えたことを特徴とするジョブ管理装置。
(付与4)
ジョブの実行を行うジョブ実行サーバに対してジョブを投入するジョブ要求投入部と、予め設定された投入キュー内に格納されたジョブである格納ジョブを前記投入用に並べ替えを行う投入順位決定部とを備えたジョブ管理装置にあって、前記ジョブの前記ジョブ実行サーバへの投入順位を決定するジョブ管理方法であって、
前記投入順位決定部が、予め設定された異なるジョブの実行スケジュールを示す各ジョブフローに対して当該ジョブフローの実行完了時刻に基づき実行優先度を設定し、前記実行優先度が設定されたジョブフローとしての優先ジョブフローに含まれるジョブの実行が前記格納ジョブの実行後に行われる場合に、前記格納ジョブおよび当該格納ジョブに後続して実行される後続ジョブを前記優先ジョブフローとの依存関係を有する依存ジョブとして抽出し、当該依存ジョブおよび前記優先ジョブフローからなる優先ジョブグループを設定し、前記優先ジョブグループに含まれるジョブの実行順位を、前記依存ジョブの依存関係を保持しつつ並べ替えると共に、当該並べ替えたジョブ実行順位のうちの前記優先ジョブグループの実行時間をグループ実行時間として算出し、前記グループ実行時間が最短となる前記格納ジョブの実行順位を前記投入順位として決定することを特徴とするジョブ管理方法。
(付与5)
ジョブの実行を行うジョブ実行サーバに対してジョブを投入するジョブ要求投入部と、予め設定された投入キュー内に格納されたジョブである格納ジョブを前記投入用に並べ替えを行う投入順位決定部とを備えたジョブ管理装置にあって、前記ジョブの前記ジョブ実行サーバへの投入順位を決定するためのジョブ管理プログラムであって、
予め設定された異なるジョブの実行スケジュールを示す各ジョブフローに対して当該ジョブフローの実行完了時刻に基づき実行優先度を設定するジョブフロー優先度設定機能と、
前記実行優先度が設定されたジョブフローとしての優先ジョブフローに含まれるジョブの実行が前記格納ジョブの実行後に行われる場合に、前記格納ジョブおよび当該格納ジョブに後続して実行される後続ジョブを前記優先ジョブフローとの依存関係を有する依存ジョブとして抽出し、当該依存ジョブおよび前記優先ジョブフローからなる優先ジョブグループを設定するグループ設定機能と、
前記優先ジョブグループに含まれるジョブの実行順位を、前記依存ジョブの依存関係を保持しつつ並べ替えると共に、当該並べ替えたジョブ実行順位のうちの前記優先ジョブグループの実行時間をグループ実行時間として算出するグループ実行時間算出機能と、
前記グループ実行時間が最短となる前記格納ジョブの実行順位を前記投入順位として決定するジョブ投入順位決定機能とをコンピュータに実行させることを特徴とするジョブ管理プログラム。
本発明は、ネットワークを介してジョブの分散処理を管理するシステムに適用することができ、例えば、システムにおける障害発生後のシステム復旧時にジョブ投入順序を決定するジョブ実行管理システムに対して有効に適用することができる。
110 ジョブ管理マネージャ装置
111 投入キュー管理部
112 ジョブフロー解析部
113 投入順決定部
114 ジョブ投入順変更部
115 ジョブ実行サーバへの投入キュー(実行部)
116 ジョブフロー保存部
210 ジョブ実行サーバ
211 ジョブ実行キュー

Claims (5)

  1. ジョブの実行を行うジョブ実行サーバに対して予め設定された投入順位に基づきジョブを投入するジョブ要求投入部と、予め設定された投入キュー内に格納されたジョブである格納ジョブの投入順位を決定する投入順位決定部とを備えたジョブ管理装置であって、
    前記投入順位決定部は、
    予め設定された異なるジョブの実行スケジュールを示す各ジョブフローに対して当該ジョブフローの実行完了時刻に基づき実行優先度を設定するジョブフロー優先度設定手段と、
    前記実行優先度が設定されたジョブフローとしての優先ジョブフローに含まれるジョブの実行が前記格納ジョブの実行後に行われる場合に、前記格納ジョブおよび当該格納ジョブに後続して実行される後続ジョブを前記優先ジョブフローとの依存関係を有する依存ジョブとして抽出すると共に、当該依存ジョブおよび前記優先ジョブフローからなる優先ジョブグループを設定するグループ設定手段と、
    前記優先ジョブグループに含まれるジョブの実行順位を、前記依存ジョブの依存関係を保持しつつ並べ替えると共に、当該並べ替えたジョブ実行順位のうちの前記優先ジョブグループの実行時間をグループ実行時間として算出するグループ実行時間算出手段と、
    前記グループ実行時間が最短となる前記格納ジョブの実行順位を前記投入順位として決定するジョブ投入順位決定手段とを備えたことを特徴とするジョブ管理装置。
  2. 請求項1に記載のジョブ管理装置において、
    前記グループ実行時間算出手段は、前記ジョブ実行サーバにおけるジョブの並行実行数に基づき前記グループ実行時間の算出を行う並行実行時間算出機能を備えたことを特徴とするジョブ管理装置。
  3. 請求項1に記載のジョブ管理装置において、
    ジョブ要求投入部は、
    前記投入キュー内に予め格納された前記優先ジョブグループ以外の前記優先ジョブフローとの依存関係がないジョブを、前記優先ジョブグループの後続ジョブ部品として設定する後続投入ジョブ設定機能を備えたことを特徴とするジョブ管理装置。
  4. ジョブの実行を行うジョブ実行サーバに対してジョブを投入するジョブ要求投入部と、予め設定された投入キュー内に格納されたジョブである格納ジョブを前記投入用に並べ替えを行う投入順位決定部とを備えたジョブ管理装置にあって、前記ジョブの前記ジョブ実行サーバへの投入順位を決定するジョブ管理方法であって、
    前記投入順位決定部が、予め設定された異なるジョブの実行スケジュールを示す各ジョブフローに対して当該ジョブフローの実行完了時刻に基づき実行優先度を設定し、前記実行優先度が設定されたジョブフローとしての優先ジョブフローに含まれるジョブの実行が前記格納ジョブの実行後に行われる場合に、前記格納ジョブおよび当該格納ジョブに後続して実行される後続ジョブを前記優先ジョブフローとの依存関係を有する依存ジョブとして抽出し、当該依存ジョブおよび前記優先ジョブフローからなる優先ジョブグループを設定し、前記優先ジョブグループに含まれるジョブの実行順位を、前記依存ジョブの依存関係を保持しつつ並べ替えると共に、当該並べ替えたジョブ実行順位のうちの前記優先ジョブグループの実行時間をグループ実行時間として算出し、前記グループ実行時間が最短となる前記格納ジョブの実行順位を前記投入順位として決定することを特徴とするジョブ管理方法。
  5. ジョブの実行を行うジョブ実行サーバに対してジョブを投入するジョブ要求投入部と、予め設定された投入キュー内に格納されたジョブである格納ジョブを前記投入用に並べ替えを行う投入順位決定部とを備えたジョブ管理装置にあって、前記ジョブの前記ジョブ実行サーバへの投入順位を決定するためのジョブ管理プログラムであって、
    予め設定された異なるジョブの実行スケジュールを示す各ジョブフローに対して当該ジョブフローの実行完了時刻に基づき実行優先度を設定するジョブフロー優先度設定機能と、
    前記実行優先度が設定されたジョブフローとしての優先ジョブフローに含まれるジョブの実行が前記格納ジョブの実行後に行われる場合に、前記格納ジョブおよび当該格納ジョブに後続して実行される後続ジョブを前記優先ジョブフローとの依存関係を有する依存ジョブとして抽出し、当該依存ジョブおよび前記優先ジョブフローからなる優先ジョブグループを設定するグループ設定機能と、
    前記優先ジョブグループに含まれるジョブの実行順位を、前記依存ジョブの依存関係を保持しつつ並べ替えると共に、当該並べ替えたジョブ実行順位のうちの前記優先ジョブグループの実行時間をグループ実行時間として算出するグループ実行時間算出機能と、
    前記グループ実行時間が最短となる前記格納ジョブの実行順位を前記投入順位として決定するジョブ投入順位決定機能とをコンピュータに実行させることを特徴とするジョブ管理プログラム。
JP2010116709A 2010-05-20 2010-05-20 ジョブ管理装置、ジョブ管理方法、およびジョブ管理プログラム Expired - Fee Related JP5482442B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010116709A JP5482442B2 (ja) 2010-05-20 2010-05-20 ジョブ管理装置、ジョブ管理方法、およびジョブ管理プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010116709A JP5482442B2 (ja) 2010-05-20 2010-05-20 ジョブ管理装置、ジョブ管理方法、およびジョブ管理プログラム

Publications (2)

Publication Number Publication Date
JP2011243120A true JP2011243120A (ja) 2011-12-01
JP5482442B2 JP5482442B2 (ja) 2014-05-07

Family

ID=45409678

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010116709A Expired - Fee Related JP5482442B2 (ja) 2010-05-20 2010-05-20 ジョブ管理装置、ジョブ管理方法、およびジョブ管理プログラム

Country Status (1)

Country Link
JP (1) JP5482442B2 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015064723A (ja) * 2013-09-25 2015-04-09 株式会社日立ソリューションズ ジョブ管理システム
JP2019040344A (ja) * 2017-08-24 2019-03-14 富士通株式会社 送信制御プログラム、送信制御装置および送信制御方法
CN109615138A (zh) * 2018-12-13 2019-04-12 中国银行股份有限公司 一种作业流程调优方法及装置
WO2020096239A1 (ko) * 2018-11-06 2020-05-14 삼성전자 주식회사 작업 의존성에 기초하여 컴퓨팅 작업을 서버에 스케줄링하는 방법 및 장치
US12008400B2 (en) 2018-11-06 2024-06-11 Samsung Electronics Co., Ltd. Method and device for arranging schedule for computing task to server on basis of task dependency

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015064723A (ja) * 2013-09-25 2015-04-09 株式会社日立ソリューションズ ジョブ管理システム
JP2019040344A (ja) * 2017-08-24 2019-03-14 富士通株式会社 送信制御プログラム、送信制御装置および送信制御方法
WO2020096239A1 (ko) * 2018-11-06 2020-05-14 삼성전자 주식회사 작업 의존성에 기초하여 컴퓨팅 작업을 서버에 스케줄링하는 방법 및 장치
KR20200052135A (ko) * 2018-11-06 2020-05-14 삼성전자주식회사 작업 의존성에 기초하여 컴퓨팅 작업을 서버에 스케줄링하는 방법 및 장치
KR102598084B1 (ko) * 2018-11-06 2023-11-03 삼성전자주식회사 작업 의존성에 기초하여 컴퓨팅 작업을 서버에 스케줄링하는 방법 및 장치
US12008400B2 (en) 2018-11-06 2024-06-11 Samsung Electronics Co., Ltd. Method and device for arranging schedule for computing task to server on basis of task dependency
CN109615138A (zh) * 2018-12-13 2019-04-12 中国银行股份有限公司 一种作业流程调优方法及装置
CN109615138B (zh) * 2018-12-13 2023-01-20 中国银行股份有限公司 一种作业流程调优方法及装置

Also Published As

Publication number Publication date
JP5482442B2 (ja) 2014-05-07

Similar Documents

Publication Publication Date Title
JP4571819B2 (ja) 異なったジョブ優先度のシステムおよび方法のための予測可能でプリエンプティブのプラニングおよびスケジューリング
US8924976B2 (en) Task scheduling method and apparatus
US10365994B2 (en) Dynamic scheduling of test cases
US8266622B2 (en) Dynamic critical path update facility
JP2007034414A5 (ja)
Hamzadayi et al. Event driven strategy based complete rescheduling approaches for dynamic m identical parallel machines scheduling problem with a common server
JPWO2005106623A1 (ja) Cpuクロック制御装置、cpuクロック制御方法、cpuクロック制御プログラム、記録媒体、及び伝送媒体
JP5482442B2 (ja) ジョブ管理装置、ジョブ管理方法、およびジョブ管理プログラム
KR101770191B1 (ko) 자원 할당 방법 및 그 장치
US11550626B2 (en) Information processing apparatus, job scheduling method, and non-transitory computer-readable storage medium
Lee et al. Preempt a job or not in EDF scheduling of uniprocessor systems
Devaraj et al. Fault-tolerant preemptive aperiodic RT scheduling by supervisory control of TDES on multiprocessors
US9424078B2 (en) Managing high performance computing resources using job preemption
KR100981017B1 (ko) 정적 태스크 정의 기능을 가진 시스템을 위한 우선순위 재정의 및 대기큐 관리 방법과 상기 방법을 실행하는 시스템
US20210374652A1 (en) Storage medium, job scheduling device, and job scheduling method
US9058207B2 (en) Simulation apparatus, method, and computer-readable recording medium
WO2016165467A1 (zh) 基于业务流的任务调度方法及装置
Pathan Design of an efficient ready queue for earliest-deadline-first (EDF) scheduler
Liu et al. On non-utilization bounds for arbitrary fixed priority policies
JP4978715B2 (ja) 伝票多重処理方法、プログラム及び装置
KR101789288B1 (ko) 계층적 실시간 스케줄링 시스템의 정형 검증 장치 및 방법
CN117453379B (zh) Linux系统中AOE网计算任务的调度方法及系统
Haruna et al. Performance comparison of least slack time based heuristics for job scheduling on computational grid
US9459916B2 (en) System and method for controlling execution of jobs performed by plural information processing devices
CN110348818B (zh) 一种流程引擎的流程智能处理方法及系统

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130412

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131219

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140121

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140203

R150 Certificate of patent or registration of utility model

Ref document number: 5482442

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees