JP2011123817A - ジョブ振分装置、ジョブ振分プログラム及びジョブ振分方法 - Google Patents

ジョブ振分装置、ジョブ振分プログラム及びジョブ振分方法 Download PDF

Info

Publication number
JP2011123817A
JP2011123817A JP2009283042A JP2009283042A JP2011123817A JP 2011123817 A JP2011123817 A JP 2011123817A JP 2009283042 A JP2009283042 A JP 2009283042A JP 2009283042 A JP2009283042 A JP 2009283042A JP 2011123817 A JP2011123817 A JP 2011123817A
Authority
JP
Japan
Prior art keywords
job
execution
resource
execution request
unit
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.)
Ceased
Application number
JP2009283042A
Other languages
English (en)
Inventor
Hiroyuki Yamaguchi
博之 山口
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2009283042A priority Critical patent/JP2011123817A/ja
Priority to US12/966,883 priority patent/US8533718B2/en
Publication of JP2011123817A publication Critical patent/JP2011123817A/ja
Ceased legal-status Critical Current

Links

Images

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/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/52Program synchronisation; Mutual exclusion, e.g. by means of semaphores

Abstract

【課題】各バッチジョブが依存する計算機リソースに対応する排他制御を的確に行う。
【解決手段】ジョブ振分装置1は、実行が要求された実行要求ジョブの起動時に動作するプログラムにおいて計算機リソースに依存した処理に要した実行時間と、前記プログラムの動作完了直後に動作する前記実行要求ジョブにおいて所定データ量当たりの処理に要した実行時間との相関関係を算出する相関関係算出部10と、算出された相関関係に基づいて、前記実行要求ジョブが依存する計算機リソースを特定するリソース特定部11と、特定された計算機リソースと同一の計算機リソースに依存するジョブと、前記実行要求ジョブとの同時実行を排除すべく、自装置と接続されたいずれかの実行サーバに前記実行要求ジョブを振り分けるジョブ振分部12とを備える。
【選択図】図1

Description

本発明は、ジョブ振分装置、ジョブ振分プログラム及びジョブ振分方法に関する。
従来から、バッチジョブを実行する計算機システムでは、例えばCPU(Central Processing Unit)リソースなどの同一の計算機リソースに依存する複数のバッチジョブを実行しようとする場合、これらバッチジョブの同時実行を排除する排他制御が行われている。かかる排他制御が行われないと、複数のバッチジョブが同一の計算機リソースを同時に使用しようとするので、当該計算機リソースの割り当て待ちが発生する。その結果、バッチジョブの実行遅延が発生してしまう。さらに、そのバッチジョブの実行遅延によってタイムアウトが発生してしまうことから、バッチジョブが異常終了してしまうといった事態も考えられる。
そこで、このような事態を回避するために、バッチジョブ毎に依存する計算機リソースを識別する任意の文字列を設定し、同一の文字列が設定されたバッチジョブ同士の同時実行を抑止する排他制御技術が知られている。
特開昭54−118744号公報 特開2006−40084号公報
しかしながら、上記の従来技術では、バッチジョブ毎に文字列が設定されなければ、各バッチジョブが依存する計算機リソースを識別できない。このため、各バッチジョブが依存する計算機リソースを特定できない場合には、バッチジョブ毎に文字列を設定できず、各バッチジョブが依存する計算機リソースに対応する排他制御を的確に行うことができないという問題があった。
開示の技術は、上記に鑑みてなされたものであって、各バッチジョブが依存する計算機リソースに対応する排他制御を的確に行うことができるジョブ振分装置、ジョブ振分プログラム及びジョブ振分方法を提供することを目的とする。
本願の開示するジョブ振分装置は、一つの態様において、実行が要求された実行要求ジョブの起動時に動作するプログラムにおいて計算機リソースに依存した処理に要した実行時間と、前記プログラムの動作完了直後に動作する前記実行要求ジョブにおいて所定データ量当たりの処理に要した実行時間との相関関係を算出する相関関係算出部と、前記相関関係算出部によって算出された相関関係に基づいて、前記実行要求ジョブが依存する計算機リソースを特定するリソース特定部と、前記リソース特定部によって特定された計算機リソースと同一の計算機リソースに依存するジョブと、前記実行要求ジョブとの同時実行を排除すべく、自装置と接続されたいずれかの実行サーバに前記実行要求ジョブを振り分けるジョブ振分部とを備える。
本願の開示するジョブ振分装置の一つの態様によれば、当該実行要求ジョブが依存する計算機リソースに対応する排他制御を的確に行うことができるという効果を奏する。
図1は、実施例1に係るジョブ振分装置の構成を示す機能ブロック図である。 図2は、実施例2に係るジョブ振分装置の構成を示す機能ブロック図である。 図3は、実行時間管理テーブルのデータ構造の一例を示す図である。 図4は、実行時間とデータ量との関係を説明する図である。 図5は、実行時間情報蓄積テーブルのデータ構造の一例を示す図である。 図6は、制御プログラム及びジョブの実行時間の関係を示す説明図である。 図7は、相関関係管理テーブルのデータ構造の一例を示す図である。 図8は、排他制御管理テーブルのデータ構造の一例を示す図である。 図9は、ジョブ特性特定処理に関するジョブ振分装置の処理動作を示すフローチャートである。 図10は、ジョブ振分処理に関するジョブ振分装置の処理動作を示すフローチャートである。 図11は、排他制御管理テーブルのデータ構造の別の例を示す図である。 図12は、ジョブ振分プログラムを実行するコンピュータを示す図である。
以下に、本願の開示するジョブ振分装置、ジョブ振分プログラム及びジョブ振分方法の実施例を図面に基づいて詳細に説明する。なお、本実施例によりこの発明が限定されるものではない。
図1は、本実施例1に係るジョブ振分装置の構成を示す機能ブロック図である。図1に示すように、ジョブ振分装置1は、相関関係算出部10、リソース特定部11及びジョブ振分部12を有する。
相関関係算出部10は、実行が要求された実行要求ジョブの起動時に動作するプログラムにおいて計算機リソースに依存した処理に要した実行時間を算出する。ここで、ジョブとは、纏まった量のデータを処理するプログラムのことをいい、例えばバッチジョブがある。計算機リソースとは、例えば、CPUリソース、I/O(Input/Output)リソース、メモリリソースやネットワークリソースなどがある。また、相関関係算出部10は、実行要求ジョブの起動時に動作するプログラムの動作完了直後に動作する実行要求ジョブにおいて所定データ量当たりの処理に要した実行時間を算出する。
さらに、相関関係算出部10は、プログラムにおいて計算機リソースに依存した処理に要した実行時間と、実行要求ジョブにおいて所定データ量当たりの処理に要した実行時間との相関関係を算出する。
リソース特定部11は、相関関係算出部10によって算出された相関関係に基づいて、実行要求ジョブが依存する計算機リソースを特定する。ジョブ振分部12は、リソース特定部11によって特定された計算機リソースと同一の計算機リソースに依存するジョブと、実行要求ジョブとの同時実行を排除すべく、自装置と接続されたいずれかの実行サーバに実行要求ジョブを振り分ける。
このようにして、ジョブ振分装置1は、実行要求ジョブの起動時に連動して動作した、計算機リソースに依存した処理及び実行要求ジョブに関するそれぞれの実行時間を算出するので、動作環境を同一とした双方の実行時間の相関関係を算出できる。すなわち、ジョブ振分装置1は、仮に実行要求ジョブの所定データ量当たりの処理に要した実行時間の変動に応じて、計算機リソースに依存した処理に要した実行時間が変動をしていれば、双方の実行時間の相関が強いという相関関係を算出できる。その結果、ジョブ振分装置1は、算出した相関関係に基づいて、実行要求ジョブが計算機リソースに依存しているか否かを容易に識別できる。その識別結果に基づいて、ジョブ振分装置1は、実行要求ジョブと同一の計算機リソースに依存するジョブと、実行要求ジョブとの同時実行を排除すべく、実行要求ジョブを実行サーバに振り分けるので、同一の計算機リソースに依存するジョブ間の排他制御を的確に行うことができる。
[実施例2に係るジョブ振分装置の構成]
図2は、本実施例2に係るジョブ振分装置2の構成を示す機能ブロック図である。ジョブ振分装置2は、制御部20及び記憶部30を有する。
また、ジョブ振分装置2は、ネットワークを介してジョブ実行サーバ(以降、「実行サーバ」という。)S(S1〜Sn)(n>1)と接続する。実行サーバSは、ジョブ振分装置2からバッチジョブの起動要求がされると、ジョブ実行制御プログラム(以降、「制御プログラム」という。)pを実行後、バッチジョブを起動する。
ここで、制御プログラムpとは、バッチジョブの起動時に動作し、バッチジョブを起動するプログラムであり、CPUリソースに依存した処理、I/Oリソースに依存した処理及びメモリリソースに依存した処理を各処理毎に纏めて作りこまれたプログラムである。例えば、制御プログラムpは、バッチジョブの起動時に、起動するバッチジョブの属性を管理するファイルを作成するI/O処理や、当該バッチジョブの処理順序を判断するCPU処理などを行う。
また、制御部20は、実行が要求されたバッチジョブの特性を特定するジョブ特性特定部21と、特性が特定されたバッチジョブを実行サーバSに振り分けるジョブ振分部22とを有する。なお、バッチジョブの特性とは、バッチジョブが依存している計算機リソースを指す。すなわち、ジョブ特性特定部21は、実行が要求されたバッチジョブが依存している計算機リソースを特定する。また、計算機リソースには、例えば、CPUリソース、I/O(Input/Output)リソース、メモリリソースやネットワークリソースなどが含まれるが、本実施例では、CPUリソース、I/Oリソース及びメモリリソースを例として説明する。
また、ジョブ特性特定部21は、リソース依存処理実行時間算出部21aと、ジョブ実行時間算出部21bと、相関関係算出部21cと、リソース特定部21dとを有する。ジョブ振分部22は、サーバ選択順位決定部22aと、排他制御対象ジョブ確認部22bと、ジョブ投入部22cと、ジョブ実行監視部22dと、ジョブ削除部22eとを有する。なお、制御部20は、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)などの集積回路又はCPU(Central Processing Unit)やMPU(Micro Processing Unit)などの電子回路である。
記憶部30は、実行時間履歴テーブル31と、実行時間管理テーブル32と、実行時間情報蓄積テーブル33と、相関関係管理テーブル34と、排他制御管理テーブル35と、複数のバッチジョブを示すジョブj(j1〜jm)(m>1)とを有する。なお、記憶部30は、例えば、RAM(Random Access Memory)、フラッシュメモリ(flash memory)などの半導体メモリ素子、又は、ハードディスク、光ディスクなどの記憶装置である。
リソース依存処理実行時間算出部21aは、実行が要求された実行要求ジョブの起動時に動作するプログラムにおいて計算機リソースに依存した処理に要した実行時間を算出する。具体的には、リソース依存処理実行時間算出部21aは、実行要求ジョブの起動時に動作する制御プログラムpにおいて互いに異なる計算機リソースに依存した処理毎に要した実行時間を算出する。例えば、リソース依存処理実行時間算出部21aは、実行要求ジョブの起動時に動作した制御プログラムpにおいてCPUリソースに依存した処理の実行時間、I/Oリソースに依存した処理の実行時間及びメモリリソースに依存した処理の実行時間を算出する。
より具体的には、リソース依存処理実行時間算出部21aは、制御プログラムpが作成する実行時間履歴テーブル31を用いて、実行要求ジョブの起動時に動作する制御プログラムpにおいて互いに異なる計算機リソースに依存した処理毎の実行時間を算出する。この実行時間履歴テーブル31は、制御プログラムp及び実行要求ジョブによって処理時間情報を記憶する。以下、実行時間履歴テーブル31を用いた実行時間の算出について説明する。
制御プログラムpでは、実行要求ジョブの起動時に、システム時刻取得関数(例えば、timeGetSystemTimeやtimeGetTime)を用いて、各リソースに依存した処理の開始時刻及び終了時刻を取得する。また、制御プログラムpでは、各リソースに依存した処理の開始時刻、終了時刻、実行要求ジョブ名及び実行要求ジョブの実行回数を実行サーバSの実行時間履歴テーブル31に格納する。
さらに、実行要求ジョブでは、システム時刻取得関数(例えば、timeGetSystemTimeやtimeGetTime)を用いて、実行される処理の開始時刻及び終了時刻を取得する。また、実行要求ジョブでは、実行される処理の開始時刻、終了時刻、実行要求ジョブ名、実行回数及び処理データのデータ量を実行サーバSの実行時間履歴テーブル31に格納する。なお、実行要求ジョブは、処理データのデータ量を、ファイルサイズ取得関数(例えば、GetFileSize)を用いて取得する。なお、実行サーバSは、実行時間履歴テーブル31に記憶された処理時間情報を、定期的に又は不定期的に、ジョブ振分装置2に転送する。
この実行時間履歴テーブル31を用いて、リソース依存処理実行時間算出部21aは、リソースに依存した処理毎の終了時刻から開始時刻を引いた差値を各リソースに依存した処理の実行時間として算出する。また、リソース依存処理実行時間算出部21aは、算出した各リソースに依存した処理の実行時間を、実行要求ジョブ名及び実行回数とともに、後述する実行時間情報蓄積テーブル33に格納する。
図2に戻って、ジョブ実行時間算出部21bは、制御プログラムpの動作完了直後に動作する実行要求ジョブにおいて所定データ量当たりの処理に要した実行時間を算出する。なお、所定データ量単位とは、1ギガバイト(GB)や2GBなどであるが、本実施例では、1GBを例として説明する。
具体的には、ジョブ実行時間算出部21bは、実行時間履歴テーブル31を用いて、実行要求ジョブの処理に要した総実行時間を算出する。より具体的には、ジョブ実行時間算出部21bは、実行時間履歴テーブル31を用いて、実行要求ジョブが実行する処理の終了時刻から開始時刻を引いた差値を実行要求ジョブの「総実行時間」として算出する。
また、ジョブ実行時間算出部21bは、算出した「総実行時間」、処理データの「データ量」及び後述する実行時間管理テーブル32を用いて、所定データ量当たりの実行要求ジョブの実行時間を算出する。ここで、処理データの「データ量」とは、実行要求ジョブによって処理されたデータの量を示し、上述した実行時間履歴テーブル31に記憶される。
ここで、実行時間管理テーブル32について図3を参照しながら説明する。図3は、実行時間管理テーブルのデータ構造の一例を示す図である。図3に示すように、実行時間管理テーブル32は、複数のジョブ毎に、バッチジョブのジョブ名32a、「実行時間とデータ量との関係」32b及び「所定データ量当たりの実行時間の実測値」32cを対応付けて記憶する。なお、実行時間管理テーブル32は、ジョブ特性特定部21によるジョブ特性特定処理前にあらかじめ作成される。
「実行時間とデータ量との関係」32bとは、バッチジョブが処理した際の実行時間と、バッチジョブが処理した際のデータのデータ量との関係を示す計算式を指す。例えば、ジョブ名32a「J001」の「実行時間とデータ量との関係」32bは、「t=2d×T」の計算式で表される。「d」は、バッチジョブが処理したデータ量(単位:GB)(以降、「処理データ量」という。)を示す。「T」は、バッチジョブが所定データ量(1GB)を処理した際の実行時間(単位:秒)(以降、「単位処理時間」という。)を示す。「t」は、バッチジョブがデータ量「d」を処理した際の実行時間(単位:秒)(以降、「処理実行時間」という。)を示す。すなわち、ジョブ名32a「J001」の処理実行時間「t」は、処理データ量「d」と単位処理時間「T」とから「2d×T」式によって求められる。また、「所定データ量当たりの実行時間の実測値」32cとは、バッチジョブが所定データ量を処理した際の実行時間の実測値であり、単位処理時間「T」を示す。
ここで、実行時間管理テーブル32に含まれる「実行時間とデータ量との関係」32bを示す関係式について、図4を参照しながら説明する。図4は、実行時間とデータ量との関係を説明する図である。図4に示すように、「実行時間とデータ量との関係」32bを示す関係式は、ジョブ名32aにて示されるバッチジョブがデータ量32dにて示されるデータ量のデータを処理した際の実行時間32tによって求められる。
まず、ジョブ特性特定部21によるジョブ特性特定処理前に、図示しない事前処理部が、所定の実行サーバSで、処理されるデータ量32dを複数回にわたって変えながらバッチジョブを実行し、データ量32dに応じた実行時間32tをログに格納する。なお、実行時間管理テーブル32の「実行時間とデータ量との関係」32bは、ジョブ実行時間算出部21b以降で相関関係を算出する際に用いられる重要な情報である。そのため、「実行時間とデータ量との関係」32bを導出する情報を取得する実行サーバSは、計算機リソースの圧迫のない状態、すなわち実行中又は実行待ちのジョブが全くない状態で処理されることが望ましい。
また、事前処理部は、処理されるデータのデータ量32dに対する実行時間32tの平均値を算出する。そして、事前処理部は、データ量32dが1GB当たりの実行時間の平均値を単位処理時間「T」として算出する。さらに、事前処理部は、データ量32dに対する実行時間32t及び単位処理時間「T」から「実行時間とデータ量との関係」32bを示す関係式を求める。
例えば、ジョブ名32「J001」のバッチジョブでは、データ量32d「1」GBを処理する実行時間32tの平均値は「3」であり、「3」が単位処理時間「T」となる。また、ジョブ名32「J001」のバッチジョブでは、データ量32d「2」GBを処理する実行時間32tの平均値が「12」である。したがって、データ量32d「2」GBを処理する実行時間32tの平均値「12」及び単位処理時間「T」(T=3)からデータ量「d」に対応する実行時間「t」は、「t=2d×T」32b1と求められる。この式が、ジョブ名32a「J001」のバッチジョブの「実行時間とデータ量との関係」32bを示す関係式となる。同様に、ジョブ名32a「J002」のバッチジョブの「実行時間とデータ量との関係」32bを示す関係式は、「t=d×T」32b2と求められる。
この「実行時間とデータ量との関係」32bを用いて、ジョブ実行時間算出部21bは、所定データ量当たりの処理に要した実行時間を算出する。すなわち、ジョブ実行時間算出部21bは、実行要求ジョブに対する「実行時間とデータ量との関係」32bを示す計算式を実行時間管理テーブル32から抽出する。そして、ジョブ実行時間算出部21bは、抽出した計算式に実行要求ジョブの「総実行時間」及び処理データの「データ量」を代入することで所定データ量当たりの処理に要した実行時間を算出する。
例えば、実行要求ジョブの「実行時間とデータ量との関係」32bを示す計算式が「t=2d×T」である場合について説明する。計算式「t=2d×T」から単位処理時間「T」は、「T=t/2d」で表される。ジョブ実行時間算出部21bは、「T=t/2d」の処理実行時間「t」に実行要求ジョブの「総実行時間」を代入し、処理データ量「d」に処理データの「データ量」を代入して、単位処理時間「T」を算出する。
また、ジョブ実行時間算出部21bは、算出した単位処理時間「T」を、実行要求ジョブ名と実行要求ジョブが何回目に実行されたものかがわかる実行回数とともに、実行時間情報蓄積テーブル33に格納する。
ここで、実行時間情報蓄積テーブル33について図5を参照しながら説明する。図5は、実行時間情報蓄積テーブル33のデータ構造の一例を示す図である。図5に示すように、実行時間情報蓄積テーブル33は、複数のジョブ毎に、ジョブ名33aと、実行回数33bと、「所定データ量当たりのジョブの実行時間」33cと、リソースA、リソースB及びリソースCに依存した処理の実行時間33d〜fとを対応付けて記憶する。なお、例えば、リソースAとはCPUリソースであり、リソースBとはI/Oリソースであり、リソースCとはメモリリソースである。
ジョブ名33aは、バッチジョブの名称であり、実行要求ジョブ名が記憶される。実行回数33bは、ジョブ名33aが示すバッチジョブが実行された回数であり、1から連続した番号となる。「所定データ量当たりのジョブの実行時間」33cは、バッチジョブが所定データ量(1GB)を処理した際の処理時間であり、ジョブ実行時間算出部21bにて算出された単位処理時間「T」である。
「リソースAに依存した処理の実行時間」33dは、バッチジョブの起動時に動作する制御プログラムpにおいてリソースAに依存した処理に要した処理時間であり、リソース依存処理実行時間算出部21aにて算出された実行時間である。「リソースBに依存した処理の実行時間」33eは、バッチジョブの起動時に動作する制御プログラムpにおいてリソースBに依存した処理に要した処理時間であり、リソース依存処理実行時間算出部21aにて算出された実行時間である。「リソースCに依存した処理の実行時間」33fは、バッチジョブの起動時に動作する制御プログラムpにおいてリソースCに依存した処理に要した処理時間であり、リソース依存処理実行時間算出部21aにて算出された実行時間である。
例えば、符号r1では、ジョブ名33a「J001」の2回目の実行時において、所定データ量当たりの実行時間として算出された「3.2」秒が記憶され、リソースAに依存した処理の実行時間として算出された「0.012」秒が記憶される。また、リソースBに依存した処理の実行時間として算出された「0.082」秒が記憶され、リソースCに依存した処理の実行時間として算出された「0.022」秒が記憶される。
ここで、制御プログラムpの計算機リソースに依存した処理に要した実行時間と、バッチジョブの実行時間とについて、図6を参照しながら説明する。図6は、制御プログラムp及びジョブの実行時間の関係を示す説明図である。図6に示すように、例えば実行サーバSに対して、実行が要求された実行要求ジョブの起動要求がされると、実行サーバSでは、制御プログラムpが動作する。そして、実行サーバSでは、制御プログラムpのリソースAに依存した処理が実行時間「t1」で行われ、続いて、リソースBに依存した処理及びリソースCに依存した処理がそれぞれ実行時間「t2」、「t3」で行われる。その後、実行サーバSでは、制御プログラムpによって起動された実行要求ジョブが実行を開始して、実行時間「t4」で実行を終了する。
かかる実行時間「t1」、「t2」及び「t3」が、実行時間情報蓄積テーブル33の「リソースAに依存した処理の実行時間」33d、「リソースBに依存した処理の実行時間」33e及び「リソースCに依存した処理の実行時間」33fにそれぞれ格納される。また、実行時間「t4」に基づいて、実行時間管理テーブル32の「実行時間とデータ量との関係」32bを用いて求められた値が、実行時間情報蓄積テーブル33の「所定データ量当たりのジョブの実行時間」33cに格納される。
図2に戻って、相関関係算出部21cは、実行要求ジョブの起動時に動作する制御プログラムpにおいて計算機リソースに依存した処理に要した実行時間と、当該実行要求ジョブにおいて所定データ量当たりの処理に要した実行時間との相関関係を算出する。なお、計算機リソースに依存した処理に要した実行時間を「リソース実行時間」といい、所定データ量当たりの処理に要した実行時間を「単位処理時間」というものとする。
具体的には、相関関係算出部21cは、実行時間情報蓄積テーブル33に実行要求ジョブに関する情報が所定実行回数分記憶されている場合には、制御プログラムpの「リソース実行時間」について所定実行回数分の平均及び標準偏差を算出する。また、相関関係算出部21cは、実行要求ジョブの「単位処理時間」について所定実行回数分の平均及び標準偏差を算出する。また、相関関係算出部21cは、「リソース実行時間」の平均及び「単位処理時間」の平均を用いて、所定実行回数毎の「リソース実行時間」と「単位処理時間」との偏差積を算出し、算出した所定実行回数毎の偏差積から偏差積の平均を算出する。また、相関関係算出部21cは、算出した偏差積の平均を「リソース実行時間」の標準偏差と「単位処理時間」の標準偏差との積で割った値を相関係数として算出する。なお、所定実行回数とは、例えば100回であるが、これに限定されるものではない。
例えば、相関関係算出部21cは、制御プログラムpのCPUリソースに依存した処理、I/Oリソースに依存した処理及びメモリリソースに依存した処理の各「リソース実行時間」に関して、実行要求ジョブの「単位処理時間」との相関係数を算出する。
リソース特定部21dは、相関関係算出部21cによって算出された相関関係に基づいて、実行要求ジョブが依存する計算機リソースを特定する。具体的には、リソース特定部21dは、実行要求ジョブと制御プログラムpの計算機リソースに依存した処理との相関係数から相関の強弱を判定し、判定した相関の強弱に基づいて、計算機リソースに依存した処理との関係で実行要求ジョブを分類する。そして、リソース特定部21dは、分類した実行要求ジョブと分類結果(識別記号)とを相関関係管理テーブル34に格納する。
例えば、相関係数が±0.7〜±1.0の場合に、強い相関があるものとして識別記号を「S」(Strong)とする。相関係数が±0.4〜±0.7の場合に、中程度の相関があるものとして識別記号を「M」(Medium)とする。相関係数が±0.2〜±0.4の場合に、弱い相関があるものとして識別記号を「W」(Weak)とする。相関係数が±0.0〜±0.2の場合に、ほとんど相関がないものとして識別記号を「N」(None)とする。リソース特定部21dは、制御プログラムpのCPUリソースと実行要求ジョブとの相関係数が仮に「+0.8」であると、相関係数から相関の強弱を「S」と判定し、実行要求ジョブをCPUリソースとの関係で「S」に分類する。
また、リソース特定部21dは、分類結果(識別記号)に基づいて、実行要求ジョブが依存する計算機リソースを特定する。例えば、リソース特定部21dは、実行要求ジョブに対して識別記号が「S」又は「M」であるリソースを、実行要求ジョブが依存する計算機リソースとして特定する。
ここで、相関関係管理テーブル34について図7を参照しながら説明する。図7は、相関関係管理テーブル34のデータ構造の一例を示す図である。図7に示すように、相関関係管理テーブル34は、複数のジョブ毎に、バッチジョブのジョブ名34a、リソースAとの相関34b、リソースBとの相関34c及びリソースCとの相関34dを対応付けて記憶する。なお、例えば、リソースAとはCPUリソースであり、リソースBとはI/Oリソースであり、リソースCとはメモリリソースである。
「リソースAとの相関」34bは、ジョブ名34aによって示されるバッチジョブのリソースAとの相関の強弱を示し、上述した相関係数に基づいた識別記号によって表される。「リソースBとの相関」34cは、ジョブ名34aによって示されるバッチジョブのリソースBとの相関の強弱を示し、「リソースAとの相関」34bと同様に相関係数に基づいた識別記号によって表される。「リソースCとの相関」34dは、ジョブ名34aによって示されるバッチジョブのリソースCとの相関の強弱を示し、「リソースAとの相関」34bと同様に相関係数に基づいた識別記号によって表される。
例えば、ジョブ名34a「J001」のバッチジョブは、リソースAとの相関34bが「S」であるのでリソースAと強い相関がある。一方、ジョブ名34a「J001」のバッチジョブは、リソースB及びリソースCとの相関34c、34dがそれぞれ「N」であるのでこれらとはほとんど相関がない。その結果、ジョブ名34a「J001」が依存する計算機リソースは、リソースAとなる。
また、リソース特定部21dは、依存する計算機リソースが特定された実行要求ジョブを、排他制御の対象となるジョブとして決定する。具体的には、リソース特定部21dは、相関関係管理テーブル34に基づいて、実行要求ジョブと相関がある計算機リソースがあると判断される場合には、実行要求ジョブを排他制御の対象となるジョブとして決定する。例えば、実行要求ジョブと相関がある計算機リソースとは、相関関係管理テーブル34に記憶された実行要求ジョブに対する識別記号が「S」又は「M」である計算機リソースとする。
また、リソース特定部21dは、排他制御の対象となる実行要求ジョブを、依存する計算機リソースと対応付けて排他制御管理テーブル35に格納し、実行要求ジョブの起動要求をジョブ振分部22に出力する。ここで、排他制御管理テーブル35について図8を参照しながら説明する。図8は、排他制御管理テーブル35のデータ構造の一例を示す図である。図8に示すように、排他制御管理テーブル35は、複数のジョブ毎に、バッチジョブのジョブ名35a、リソースAへの依存35b、リソースBへの依存35c及びリソースCへの依存35dを対応付けて記憶する。
「リソースAへの依存」35bは、ジョブ名35aによって示されるバッチジョブのリソースAへの依存を示し、依存がある場合には「○」によって表される。すなわち、リソースAへの依存35bが「○」である場合には、ジョブ名35aによって示されるバッチジョブは、リソースAと同一の計算機リソースに依存するジョブと排他制御される対象となる。例えば、ジョブ名35a「J001」のバッチジョブは、リソースAへの依存があるので、リソースAと同一の計算機リソースに依存するジョブ「J659」と排他制御される。
「リソースBへの依存」35cは、ジョブ名35aによって示されるバッチジョブのリソースBへの依存を示し、依存がある場合には「○」によって表される。「リソースCへの依存」35dは、ジョブ名35aによって示されるバッチジョブのリソースCへの依存を示し、依存がある場合には「○」によって表される。
図2に戻って、サーバ選択順位決定部22aは、実行要求ジョブを実行させる実行サーバSの選択順位を、実行サーバSの多重度に基づいて決定する。なお、実行サーバSの多重度とは、実行サーバSにて実行中のジョブ数を実行可能な最大ジョブ数で割った割合を指す。具体的には、サーバ選択順位決定部22aは、自装置と接続された実行サーバSのうち多重度の低い実行サーバSから昇順に、実行サーバSの選択順位を決定する。つまり、実行サーバSの多重度が低いほど、実行サーバSの選択順位は上位となる。
排他制御対象ジョブ確認部22bは、選択順位に応じて選択される実行サーバSのうち、実行要求ジョブが依存する計算機リソースと同一の計算機リソースに依存するジョブが実行されていない実行サーバSを探索する。
具体的には、排他制御対象ジョブ確認部22bは、サーバ選択順位決定部22aによって決定された選択順位が上位の実行サーバSから順次実行サーバSを選択する。また、排他制御対象ジョブ確認部22bは、排他制御管理テーブル35から実行要求ジョブが依存する計算機リソースを抽出する。そして、排他制御対象ジョブ確認部22bは、選択した実行サーバSで、抽出した計算機リソースと同じ計算機リソースに依存するバッチジョブであって実行中又は実行待ちであるバッチジョブが存在するか否かを判定する。
そして、排他制御対象ジョブ確認部22bは、実行要求ジョブと同じ計算機リソースに依存するバッチジョブであって実行中又は実行待ちであるバッチジョブが存在する場合には、次の選択順位の実行サーバSを選択する。一方、排他制御対象ジョブ確認部22bは、実行要求ジョブと同じ計算機リソースに依存するバッチジョブであって実行中又は実行待ちであるバッチジョブが存在しない場合には、実行サーバSの探索を終了する。
ジョブ投入部22cは、実行要求ジョブが依存する計算機リソースと同一の計算機リソースに依存するジョブが実行されていない実行サーバSが探索された場合には、探索された全ての実行サーバSの待ち行列に実行要求ジョブを投入する。そして、ジョブ投入部22cは、実行要求ジョブが投入された全ての実行サーバSの実行要求ジョブを実行保留状態にする。
例えば、選択順位が最上位から数えて第3位に該当する実行サーバSで、実行要求ジョブと同じ計算機リソースに依存するバッチジョブが実行されていないものとする。この場合には、ジョブ投入部22cは、選択順位の最上位である第1位から第3位までの実行サーバSに、実行要求ジョブを投入する。
ジョブ実行監視部22dは、実行要求ジョブが投入された全実行サーバSを監視し、これら全実行サーバSのうち当該実行要求ジョブと同一の計算機リソース依存のバッチジョブが完全に不存在となった最初の実行サーバSを検知する。そして、ジョブ実行監視部22dは、検知された実行サーバSの実行要求ジョブを実行保留状態から実行可能状態(実行待ち)に状態を遷移させる。
ジョブ削除部22eは、ジョブ実行監視部22dによって実行要求ジョブが最初に実行可能状態(実行待ち)となった実行サーバS以外の実行サーバSから実行要求ジョブを削除する。その結果、その後、実行要求ジョブは、最初に実行可能状態(実行待ち)となった実行サーバSの制御プログラムpによって起動され、実行可能状態(実行待ち)から実行中に状態を遷移する。
例えば、ジョブ投入部22cが、選択順位の上位から第3位までの実行サーバSに実行要求ジョブを投入したとする。この場合には、上位の実行サーバSで実行要求ジョブと同一の計算機リソース依存のジョブが実行されていても、選択順位が第3位の実行サーバSが最初に実行可能状態になると、第3位の実行サーバSで実行要求ジョブが実行される。一方、上位の実行サーバSで実行要求ジョブと同一の計算機リソース依存のジョブが実行されていても、実行されていたジョブが早期に終了し最初に実行可能状態になれば第1位又は第2位の上位の実行サーバSで実行要求ジョブが実行される。
[実施例2に係るジョブ特性特定処理の処理手順]
次に、実施例2に係るジョブ特性特定処理の処理手順を、図9を参照して説明する。図9は、ジョブ特性特定処理に関するジョブ振分装置の処理動作を示すフローチャートである。なお、実行時間履歴テーブル31は、バッチジョブ(実行要求ジョブ)の起動時に動作する制御プログラムp及び実行要求ジョブによってあらかじめ作成されているものとする。
まず、リソース依存処理実行時間算出部21aは、バッチジョブの実行要求がされたか否かを判定する(ステップS11)。そして、リソース依存処理実行時間算出部21aは、バッチジョブの実行要求がされていない場合には(ステップS11No)、バッチジョブの実行要求を待ち合わせる。
一方、リソース依存処理実行時間算出部21aは、バッチジョブの実行要求がされた場合には(ステップS11Yes)、バッチジョブ(実行要求ジョブ)の起動時に動作する制御プログラムpにおいて計算機リソースに依存した処理に要した実行時間を算出する(ステップS12)。具体的には、リソース依存処理実行算出部21aは、実行時間履歴テーブル31を用いて、制御プログラムpにおいて互いに異なる計算機リソースに依存した処理毎の実行時間を算出する。例えば、リソース依存処理実行時間算出部21aは、制御プログラムpのCPUリソースに依存した処理、I/Oリソースに依存した処理及びメモリリソースに依存した処理の各実行時間を算出する。
そして、リソース依存処理実行算出部21aは、算出した各計算機リソースに依存した処理の実行時間を、実行要求ジョブ名及び実行回数とともに、実行時間情報蓄積テーブル33に格納する(ステップS13)。
また、ジョブ実行時間算出部21bは、制御プログラムpの動作完了直後に動作する実行要求ジョブにおいて所定データ量当たりの処理に要した実行時間(単位処理時間)を算出する(ステップS14)。具体的には、ジョブ実行時間算出部21bは、実行時間履歴テーブル31を用いて実行要求ジョブの処理に要した総実行時間を算出する。そして、ジョブ実行時間算出部21bは、算出した実行要求ジョブの処理に要した総実行時間、処理データのデータ量及び実行時間管理テーブル32を用いて、所定データ量当たりの実行時間(単位処理時間)を算出する。
そして、ジョブ実行時間算出部21bは、算出した所定データ量当たりの実行時間(単位処理時間)を、実行要求ジョブ名及び実行回数とともに、実行時間情報蓄積テーブル33に格納する(ステップS15)。
続いて、相関関係算出部21cは、実行要求ジョブに関する情報が実行時間情報蓄積テーブル33に所定実行回数分記憶されているか否かを判定する(ステップS16)。なお、所定実行回数とは、例えば100回であるが、これに限定されるものではない。
そして、相関関係算出部21cは、実行要求ジョブに関する情報が所定実行回数分記憶されていない場合には(ステップS16No)、実行要求ジョブが依存する計算機リソースを特定するには情報量が不足していると判断して、ステップS21に遷移する。
一方、相関関係算出部21cは、実行要求ジョブに関する情報が所定実行回数分記憶されている場合には(ステップS16Yes)、以下の処理を行う。相関関係算出部21cは、制御プログラムpにおいて計算機リソースに依存した処理に要した実行時間と実行要求ジョブにおいて所定データ量当たりの処理に要した実行時間(単位処理時間)との相関係数を算出する(ステップS17)。例えば、相関関係算出部21cは、制御プログラムpのCPUリソースに依存した処理、I/Oリソースに依存した処理及びメモリリソースに依存した処理の各リソース実行時間に関して、実行要求ジョブの「単位処理時間」との相関係数を算出する。
そして、リソース特定部21dは、相関関係算出部21cによって算出された相関係数から相関の強弱を判定し、判定した相関の強弱に基づいて、計算機リソースに依存した処理との関係で実行要求ジョブを分類する(ステップS18)。
そして、リソース特定部21dは、分類結果(識別記号)に基づいて、実行要求ジョブが依存する計算機リソースを特定する(ステップS19)。
さらに、リソース特定部21dは、依存する計算機リソースが特定された実行要求ジョブを、排他制御の対象となるジョブとして決定し、決定した実行要求ジョブを依存する計算機リソースと対応付けて排他制御管理テーブル35に格納する(ステップS20)。
そして、リソース特定部21dは、実行要求ジョブの起動要求をジョブ振分部22に出力する(ステップS21)。
なお、上述したジョブ特性特定処理では、リソース依存処理実行時間算出部21aにて行われる実行時間の算出処理(ステップS12〜S13)の後に、ジョブ実行時間算出部21bにて行われる実行時間の算出処理(ステップS14〜S15)を行った。しかし、リソース依存処理実行時間算出部21aにて行われる実行時間の算出処理及びジョブ実行時間算出部21bにて行われる実行時間の算出処理の順序を逆にしても良いし、並列して行なうようにしても良い。
[実施例2に係るジョブ振分処理の処理手順]
次に、実施例2に係るジョブ振分処理の処理手順を、図10を参照して説明する。図10は、ジョブ振分処理に関するジョブ振分装置の処理動作を示すフローチャートである。
まず、サーバ選択順位決定部22aは、バッチジョブの起動要求がされたか否かを判定する(ステップS31)。そして、サーバ選択順位決定部22aは、バッチジョブの起動要求がされていない場合には(ステップS31No)、バッチジョブの起動要求を待ち合わせる。
一方、サーバ選択順位決定部22aは、バッチジョブの起動要求がされた場合には(ステップS31Yes)、自装置と接続された実行サーバSのうち多重度の低い実行サーバSから昇順に、実行サーバSの選択順位を決定する(ステップS32)。つまり、実行サーバSの多重度が低いほど、実行サーバSの選択順位は上位となる。
そして、排他制御対象ジョブ確認部22bは、選択順位が最上位である第1位の実行サーバSを選択する(ステップS33)。また、排他制御対象ジョブ確認部22bは、排他制御管理テーブル35から実行要求ジョブが依存する計算機リソースを抽出する。
そして、排他制御対象ジョブ確認部22bは、選択した実行サーバSで、抽出した計算機リソースと同じ計算機リソースに依存するバッチジョブであって実行中又は実行待ちであるバッチジョブが存在するか否かを判定する(ステップS34)。
そして、排他制御対象ジョブ確認部22bは、抽出した計算機リソースと同じ計算機リソースに依存するバッチジョブであって実行中又は実行待ちであるバッチジョブが存在する場合には(ステップS34Yes)、現順位が最下位を示す最大順位であるか否かを判定する(ステップS35)。そして、排他制御対象ジョブ確認部22bは、現順位が最下位を示す最大順位でない場合には(ステップS35No)、次の順位の実行サーバSを選択して(ステップS36)、ステップS34に遷移する。
一方、排他制御対象ジョブ確認部22bは、実行要求ジョブが依存する計算機リソースと同じ計算機リソースに依存するバッチジョブであって実行中又は実行待ちであるバッチジョブが存在しない場合には(ステップS34No)には、以下の処理を行う。ジョブ投入部22cは、選択順位が第1位から現順位までの全ての実行サーバSの待ち行列に実行要求ジョブを投入し(ステップS37)、実行要求ジョブを実行保留状態にする(ステップS38)。また、排他制御対象ジョブ確認部22bは、現順位が最下位を示す最大順位である場合(ステップS35Yes)にも、選択順位が第1位から最大順位までの全ての実行サーバSに対して、同様の処理を行う。
続いて、ジョブ実行監視部22dは、実行要求ジョブが投入された全実行サーバSを監視し、これら全実行サーバSのうち当該実行要求ジョブと同一の計算機リソース依存のバッチジョブが完全に不存在となった最初の実行サーバSを検知する(ステップS39)。そして、ジョブ実行監視部22dは、実行要求ジョブが投入された全実行サーバSのうち当該実行要求ジョブと同一の計算機リソース依存のバッチジョブが完全に不存在となった最初の実行サーバSが無い場合には(ステップS39No)、待ち合わせる。
一方、ジョブ実行監視部22dは、実行要求ジョブが投入された全実行サーバSのうち当該実行要求ジョブと同一の計算機リソース依存のバッチジョブが完全に不存在となった最初の実行サーバSが有る場合には(ステップS39Yes)、以下の処理を行う。ジョブ実行監視部22dは、実行要求ジョブと同一の計算機リソース依存のバッチジョブが最初に完全に不存在となった実行サーバSの実行要求ジョブを実行保留状態から実行可能状態に状態を遷移させる(ステップS40)。
そして、ジョブ削除部22eは、ジョブ実行監視部22dによって実行要求ジョブが最初に実行可能状態(実行待ち)となった実行サーバS以外の実行サーバSから実行要求ジョブを削除する(ステップS41)。
その後、実行要求ジョブは、最初に実行可能状態(実行待ち)となった実行サーバSの制御プログラムpによって起動され、実行可能状態(実行待ち)から実行中に状態を遷移する(ステップS42)。
[実施例2の効果]
上記実施例2によれば、ジョブ振分装置2は、実行が要求された実行要求ジョブの起動時に動作する制御プログラムpにおいて計算機リソースに依存した処理に要した実行時間と、制御プログラムpの動作完了直後に動作する実行要求ジョブにおいて所定データ量当たりの処理に要した実行時間を算出する。また、ジョブ振分装置2は、算出した計算機リソースに依存した処理に要した実行時間と、算出した実行要求ジョブの所定処理に要した実行時間との相関関係を算出する。そして、ジョブ振分装置2は、算出した相関関係に基づいて、実行要求ジョブが依存する計算機リソースを特定する。さらに、ジョブ振分装置2は、特定した計算機リソースと同一の計算機リソースに依存するジョブと、実行要求ジョブとの同時実行を排除すべく、自装置と接続されたいずれかの実行サーバSに実行要求ジョブを振り分ける。かかる構成によれば、ジョブ振分装置2は、実行要求ジョブの起動時に連動して動作した、計算機リソースに依存した処理及び実行要求ジョブに関するそれぞれの実行時間を算出するので、動作環境を同一とした双方の実行時間の相関関係を算出できる。すなわち、ジョブ振分装置2は、仮に、実行要求ジョブの所定データ量当たりの処理に要した実行時間の変動に応じて、計算機リソースに依存した処理に要した実行時間が変動をしていれば、双方の実行時間の相関が強いという相関関係を算出できる。その結果、ジョブ振分装置2は、算出した相関関係に基づいて、実行要求ジョブが計算機リソースに依存しているか否かを容易に識別できる。
その識別結果に基づいて、ジョブ振分装置2は、実行要求ジョブと同一の計算機リソースに依存するジョブと、実行要求ジョブとの同時実行を排除すべく、実行要求ジョブを実行サーバSに振り分ける。これにより、ジョブ振分装置2は、同一の計算機リソースに依存するジョブ間の排他制御を的確に行うことができる。さらに、ジョブ振分装置2は、同一の計算機リソースが競合することによる実行要求ジョブの実行遅延を回避できる。
また、実施例2によれば、相関関係算出部21cは、制御プログラムpにおいて計算機リソースに依存した処理に要した実行時間として、互いに異なる計算機リソースに依存した処理毎に要した実行時間を用いることとした。これにより、相関関係算出部21cは、実行要求ジョブと複数の計算機リソースとの関係で相関関係を算出することになるので、実行要求ジョブがどの計算機リソースに依存するのかを正確に識別できる。
また、実施例2によれば、相関関係算出部21cは、実行要求ジョブが所定回数動作した後に、所定回数分の制御プログラムp及び実行要求ジョブに関わる実行時間を用いて、相関関係を算出するものとした。これにより、相関関係算出部21cは、実行要求ジョブの所定回数の動作に応じた実行時間に基づいて相関関係を算出できるので、所定回数が多くなれば信頼性の高い相関関係を算出できる。
また、実施例2によれば、相関関係算出部21cが、CPU、I/O及びメモリを計算機リソースとする。これにより、相関関係算出部21cは、実行要求ジョブを実行する実行サーバSのハードウェア資源から実行要求ジョブがどの計算機リソースに依存するのかを総合的に評価できる。
また、実施例2によれば、サーバ選択順位決定部22aが、実行要求ジョブを実行させる実行サーバSの選択順位を、実行サーバSが実行しているジョブの多重度に基づいて決定する。そして、排他制御対象ジョブ確認部22bが、決定された選択順位に応じて選択された実行サーバSのうち、実行要求ジョブが依存する計算機リソースと同一の計算機リソースに依存するジョブが実行されていない実行サーバSを探索する。そして、ジョブ投入部22cが、実行要求ジョブと同一の計算機リソースに依存するジョブが実行されていない実行サーバSが探索された場合には、当該実行サーバSの選択順位までの全ての実行サーバSの待ち行列に実行要求ジョブを投入する。そして、ジョブ削除部22eが、ジョブ投入部22cによって実行要求ジョブが投入された実行サーバSのうち、実行要求ジョブが最初に実行可能となった実行サーバS以外の実行サーバSから実行要求ジョブを削除する。これにより、仮に実行要求ジョブと同一の計算機リソースに依存するジョブが、多重度の小さい上位の実行サーバSで長期間実行されていても、多重度の大きい下位の実行サーバSで先行して終了すれば、先行して終了した実行サーバSで実行要求ジョブを確実に実行できる。
また、実施例2によれば、実行要求ジョブの起動時に動作した制御プログラムpは、実行要求ジョブを起動するプログラムである。これにより、制御プログラムpは、実行要求ジョブを起動するプログラムであり、実行要求ジョブを実行させる必要不可欠なプログラムであるので、実行サーバSの全体的な利用効率を下げないで、実行要求ジョブの実行タイミングを自己のプログラムとほぼ同時期にできる。その結果、実行要求ジョブは、実行要求ジョブと制御プログラムpとの相関関係を正確に求めることができる。
[排他制御管理テーブルの別の例]
ここで、排他制御管理テーブル35の別の例について図11を参照しながら説明する。図11は、排他制御管理テーブル35のデータ構造の別の例を示す図である。なお、図8に示す排他制御管理テーブル35と同一の構成については同一符号を付すことで、その重複する構成の説明については省略する。
図11に示す排他制御管理テーブル35が図8の排他制御管理テーブル35と異なるところは、符号r2に示すように、リソース(計算機リソース)への依存35b〜d毎に異なる排他用文字列が記憶されている点にある。この排他用文字列は、同一計算機リソースに依存するバッチジョブ同士を同じくした文字列であり、例えば乱数発生関数で発生させた値である。これにより、同一排他用文字列を持つバッチジョブ同士が同一計算機リソースに依存していることが識別できるので、これらバッチジョブ同士の同時実行を抑止できる。
例えば、ジョブ名35a「J001」及び「J659」は、共に計算機リソースAに依存し、計算機リソースAに依存することを識別する排他用文字列「#0293484883」を共通に持っている。ジョブ振分部22が、ジョブ名35a「J001」及び「J659」の特定文(例えば、「resource文」)に同じ排他用文字列「#0293484883」を設定するようにすれば、従来の排他制御技術によって、これらのバッチジョブの同時実行は抑止される。このため、ジョブ振分部22は、排他制御管理テーブル35を用いて、同一の計算機リソースに依存するバッチジョブ間の排他制御を的確に行うことができる。
[その他]
なお、上記実施例2では、ジョブ特性特定部21は、バッチジョブの実行要求のタイミングで、バッチジョブが依存する計算機リソースを特定するものとして説明した。しかし、これに限定されず、ジョブ特性特定部21は、例えば定期的又は不定期的に行われる各バッチジョブの特性を特定する旨の特性特定要求のタイミングで、各バッチジョブが依存する計算機リソースを特定するものとしても良い。
また、上記実施例2では、ジョブ振分部22は、ジョブ特性特定部21のリソース特定部21dから出力された実行要求ジョブの起動要求を取得するタイミングで動作するものとした。しかし、これに限定されず、ジョブ振分部22は、ジョブ特性特定部21と連動しないで、独立して動作することも可能である。すなわち、例えば、ジョブ振分部22は、バッチジョブの実行要求のタイミングで動作し、ジョブ特性特定部21と切り離して、動作するものとしても良い。この場合、ジョブ特定特定部21は、例えば前述したように、バッチジョブの特性を特定する旨の特性特定要求のタイミングで単独で動作するようにし、ジョブ振分部22の実行以前にあらかじめ動作するようにすれば良い。
また、上記実施例2では、相関関係算出部21cは、実行時間情報蓄積テーブル33に実行要求ジョブに関する情報が所定実行回数分記憶されている場合には、制御プログラムpと実行要求ジョブとの相関係数を算出するものとして説明した。この場合、相関関係算出部21cでは、初回は所定実行回数分の情報が記憶されたときこれらの情報を用いて算出するが、次回はさらに所定実行回数分の情報が記憶されたとき前回分と合わせた情報を用いて算出しても良い。これにより、相関関係算出部21cは、所定実行回数分の情報より多い情報を用いて相関係数を算出するので、算出された相関係数の信頼度を向上させることができる。
また、上記実施例2では、リソース依存処理実行時間算出部21aは、実行が要求された実行要求ジョブの起動時に動作する制御プログラムpにおいて、計算機リソースに依存した処理に要した実行時間を算出するものとして説明した。しかし、これに限定されず、リソース依存処理実行時間算出部21aは、実行が要求された実行要求ジョブの起動直前に動作する、計算機リソースに依存する処理の実行時間を測定する所定のプログラムにおいて、当該処理の実行時間を算出するものとしても良い。
また、このジョブ振分装置1、2は、既知のパーソナルコンピュータ、ワークステーションなどの情報処理装置に、上記したジョブ特性特定部21、ジョブ振分部22及び記憶部30の各機能を搭載することによって実現することができる。
また、図示した各装置の各構成要素は、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的態様は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。例えば、リソース依存処理実行時間算出部21aとジョブ実行時間算出部21bとを1つの部として統合しても良く、一方、相関関係算出部21cを、CPUリソースに依存した処理と実行要求ジョブとの相関関係を算出するCPUリソース相関関係算出部と、I/Oリソースに依存した処理と実行要求ジョブとの相関関係を算出するI/Oリソース相関関係算出部などとに分散しても良い。また、記憶部30をジョブ振分装置2の外部装置としてネットワーク経由で接続するようにしても良い。また、ジョブ特性特定部21、ジョブ振分部22を別の装置がそれぞれ有し、ネットワーク接続されて協働することで、上述したジョブ振分装置2の機能を実現するようにしても良い。
[プログラム]
また、上記実施例で説明した各種の処理は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータで実行することによって実現することができる。そこで、以下では、図12を用いて、図2に示したジョブ振分装置2と同様の機能を有するジョブ振分プログラムを実行するコンピュータの一例を説明する。
図12は、ジョブ振分プログラムを実行するコンピュータを示す図である。図12に示すように、コンピュータ1000は、RAM(Random Access Memory)1010と、キャッシュ1020と、HDD1030と、ROM(Read Only Memory)1040と、CPU(Central Processing Unit)1050、バス1060とを有する。RAM1010、キャッシュ1020、HDD1030、ROM1040、CPU1050は、バス1060によって接続されている。
ROM1040には、図2に示したジョブ振分装置2と同様の機能を発揮するジョブ振分プログラムが予め記憶されている。具体的には、ROM1040には、ジョブ特性特定プログラム1041と、ジョブ振分プログラム1042とが記憶されている。
そして、CPU1050は、これらのジョブ特性特定プログラム1041と、ジョブ振分プログラム1042とを読み出して実行する。これにより、図12に示すように、ジョブ特性特定プログラム1041は、ジョブ特性特定プロセス1051になり、ジョブ振分プログラム1042は、ジョブ振分プロセス1052になる。なお、ジョブ特性特定プロセス1051は、図2に示したジョブ特性特定部21に対応し、ジョブ振分プロセス1052は、図2に示したジョブ振分部22に対応する。
また、HDD1030には、図12に示すように振分制御関連情報1031が設けられる。振分制御関連情報1031は、例えば、図2に示した記憶部30に記憶される各種データ(実行時間履歴テーブル31、実行時間管理テーブル32、実行時間情報蓄積テーブル33、相関関係管理テーブル34、排他制御管理テーブル35及びジョブj1〜jm)に対応する。
なお、上述した各プログラム1041〜1042については、必ずしもROM1040に記憶させなくても良い。例えば、コンピュータ1000に挿入されるフレキシブルディスク(FD)、CD−ROM、MOディスク、DVDディスク、光磁気ディスク、ICカードなどの「可搬用の物理媒体」にプログラム1041〜1042を記憶させても良い。又は、コンピュータ1000の内外に備えられるハードディスクドライブ(HDD)などの「固定用の物理媒体」にプログラム1041〜1042を記憶させても良い。又は、公衆回線、インターネット、LAN、WANなどを介してコンピュータ1000に接続される「他のコンピュータ(又はサーバ)」にプログラム1041〜1042を記憶させても良い。そして、コンピュータ1000は、上述したフレキシブルディスクなどから各プログラムを読み出して実行するようにしても良い。
以上の実施例に係る実施形態に関し、さらに以下の付記を開示する。
(付記1)実行が要求された実行要求ジョブの起動時に動作するプログラムにおいて計算機リソースに依存した処理に要した実行時間と、前記プログラムの動作完了直後に動作する前記実行要求ジョブにおいて所定データ量当たりの処理に要した実行時間との相関関係を算出する相関関係算出部と、
前記相関関係算出部によって算出された相関関係に基づいて、前記実行要求ジョブが依存する計算機リソースを特定するリソース特定部と、
前記リソース特定部によって特定された計算機リソースと同一の計算機リソースに依存するジョブと、前記実行要求ジョブとの同時実行を排除すべく、自装置と接続されたいずれかの実行サーバに前記実行要求ジョブを振り分けるジョブ振分部と
を有することを特徴とするジョブ振分装置。
(付記2)前記相関関係算出部は、前記プログラムにおいて計算機リソースに依存した処理に要した実行時間として、互いに異なる計算機リソースに依存した処理毎に要した実行時間を用いることを特徴とする付記1に記載のジョブ振分装置。
(付記3)前記相関関係算出部は、前記実行要求ジョブが所定回数動作した後に、所定回数分の前記プログラム及び前記実行要求ジョブに関わる実行時間を用いて、前記相関関係を算出することを特徴とする付記1又は付記2に記載のジョブ振分装置。
(付記4)前記相関関係算出部は、CPU(Central Processing Unit)、I/O(Input/Output)及びメモリを前記計算機リソースとすることを特徴とする付記1から付記3のいずれか1つに記載のジョブ振分装置。
(付記5)前記ジョブ振分部は、
前記実行要求ジョブを実行させる実行サーバの選択順位を、各実行サーバが実行しているジョブの多重度に基づいて決定する選択順位決定部と、
前記選択順位決定部によって決定された選択順位に応じて選択された実行サーバのうち、前記実行要求ジョブが依存する計算機リソースと同一の計算機リソースに依存するジョブが実行されていない実行サーバを探索するサーバ探索部と、
前記サーバ探索部によって前記実行要求ジョブが依存する計算機リソースと同一の計算機リソースに依存するジョブが実行されていない実行サーバが探索された場合には、当該実行サーバの選択順位までの全ての実行サーバの待ち行列に前記実行要求ジョブを投入するジョブ投入部と、
前記ジョブ投入部によって前記実行要求ジョブが投入された実行サーバのうち、前記実行要求ジョブが最初に実行可能となった実行サーバ以外の実行サーバから前記実行要求ジョブを削除するジョブ削除部と
を有することを特徴とする付記1から付記4のいずれか1つに記載のジョブ振分装置。
(付記6)前記相関関係算出部は、前記実行要求ジョブの起動時に動作するプログラムとして、前記実行要求ジョブを起動するプログラムを用いることを特徴とする付記1から付記5のいずれか1つに記載のジョブ振分装置。
(付記7)実行が要求された実行要求ジョブの起動時に動作するプログラムにおいて計算機リソースに依存した処理に要した実行時間と、前記プログラムの動作完了直後に動作する前記実行要求ジョブにおいて所定データ量当たりの処理に要した実行時間との相関関係を算出する相関関係算出部と、
前記相関関係算出部によって算出された相関関係に基づいて、前記実行要求ジョブが依存する計算機リソースを特定するリソース特定部と
を有することを特徴とする計算機リソース特定装置。
(付記8)実行が要求された実行要求ジョブの起動時に動作するプログラムにおいて計算機リソースに依存した処理に要した実行時間と、前記プログラムの動作完了直後に動作する前記実行要求ジョブにおいて所定データ量当たりの処理に要した実行時間との相関関係を算出する相関関係算出手順と、
前記相関関係算出手順によって算出された相関関係に基づいて、前記実行要求ジョブが依存する計算機リソースを特定するリソース特定手順と、
前記リソース特定手順によって特定された計算機リソースと同一の計算機リソースに依存するジョブと、前記実行要求ジョブとの同時実行を排除すべく、自装置と接続されたいずれかの実行サーバに前記実行要求ジョブを振り分けるジョブ振分手順と
をコンピュータに実行させることを特徴とするジョブ振分プログラム。
(付記9)実行サーバにジョブを振り分けるジョブ振分装置のジョブ振分方法であって、
実行が要求された実行要求ジョブの起動時に動作するプログラムにおいて計算機リソースに依存した処理に要した実行時間と、前記プログラムの動作完了直後に動作する前記実行要求ジョブにおいて所定データ量当たりの処理に要した実行時間との相関関係を算出する相関関係算出工程と、
前記相関関係算出工程によって算出された相関関係に基づいて、前記実行要求ジョブが依存する計算機リソースを特定するリソース特定工程と、
前記リソース特定工程によって特定された計算機リソースと同一の計算機リソースに依存するジョブと、前記実行要求ジョブとの同時実行を排除すべく、自装置と接続されたいずれかの実行サーバに前記実行要求ジョブを振り分けるジョブ振分工程と
を含むことを特徴とするジョブ振分方法。
1、2 ジョブ振分装置
10 相関関係算出部
11 リソース特定部
12 ジョブ振分部
20 制御部
21 ジョブ特性特定部
21a リソース依存処理実行時間算出部
21b ジョブ実行時間算出部
21c 相関関係算出部
21d リソース特定部
22 ジョブ振分部
22a サーバ選択順位決定部
22b 排他制御対象ジョブ確認部
22c ジョブ投入部
22d ジョブ実行監視部
22e ジョブ削除部
30 記憶部
31 実行時間履歴テーブル
32 実行時間管理テーブル
33 実行時間情報蓄積テーブル
34 相関関係管理テーブル
35 排他制御管理テーブル
j1、jm ジョブ
S1、Sn ジョブ実行サーバ
p 制御プログラム

Claims (7)

  1. 実行が要求された実行要求ジョブの起動時に動作するプログラムにおいて計算機リソースに依存した処理に要した実行時間と、前記プログラムの動作完了直後に動作する前記実行要求ジョブにおいて所定データ量当たりの処理に要した実行時間との相関関係を算出する相関関係算出部と、
    前記相関関係算出部によって算出された相関関係に基づいて、前記実行要求ジョブが依存する計算機リソースを特定するリソース特定部と、
    前記リソース特定部によって特定された計算機リソースと同一の計算機リソースに依存するジョブと、前記実行要求ジョブとの同時実行を排除すべく、自装置と接続されたいずれかの実行サーバに前記実行要求ジョブを振り分けるジョブ振分部と
    を有することを特徴とするジョブ振分装置。
  2. 前記相関関係算出部は、前記プログラムにおいて計算機リソースに依存した処理に要した実行時間として、互いに異なる計算機リソースに依存した処理毎に要した実行時間を用いることを特徴とする請求項1に記載のジョブ振分装置。
  3. 前記相関関係算出部は、前記実行要求ジョブが所定回数動作した後に、所定回数分の前記プログラム及び前記実行要求ジョブに関わる実行時間を用いて、前記相関関係を算出することを特徴とする請求項1又は請求項2に記載のジョブ振分装置。
  4. 前記ジョブ振分部は、
    前記実行要求ジョブを実行させる実行サーバの選択順位を、各実行サーバが実行しているジョブの多重度に基づいて決定する選択順位決定部と、
    前記選択順位決定部によって決定された選択順位に応じて選択された実行サーバのうち、前記実行要求ジョブが依存する計算機リソースと同一の計算機リソースに依存するジョブが実行されていない実行サーバを探索するサーバ探索部と、
    前記サーバ探索部によって前記実行要求ジョブが依存する計算機リソースと同一の計算機リソースに依存するジョブが実行されていない実行サーバが探索された場合には、当該実行サーバの選択順位までの全ての実行サーバの待ち行列に前記実行要求ジョブを投入するジョブ投入部と、
    前記ジョブ投入部によって前記実行要求ジョブが投入された実行サーバのうち、前記実行要求ジョブが最初に実行可能となった実行サーバ以外の実行サーバから前記実行要求ジョブを削除するジョブ削除部と
    を有することを特徴とする請求項1から請求項3のいずれか1つに記載のジョブ振分装置。
  5. 前記相関関係算出部は、前記実行要求ジョブの起動時に動作するプログラムとして、前記実行要求ジョブを起動するプログラムを用いることを特徴とする請求項1から請求項4のいずれか1つに記載のジョブ振分装置。
  6. 実行が要求された実行要求ジョブの起動時に動作するプログラムにおいて計算機リソースに依存した処理に要した実行時間と、前記プログラムの動作完了直後に動作する前記実行要求ジョブにおいて所定データ量当たりの処理に要した実行時間との相関関係を算出する相関関係算出手順と、
    前記相関関係算出手順によって算出された相関関係に基づいて、前記実行要求ジョブが依存する計算機リソースを特定するリソース特定手順と、
    前記リソース特定手順によって特定された計算機リソースと同一の計算機リソースに依存するジョブと、前記実行要求ジョブとの同時実行を排除すべく、自装置と接続されたいずれかの実行サーバに前記実行要求ジョブを振り分けるジョブ振分手順と
    をコンピュータに実行させることを特徴とするジョブ振分プログラム。
  7. 実行サーバにジョブを振り分けるジョブ振分装置のジョブ振分方法であって、
    実行が要求された実行要求ジョブの起動時に動作するプログラムにおいて計算機リソースに依存した処理に要した実行時間と、前記プログラムの動作完了直後に動作する前記実行要求ジョブにおいて所定データ量当たりの処理に要した実行時間との相関関係を算出する相関関係算出工程と、
    前記相関関係算出工程によって算出された相関関係に基づいて、前記実行要求ジョブが依存する計算機リソースを特定するリソース特定工程と、
    前記リソース特定工程によって特定された計算機リソースと同一の計算機リソースに依存するジョブと、前記実行要求ジョブとの同時実行を排除すべく、自装置と接続されたいずれかの実行サーバに前記実行要求ジョブを振り分けるジョブ振分工程と
    を含むことを特徴とするジョブ振分方法。
JP2009283042A 2009-12-14 2009-12-14 ジョブ振分装置、ジョブ振分プログラム及びジョブ振分方法 Ceased JP2011123817A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2009283042A JP2011123817A (ja) 2009-12-14 2009-12-14 ジョブ振分装置、ジョブ振分プログラム及びジョブ振分方法
US12/966,883 US8533718B2 (en) 2009-12-14 2010-12-13 Batch job assignment apparatus, program, and method that balances processing across execution servers based on execution times

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009283042A JP2011123817A (ja) 2009-12-14 2009-12-14 ジョブ振分装置、ジョブ振分プログラム及びジョブ振分方法

Publications (1)

Publication Number Publication Date
JP2011123817A true JP2011123817A (ja) 2011-06-23

Family

ID=44144386

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009283042A Ceased JP2011123817A (ja) 2009-12-14 2009-12-14 ジョブ振分装置、ジョブ振分プログラム及びジョブ振分方法

Country Status (2)

Country Link
US (1) US8533718B2 (ja)
JP (1) JP2011123817A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017037533A (ja) * 2015-08-11 2017-02-16 日本電信電話株式会社 プロセッサ割り当て装置およびプロセッサ割り当て方法

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5512215B2 (ja) * 2009-09-30 2014-06-04 株式会社日立システムズ ジョブ処理システム及びその方法、そのプログラム
JP5388134B2 (ja) * 2010-08-06 2014-01-15 株式会社日立製作所 計算機システム、及び、移動データ決定方法
JP5099188B2 (ja) * 2010-08-18 2012-12-12 コニカミノルタビジネステクノロジーズ株式会社 処理順決定装置、処理順決定方法および処理順決定プログラム
ES2837458T3 (es) * 2011-06-28 2021-06-30 Amadeus Sas Método y sistema de procesamiento de datos para la modificación de bases de datos
EP2755133B1 (en) * 2013-01-10 2015-05-27 Fujitsu Limited Application execution controller and application execution method
US9256460B2 (en) 2013-03-15 2016-02-09 International Business Machines Corporation Selective checkpointing of links in a data flow based on a set of predefined criteria
US9401835B2 (en) * 2013-03-15 2016-07-26 International Business Machines Corporation Data integration on retargetable engines in a networked environment
US9323619B2 (en) 2013-03-15 2016-04-26 International Business Machines Corporation Deploying parallel data integration applications to distributed computing environments
US9477511B2 (en) 2013-08-14 2016-10-25 International Business Machines Corporation Task-based modeling for parallel data integration
WO2015184158A1 (en) 2014-05-28 2015-12-03 New Media Solutions, Inc. Generation and management of computing infrastructure instances
WO2015186191A1 (ja) * 2014-06-03 2015-12-10 株式会社日立製作所 データ管理システム及びデータ管理方法
JP6531473B2 (ja) * 2015-04-02 2019-06-19 富士通株式会社 管理支援プログラム、管理支援装置、及び管理支援方法
US10664324B2 (en) * 2018-05-30 2020-05-26 Oracle International Corporation Intelligent workload migration to optimize power supply efficiencies in computer data centers
RU2714219C1 (ru) 2018-09-14 2020-02-13 Общество С Ограниченной Ответственностью "Яндекс" Способ и система для планирования передачи операций ввода/вывода
RU2731321C2 (ru) 2018-09-14 2020-09-01 Общество С Ограниченной Ответственностью "Яндекс" Способ определения потенциальной неисправности запоминающего устройства
RU2718215C2 (ru) 2018-09-14 2020-03-31 Общество С Ограниченной Ответственностью "Яндекс" Система обработки данных и способ обнаружения затора в системе обработки данных
US10802874B1 (en) * 2018-09-26 2020-10-13 Vmware, Inc. Cloud agnostic task scheduler
RU2714602C1 (ru) 2018-10-09 2020-02-18 Общество С Ограниченной Ответственностью "Яндекс" Способ и система для обработки данных
RU2721235C2 (ru) 2018-10-09 2020-05-18 Общество С Ограниченной Ответственностью "Яндекс" Способ и система для маршрутизации и выполнения транзакций
RU2711348C1 (ru) 2018-10-15 2020-01-16 Общество С Ограниченной Ответственностью "Яндекс" Способ и система для обработки запросов в распределенной базе данных
US11075823B1 (en) 2018-10-31 2021-07-27 Vmware, Inc. Techniques for network packet event related script execution
RU2714373C1 (ru) 2018-12-13 2020-02-14 Общество С Ограниченной Ответственностью "Яндекс" Способ и система для планирования выполнения операций ввода/вывода
RU2749649C2 (ru) 2018-12-21 2021-06-16 Общество С Ограниченной Ответственностью "Яндекс" Способ и система для планирования обработки операций ввода/вывода
RU2720951C1 (ru) 2018-12-29 2020-05-15 Общество С Ограниченной Ответственностью "Яндекс" Способ и распределенная компьютерная система для обработки данных
RU2746042C1 (ru) 2019-02-06 2021-04-06 Общество С Ограниченной Ответственностью "Яндекс" Способ и система для передачи сообщения
US11347564B2 (en) * 2019-04-24 2022-05-31 Red Hat, Inc. Synchronizing batch job status across nodes on a clustered system
US11948010B2 (en) * 2020-10-12 2024-04-02 International Business Machines Corporation Tag-driven scheduling of computing resources for function execution
US11556425B2 (en) 2021-04-16 2023-01-17 International Business Machines Corporation Failover management for batch jobs

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS54118744A (en) 1978-03-08 1979-09-14 Nec Corp Job mix deciding device
US6889243B1 (en) * 1995-04-13 2005-05-03 Hitachi, Ltd. Job scheduling analysis method and system using historical job execution data
JP2002024194A (ja) * 2000-07-05 2002-01-25 Matsushita Electric Ind Co Ltd ジョブ分散処理方法および分散処理システム
TWI370979B (en) * 2004-05-14 2012-08-21 Ibm Grid computing system, information processing unit, job execution request generation unit, control method, program, and recording medium
JP4839585B2 (ja) * 2004-07-29 2011-12-21 日本電気株式会社 資源情報収集配信方法およびシステム
WO2006100752A1 (ja) * 2005-03-22 2006-09-28 Fujitsu Limited 分散処理管理装置、分散処理管理方法、分散処理管理プログラム
JP2007041720A (ja) * 2005-08-01 2007-02-15 Fujitsu Ltd ジョブステップ実行プログラムおよびジョブステップ実行方法
JP2007249491A (ja) * 2006-03-15 2007-09-27 Fujitsu Ltd マルチサーバ環境においてバッチジョブを分散させるプログラム、装置、および方法
JP2007264794A (ja) * 2006-03-27 2007-10-11 Fujitsu Ltd 並列分散処理プログラム及び並列分散処理システム
JP4308241B2 (ja) * 2006-11-10 2009-08-05 インターナショナル・ビジネス・マシーンズ・コーポレーション ジョブ実行方法、ジョブ実行システム及びジョブ実行プログラム
US8108845B2 (en) * 2007-02-14 2012-01-31 The Mathworks, Inc. Parallel programming computing system to dynamically allocate program portions
JP5018133B2 (ja) * 2007-02-27 2012-09-05 富士通株式会社 ジョブ管理装置、クラスタシステム、およびジョブ管理プログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017037533A (ja) * 2015-08-11 2017-02-16 日本電信電話株式会社 プロセッサ割り当て装置およびプロセッサ割り当て方法

Also Published As

Publication number Publication date
US20110145830A1 (en) 2011-06-16
US8533718B2 (en) 2013-09-10

Similar Documents

Publication Publication Date Title
JP2011123817A (ja) ジョブ振分装置、ジョブ振分プログラム及びジョブ振分方法
US10698712B2 (en) Methods and apparatus to manage virtual machines
US10826980B2 (en) Command process load balancing system
US9280331B2 (en) Hash-based change tracking for software make tools
US9483393B1 (en) Discovering optimized experience configurations for a software application
JP6972796B2 (ja) ソフトウェアサービス実行装置、システム、及び方法
US10013288B2 (en) Data staging management system
US20120150785A1 (en) Addressing system degradation by application disabling
US20170109257A1 (en) Use case driven stepping component automation framework
JP6666555B2 (ja) 情報処理装置、ジョブ投入方法、およびジョブ投入プログラム
US20130160009A1 (en) Control computer and method for deploying virtual machines
JP5799706B2 (ja) 検索要求処理装置
JP2016062582A (ja) 走査対象情報を走査する方法、装置、及びコンピュータデバイス
US10599472B2 (en) Information processing apparatus, stage-out processing method and recording medium recording job management program
US9864964B2 (en) Job monitoring support method and information processing apparatus
US20170235608A1 (en) Automatic response to inefficient jobs in data processing clusters
US10216505B2 (en) Using machine learning to optimize minimal sets of an application
JP6506773B2 (ja) 情報処理装置、方法およびプログラム
US9298517B2 (en) Exclusive control request allocation method and system
JP2020135683A (ja) 制御装置、及び制御プログラム
US11868791B2 (en) Method and system for determining the next state of application upgrades using a device emulation system of a customer environment
US11314752B2 (en) Computer system and data analysis method
JP2015075919A (ja) ファイル管理装置及びシステム並びにプログラム
JP7200659B2 (ja) 決定方法、決定装置及び決定プログラム
JP2008217299A (ja) ジョブネット実行システムおよびジョブネット実行方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120815

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130829

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130910

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131111

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140121

A045 Written measure of dismissal of application [lapsed due to lack of payment]

Free format text: JAPANESE INTERMEDIATE CODE: A045

Effective date: 20140527