JP5354033B2 - Job allocation program, method and apparatus - Google Patents

Job allocation program, method and apparatus Download PDF

Info

Publication number
JP5354033B2
JP5354033B2 JP2012000028A JP2012000028A JP5354033B2 JP 5354033 B2 JP5354033 B2 JP 5354033B2 JP 2012000028 A JP2012000028 A JP 2012000028A JP 2012000028 A JP2012000028 A JP 2012000028A JP 5354033 B2 JP5354033 B2 JP 5354033B2
Authority
JP
Japan
Prior art keywords
job
computer
notification
assignment
generated
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.)
Expired - Fee Related
Application number
JP2012000028A
Other languages
Japanese (ja)
Other versions
JP2012064249A (en
Inventor
武俊 吉田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
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 JP2012000028A priority Critical patent/JP5354033B2/en
Publication of JP2012064249A publication Critical patent/JP2012064249A/en
Application granted granted Critical
Publication of JP5354033B2 publication Critical patent/JP5354033B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Hardware Redundancy (AREA)
  • Multi Processors (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To enable flexible job assignment. <P>SOLUTION: This method assigns a job to each computer without managing a loaded condition of the each computer processing the job. Concretely, the method includes: a process for identifying computers having configuration necessary for processing a generated job; a process for identifying a job assignment aspect according to a current job generation state; a process for transmitting a job generation notice to at least one of the identified computers in accordance with the identified job assignment aspect; and a process for re-executing the transmission of the job generation notice to the computers having the configuration necessary for processing the generated job when a job acquisition rejection notice is received in response to the job generation notice. <P>COPYRIGHT: (C)2012,JPO&amp;INPIT

Description

本発明は、異なる構成を有する複数のコンピュータをネットワークで相互接続して利用する際のジョブ割当技術に関する。   The present invention relates to a job assignment technique used when a plurality of computers having different configurations are connected to each other via a network.

従来のグリッド・システムの多くはプッシュ(Push)型と呼ばれるジョブ(Job)割当方式を採用している。Push型のJob割当方式においては、特定のコンピュータが、Jobの生成、Jobを処理する他のコンピュータの処理負荷情報の管理、Jobの割り当てなどを一元的に行う。   Many conventional grid systems employ a job (Job) allocation method called a push type. In the push-type job allocation method, a specific computer centrally performs generation of jobs, management of processing load information of other computers that process jobs, allocation of jobs, and the like.

また、Pull型と呼ばれるJob取得方式もある。これは、Jobを生成するコンピュータと、それとは別にJobを取得し処理するコンピュータとの組み合わせにて実施される。そして、Jobを取得し処理するコンピュータは、それ自身の処理負荷管理を行い、その情報を基にJobの取得要求をJobを生成するコンピュータに送信し、取得可能ならば取得して処理し、結果をJobを生成するコンピュータに通知するというものである。   There is also a job acquisition method called pull type. This is implemented by a combination of a computer that generates a job and a computer that acquires and processes the job separately. Then, the computer that acquires and processes the job performs its own processing load management, and sends a job acquisition request to the computer that generates the job based on the information. Is notified to the computer that generates the job.

さらに、特開2005−352697号公報には、分割したジョブを複数のクライアントで分散処理させるときに、全体の処理時間を短縮するための技術が開示されている。具体的には、グリッドコンピューティングによって負荷分散処理が可能な画像形成システムにおいて、分割したジョブの数よりもクライアント装置の数が多い場合、ジョブスケジューラは、同じジョブを複数のクライアント装置に割り当て、同じジョブを割り当てられた複数のクライアント装置のうち、いずれかの装置で該ジョブが終了したときに、他のクライアント装置での該ジョブの実行を強制的に中止させるようになっている。しかしながら、クライアント装置ではジョブの割り当てを拒否することはできず、Push型のJob割当方式の変形となっている。   Furthermore, Japanese Patent Application Laid-Open No. 2005-352697 discloses a technique for reducing the overall processing time when a divided job is distributedly processed by a plurality of clients. Specifically, in an image forming system capable of load distribution processing by grid computing, when the number of client devices is larger than the number of divided jobs, the job scheduler assigns the same job to a plurality of client devices, and the same When the job is completed on any one of the plurality of client devices to which the job is assigned, the execution of the job on other client devices is forcibly stopped. However, the client apparatus cannot refuse job assignment, and is a modification of the push-type job assignment method.

また、特開2005−182796号公報には、グリッド・コンピューティング・システム上のデータ・オペレーションおよび実行資源の自律的管理のための技術が開示されている。具体的には、自律的管理装置が、モニタ・モジュール、ポリシー・モジュール、および調整モジュールを含む。モニタ・モジュールは、トリガ・イベントを求めてグリッド・コンピューティング・システムを監視するように構成される。ポリシー・モジュールは、複数のシステム・ポリシーのうちの1つにアクセスするように構成される。複数のシステム・ポリシーのそれぞれは、グリッド・コンピューティング・システムのシステム資源の動作制御パラメータに対応する。調整モジュールは、認識したトリガ・イベントに応答して、複数のシステム・ポリシーのうちの1つに従って、システム資源を自律的に調整するように構成される。本公報では、Job実行計算機の負荷情報を一元的に管理することが開示されているが、Jobの投入条件や投入の判断については述べられていない。   Japanese Patent Application Laid-Open No. 2005-182969 discloses a technique for autonomous management of data operations and execution resources on a grid computing system. Specifically, the autonomous management device includes a monitor module, a policy module, and a coordination module. The monitor module is configured to monitor the grid computing system for a trigger event. The policy module is configured to access one of a plurality of system policies. Each of the plurality of system policies corresponds to an operation control parameter of a system resource of the grid computing system. The coordination module is configured to autonomously adjust system resources according to one of a plurality of system policies in response to a recognized trigger event. This publication discloses that the load information of the job execution computer is managed in an integrated manner, but does not describe the job input condition and input determination.

さらに、特開2006−48273号公報には、グリッドコンピューティングによる負荷分散可能なシステムと、グリッドに対してジョブを依頼する画像形成装置から構成される、画像処理システムにおいてグリッドジョブを操作部から投入する際に、ユーザにとって柔軟にかつ容易な構成を提供するための技術が開示されている。具体的には、グリッドジョブを実行する際に、直ちにジョブの実行を要求する第1のモードか、後でジョブを実行してもかまわない第2のモードかを指定し、第2のモードの場合は、入力された画像を一旦保存し、ジョブの依頼が可能になったときに、保存した画像に対してグリッドを用いた処理を行う。グリッドジョブを実行する際に、グループ化したホストから最適なお薦めグリッドグループを選択し、選択されたグリッドグループを用いてグリッド処理を行う。しかし、本公報の技術は、ジョブをどのようなグループに割り当てるかに着目しており、クライアントによるJobの取得可否判断などについては考慮されていない。   Furthermore, Japanese Patent Laid-Open No. 2006-48273 discloses that a grid job is input from an operation unit in an image processing system including a system capable of distributing load by grid computing and an image forming apparatus that requests a job to the grid. In this regard, a technique for providing a flexible and easy configuration for the user is disclosed. Specifically, when the grid job is executed, the first mode in which the job execution is requested immediately or the second mode in which the job may be executed later is specified. In this case, the input image is temporarily saved, and when the job can be requested, the saved image is processed using the grid. When executing a grid job, an optimum recommended grid group is selected from the grouped hosts, and grid processing is performed using the selected grid group. However, the technology of this publication pays attention to what group a job is assigned to, and does not take into consideration whether a client can acquire a job.

特開2005−352697号公報JP 2005-352697 A 特開2005−182796号公報JP 2005-182796 A 特開2006−48273号公報JP 2006-48273 A

以上挙げた公開公報には上で述べたような問題がある。   The above-mentioned publications have the problems described above.

また、Push型のJob割当方法には、以下のような問題がある。すなわち、Jobが一旦コンピュータに割り当てられると、その処理が終了するか削除されない限り、そのコンピュータに留まり他のコンピュータがそのジョブを処理する事が出来ず、また、同じJobを同時に別々のコンピュータに処理させたとしても、その処理結果を管理するJobを新たに定義しなければならなかった。特に、より処理能力の高いコンピュータが空き状態になったにも関らず、遅いコンピュータで処理を継続するしかないため、全体の処理時間が短縮できないという問題があった。例えば、処理能力100を要するJob(A)が他のコンピュータが忙しく、処理能力10しかないコンピュータ(A)に割り当てられたとする。処理能力200のコンピュータ(B)が空き状態になったが、Job(A)は未だ30程度しか終わっていない場合、従来はそのままコンピュータ(A)で処理を継続するしかなかった。コンピュータ(A)で処理が30の時点でコンピュータ(B)に割り当てれば、コンピュータ(A)と較べ処理能力50のJobとして処理でき、コンピュータ(A)で残り処理70を処理する時間より短時間で処理できるはずであるが、そのような処理はできない。   In addition, the Push type job allocation method has the following problems. In other words, once a job is assigned to a computer, it cannot be processed by another computer unless the processing is completed or deleted, and another job cannot be processed by another computer, and the same job can be processed simultaneously by different computers. Even if it was made to do, the job which manages the processing result had to be newly defined. In particular, there is a problem that the entire processing time cannot be shortened because the processing must be continued on a slow computer even though a computer with higher processing capacity becomes empty. For example, suppose that Job (A) requiring processing capacity 100 is assigned to a computer (A) having only processing capacity 10 because other computers are busy. When the computer (B) with the processing capacity of 200 is in an empty state, but the job (Job A) has only been about 30, the computer (A) can only continue the processing in the past. If the computer (A) assigns the processing to the computer (B) at 30, it can be processed as a job with a processing capacity of 50 compared to the computer (A), and is shorter than the time for processing the remaining processing 70 in the computer (A). Should be able to handle it, but it cannot.

また別の問題として、コンピュータに障害が発生した場合、それを認識するまでに時間がかかり、その分Jobの割り当てが非効率になるという問題もある。Push型のJob割当方法は、一般的に、コンピュータの状態を一元的に管理している。その一般的な方法として各コンピュータからそれぞれの状態に関するデータを管理元に定期的に通知する方法が採用される。障害を早く検出するにはこの定期的な通知の間隔を短くすれば良いが、ネットワーク負荷が高くなり、また、通知元及び通知先のコンピュータの負荷も上がるという問題もある。   Another problem is that when a failure occurs in a computer, it takes time to recognize the failure, and job assignment becomes inefficient accordingly. The Push type job assignment method generally manages the state of a computer in an integrated manner. As a general method, a method of regularly notifying the management source of data relating to each state from each computer is adopted. In order to detect a failure early, the periodic notification interval may be shortened. However, there is a problem that the network load increases and the load on the notification source computer and the notification destination computer also increases.

一方、Pull型のJob割当方法においては、コンピュータの処理能力の一元的管理は行われておらず、各コンピュータのJob取得は各コンピュータのポリシーに任されており、Jobの要求する処理能力とコンピュータの処理能力との組み合わせが必ずしも適切に行われないという問題がある。例えば、Job数がコンピュータの数より多い場合においてJobの取得を各コンピュータのポリシーに全て任せてしまうと、同じJobを複数のコンピュータで取得してしまう場合や、コンピュータがまったく割り当てられないJobが発生してしまうという問題もある。   On the other hand, in the pull type job allocation method, centralized management of computer processing capacity is not performed, and job acquisition of each computer is left to the policy of each computer. There is a problem that the combination with the processing capability is not always appropriately performed. For example, if the number of jobs is greater than the number of computers, and if all the job acquisition is left to the policy of each computer, the same job may be acquired by a plurality of computers, or a job in which computers are not assigned at all will occur. There is also the problem of doing.

以上のように従来の方式では、Jobとコンピュータの状態に応じたフレキシブルなJob割当の切り替えができておらず、結果として処理時間が長くかかってしまうといった問題が生ずる場合がある。特に、Push型のJob割当方法及びPull型のJob割当方法の良い部分がうまく利用できていない。   As described above, in the conventional method, flexible job allocation switching according to the status of the job and the computer cannot be performed, and as a result, there may be a problem that it takes a long processing time. In particular, the good parts of the Push-type job assignment method and the Pull-type job assignment method have not been successfully used.

従って、本発明の目的は、フレキシブルなJob割当を可能とする新規な技術を提供することである。   Accordingly, an object of the present invention is to provide a novel technique that enables flexible job assignment.

また、本発明の他の目的は、処理時間の短縮を可能とする新規なJob割当技術を提供することである。   Another object of the present invention is to provide a new job assignment technique that can shorten the processing time.

さらに、本発明の他の目的は、Jobを処理するコンピュータの負荷状態を集中的に管理することなくJob等の状態に応じて動的にJobの割り当てを切り替えるための技術を提供することである。   Furthermore, another object of the present invention is to provide a technique for dynamically switching job allocation according to the status of the job or the like without centrally managing the load status of the computer that processes the job. .

本発明の第1の態様に係るジョブ割当方法は、ジョブを処理する各コンピュータの負荷状態を管理することなく当該各コンピュータにジョブを割り当てるジョブ割当方法であって、各コンピュータの構成のデータを格納するプロファイル管理データ格納部(例えば実施の形態におけるサーバプロファイル管理テーブル)を用いて、生成されたジョブの処理に必要な構成を有するコンピュータを特定する特定ステップと、ジョブの生成状態に対応してジョブに対するコンピュータの割当態様に関するデータ(例えば実施の形態におけるJob生成通知条件)を格納する割当態様データ格納部(例えば実施の形態におけるJob生成通知定義ファイル)を用いて、現在のジョブの生成状態に応じた、ジョブの割当態様を特定するステップと、特定された上記ジョブの割当態様に従って、特定ステップにおいて特定されたコンピュータのうち少なくともいずれかにジョブ生成通知を送信する送信ステップと、ジョブ生成通知に対する応答としてジョブ取得拒否通知を受信した場合、生成されたジョブの処理に必要な構成を有するコンピュータへのジョブ生成通知の送信を再実施する再送ステップとを含む。   A job assignment method according to a first aspect of the present invention is a job assignment method for assigning a job to each computer without managing the load state of each computer that processes the job, and storing data of the configuration of each computer Using a profile management data storage unit (for example, a server profile management table in the embodiment) to identify a computer having a configuration necessary for processing the generated job, and a job corresponding to the job generation state By using an allocation mode data storage unit (for example, job generation notification definition file in the embodiment) that stores data relating to a computer allocation mode (for example, job generation notification condition in the embodiment) according to the current job generation state Identifying the job assignment mode and According to the above job allocation mode, a transmission step for transmitting a job generation notification to at least one of the computers specified in the specific step and a job acquisition rejection notification as a response to the job generation notification are generated. A retransmission step for re-executing the transmission of the job generation notification to a computer having a configuration necessary for job processing.

このようにジョブを処理する各コンピュータの負荷状態を管理せずに、またジョブ割当通知ではなくジョブ生成通知を送付することによって、マスタコンピュータの処理負荷を削減することができる。なお、その結果として、ジョブ生成通知に対する応答としてジョブ取得拒否通知を受信することがあるが、その場合にはいずれかのコンピュータがジョブを取得するようにジョブ生成通知を送信する。また、ジョブの割当態様に従って、1又は複数のコンピュータにジョブ生成通知が送信されるので、フレキシブルなジョブ割当が行われる。   In this way, the processing load of the master computer can be reduced by not managing the load status of each computer that processes jobs and sending a job generation notification instead of a job allocation notification. As a result, a job acquisition rejection notification may be received as a response to the job generation notification. In this case, the job generation notification is transmitted so that one of the computers acquires the job. In addition, since the job generation notification is transmitted to one or a plurality of computers according to the job allocation mode, flexible job allocation is performed.

また、本発明の第1の態様において、ジョブ生成通知に対する応答としてジョブ取得通知を受信した場合には、生成されたジョブに対応してジョブ取得通知の送信元のコンピュータの識別情報をジョブ割当データ格納部(例えば実施の形態におけるJob割当管理テーブル)に登録するステップと、ジョブ割当データ格納部を検索して、処理結果が未登録のジョブを抽出するステップと、割当態様データ格納部を用いて、抽出時点のジョブの生成状態に応じた、ジョブの割当態様を特定するステップと、特定された上記ジョブの割当態様が処理結果が未登録のジョブにコンピュータの重複割当を許容するものである場合、処理結果が未登録のジョブの処理に必要な構成を有し且つ処理結果が未登録のジョブを現在処理しているコンピュータより性能が高いコンピュータへジョブ生成通知を送信するステップとをさらに含むようにしてもよい。   In the first aspect of the present invention, when the job acquisition notification is received as a response to the job generation notification, the identification information of the computer that is the transmission source of the job acquisition notification corresponding to the generated job is set as job allocation data. Registering in a storage unit (for example, job allocation management table in the embodiment), searching the job allocation data storage unit, extracting a job whose processing result is not registered, and using an allocation mode data storage unit The step of specifying the job assignment mode according to the job generation state at the time of extraction, and the specified job assignment mode allow duplicate assignment of computers to unregistered jobs A computer that has a configuration necessary for processing unregistered jobs and that is currently processing unregistered jobs. It may further include the step of transmitting the job generation notification performance to higher computer.

一旦ジョブを処理するコンピュータが決まったとしても、その後の状態変化に応じて再度コンピュータを割り当てれば、処理時間を短縮できる可能性があるためである。   This is because even if a computer that processes a job is decided once, if a computer is assigned again according to a subsequent state change, the processing time may be shortened.

また、上で述べたジョブの割当態様に関するデータが、ジョブの数がコンピュータの数以上である状態の場合には、同一ジョブに複数のコンピュータの割り当てを禁止し、ジョブの数がコンピュータの数未満である状態の場合には、同一ジョブに複数のコンピュータの割り当てを許容することを表すデータを含むようにしてもよい。繁忙に応じてコンピュータの重複割当の可否を判定するものである。   In addition, when the data related to the job assignment mode described above is in a state where the number of jobs is equal to or greater than the number of computers, the assignment of multiple computers to the same job is prohibited, and the number of jobs is less than the number of computers. In such a state, data representing that the assignment of a plurality of computers to the same job is allowed may be included. The computer determines whether or not the computer can be assigned in accordance with the busy schedule.

さらに、上で述べた再送ステップが、ジョブの割当態様が、生成されたジョブに1のコンピュータを割り当てることを示している場合、送信ステップ以降のステップ又は特定ステップで特定されたコンピュータの全てからジョブ取得拒否通知を受信した場合には特定ステップ以降のステップを実施するステップを含むようにしてもよい。なお、ジョブ取得拒否通知の受信は、所定期間内にジョブ取得通知を受信しない場合と等価とする場合もある。   Further, when the retransmission step described above indicates that the job assignment mode assigns one computer to the generated job, the job from all the computers specified in the steps after the transmission step or in the specific step When an acquisition refusal notification is received, a step of performing the steps after the specific step may be included. The reception of the job acquisition rejection notification may be equivalent to the case where the job acquisition notification is not received within a predetermined period.

また、上で述べた再送ステップが、ジョブの割当態様が、生成されたジョブに複数のコンピュータを割り当てることを示している場合、特定ステップで特定されたコンピュータの全てからジョブ取得拒否通知を受信した際には特定ステップ以降のステップを実施するステップを含むようにしてもよい。少なくとも1のコンピュータがジョブを処理するようにするためである。   In addition, when the retransmission step described above indicates that the job assignment mode assigns a plurality of computers to the generated job, a job acquisition rejection notice has been received from all of the computers specified in the specific step. In some cases, a step including steps after the specific step may be included. This is because at least one computer processes the job.

さらに、本発明の第1の態様において、生成されたジョブの優先度が所定の基準より高いか判断するステップと、生成されたジョブの優先度が所定の基準より高い場合には、ジョブの割当態様にかかわらず、特定ステップにおいて特定された複数のコンピュータにジョブ生成通知を送信する送信ステップとをさらに含むようにしてもよい。このようにすることによって、優先度の高いジョブは処理時間の短縮が見込める。   Further, in the first aspect of the present invention, the step of determining whether the priority of the generated job is higher than a predetermined reference, and if the priority of the generated job is higher than the predetermined reference, job assignment Regardless of the mode, a transmission step of transmitting a job generation notification to a plurality of computers specified in the specifying step may be further included. By doing so, it is possible to shorten the processing time of a high-priority job.

また、上で述べた特定ステップが、生成されたジョブで用いられるアプリケーションの実行数がライセンス総数より少ないか判断するステップと、生成されたジョブで用いられるアプリケーションの実行数がライセンス総数より少ないと判断された場合、当該アプリケーションがインストールされており且つ生成されたジョブの処理に必要な他の構成を有するコンピュータを特定するステップとを含むようにしてもよい。浮動ライセンスの場合にはこのように対処することができる。なお、固定ライセンスの場合にはコンピュータの構成で判断できる。   Also, the specific steps described above determine whether the number of applications executed in the generated job is less than the total number of licenses, and determine that the number of application executions used in the generated jobs is less than the total number of licenses. If so, it may include a step of identifying a computer having the application installed therein and having another configuration necessary for processing the generated job. This can be dealt with in the case of a floating license. In the case of a fixed license, it can be determined by the configuration of the computer.

また、生成されたジョブが、計算処理数が指定された多数決型のジョブである場合、各計算処理を1つのジョブとして取り扱うようにする場合もある。例えば、奇数個のジョブを生成し、それぞれについてコンピュータを割り当てれば、その結果を多数決で特定することができるようになる。   In addition, when the generated job is a majority type job in which the number of calculation processes is designated, each calculation process may be handled as one job. For example, if an odd number of jobs are generated and a computer is assigned to each job, the result can be specified by majority vote.

さらに、生成されたジョブが、計算処理数が無指定の多数決型のジョブである場合、ジョブの割当態様にかかわらず、特定ステップにおいて特定された所定数のコンピュータにジョブ生成通知を送信するステップをさらに含むようにしてもよい。   Further, when the generated job is a majority type job with an unspecified number of calculation processes, the step of transmitting a job generation notification to the predetermined number of computers specified in the specific step regardless of the job assignment mode. Further, it may be included.

本発明の第2の態様に係るジョブ割当方法は、各コンピュータの構成のデータを格納するプロファイル管理データ格納部を用いて、生成されたジョブの処理に必要な構成を有するコンピュータを特定する特定ステップと、ジョブの生成状態に対応してジョブに対するコンピュータの割当態様に関するデータを格納する割当態様データ格納部を用いて、現在のジョブの生成状態に応じた、ジョブの割当態様を特定するステップと、特定された上記ジョブの割当態様に従って、特定ステップにおいて特定されたコンピュータのうち少なくともいずれかにジョブ生成通知を送信する送信ステップと、ジョブ生成通知に対する応答としてジョブ取得通知を受信した場合には、生成されたジョブに対応してジョブ取得通知の送信元のコンピュータの識別情報をジョブ割当データ格納部に登録するステップと、ジョブ割当データ格納部を検索して、処理結果が未登録のジョブを抽出するステップと、割当態様データ格納部を用いて、抽出時点のジョブの生成状態に応じた、ジョブの割当態様を特定するステップと、特定された上記ジョブの割当態様が処理結果が未登録のジョブにコンピュータの重複割当を許容するものである場合、処理結果が未登録のジョブの処理に必要な構成を有し且つ処理結果が未登録のジョブを現在処理しているコンピュータより性能が高いコンピュータへジョブ生成通知を送信するステップとを含む。このようにジョブの割当態様を動的に切り替えて処理時間の短縮を図るものである。   The job assigning method according to the second aspect of the present invention uses a profile management data storage unit that stores data of the configuration of each computer to specify a computer having a configuration necessary for processing a generated job. Identifying a job assignment mode according to a current job generation state using an assignment mode data storage unit that stores data relating to a computer assignment mode for a job corresponding to the job generation state; According to the specified job allocation mode, a transmission step for transmitting a job generation notification to at least one of the computers specified in the specific step, and a job acquisition notification as a response to the job generation notification are generated. The computer from which the job acquisition notification is sent Information is registered in the job allocation data storage unit, the job allocation data storage unit is searched, a job whose processing result is not registered is extracted, and the allocation mode data storage unit is used to The step of specifying the job assignment mode according to the generation state, and if the specified job assignment mode allows the computer to be assigned to an unregistered job, the processing result is not registered. And a step of transmitting a job generation notification to a computer having a configuration necessary for the processing of the job and a higher performance than a computer currently processing a job whose processing result is not registered. In this way, the job allocation mode is dynamically switched to shorten the processing time.

なお、本方法をコンピュータに実行させるためのプログラムを作成することができ、このプログラムは、例えばフレキシブルディスク、CD−ROM、光磁気ディスク、半導体メモリ、ハードディスク等の記憶媒体又は記憶装置に格納される。また、ネットワークなどを介してデジタル信号として配信される場合もある。尚、中間的な処理結果はメインメモリ等の記憶装置に一時保管される。   A program for causing a computer to execute this method can be created, and this program is stored in a storage medium or storage device such as a flexible disk, a CD-ROM, a magneto-optical disk, a semiconductor memory, or a hard disk. . Moreover, it may be distributed as a digital signal via a network or the like. The intermediate processing result is temporarily stored in a storage device such as a main memory.

本発明によれば、フレキシブルなJob割当が可能となる。   According to the present invention, flexible job assignment is possible.

また、本発明の他の側面によれば、処理時間の短縮が可能となる。   According to another aspect of the present invention, the processing time can be shortened.

さらに、本発明の他の側面によれば、Jobを処理するコンピュータの負荷状態を集中的に管理することなくJob等の状態に応じて動的にJobの割り当てを切り替えることができるようになる。   Furthermore, according to another aspect of the present invention, job assignment can be dynamically switched according to the status of the job or the like without centrally managing the load status of the computer that processes the job.

本発明の実施の形態におけるシステムの概要図である。1 is a schematic diagram of a system in an embodiment of the present invention. ジョブ生成部の処理フローを示す図である。It is a figure which shows the processing flow of a job production | generation part. Job生成通知を送信する際の処理フローを示す図である。It is a figure which shows the processing flow at the time of transmitting the job production | generation notification. 各サーバの処理フローを示す図である。It is a figure which shows the processing flow of each server. Jobメンテナンス処理の処理フローを示す図である。It is a figure which shows the processing flow of a job maintenance process. アプリケーションのライセンスを考慮した場合の処理フローを示す図である。It is a figure which shows the processing flow at the time of considering the license of an application. アプリケーションのライセンスを考慮した場合の処理フローを示す図である。It is a figure which shows the processing flow at the time of considering the license of an application. 優先度に基づく切り替え処理の処理フローを示す図である。It is a figure which shows the processing flow of the switching process based on a priority. 多数決型Job生成処理の処理フローを示す図である。It is a figure which shows the processing flow of majority decision type | mold job generation processing. 多数決型Job通知処理の処理フローを示す図である。It is a figure which shows the processing flow of majority decision type | formula job notification process. サーバプロファイル管理テーブルの一例を示す図である。It is a figure which shows an example of a server profile management table. Job生成通知定義ファイルの一例を示す図である。It is a figure which shows an example of the job production | generation notification definition file. Job割当管理テーブルの一例を示す図である。It is a figure which shows an example of the job allocation management table. コンピュータの機能ブロックを示す図である。It is a figure which shows the functional block of a computer.

図1に本発明の一実施の形態におけるシステム概要を示す。例えば、ネットワーク11乃至13には、本実施の形態における主要な処理を実施するマスタコンピュータ3と、当該マスタコンピュータ3によって管理され且つJobの生成通知が送られるサーバA乃至Dとが接続される。ネットワーク11乃至13は、通信品質が一定でなく、また画一的でもないネットワークである。   FIG. 1 shows an outline of a system according to an embodiment of the present invention. For example, connected to the networks 11 to 13 are the master computer 3 that performs the main processing in the present embodiment and the servers A to D that are managed by the master computer 3 and that are notified of job generation. The networks 11 to 13 are networks whose communication quality is not constant and uniform.

各サーバは、CPU(Central Processing Unit)やメモリなどの使用率などを測定し、Job生成通知の諾否を判断する負荷管理部51と、負荷管理部51によるJob生成通知の諾否の基準に関するデータであるJob取得ポリシーを格納するJob取得ポリシー格納部52とを有する。各サーバは、異なる処理能力を有し、またOS(Operating System)やハードウエア・アーキテクチャも異なる。   Each server measures a usage rate of a CPU (Central Processing Unit), a memory, and the like, and determines whether the job generation notification is accepted or not, and data regarding the acceptance criterion of the job generation notification by the load management unit 51. A job acquisition policy storage unit 52 for storing a certain job acquisition policy. Each server has a different processing capability, and an OS (Operating System) and a hardware architecture are also different.

また、マスタコンピュータ3は、マスタコンピュータ3により管理される各サーバのプロファイル情報を格納するサーバプロファイル管理テーブル33と、Jobを生成する処理を行うJob生成部32と、Job生成部32により生成されたJobに関するデータを格納するJob割当管理テーブル37と、Job生成通知の通知態様を規定するJob生成通知定義ファイル35と、サーバプロファイル管理テーブル33とJob割当管理テーブル37とJob生成通知定義ファイル35と用いて適切なサーバにJob生成通知を行うJob生成通知処理部34と、各サーバからプロファイル情報を受信してサーバプロファイル管理テーブル33に格納するサーバプロファイル管理部31と、Job生成通知が通知されたサーバからデータを受信して必要に応じてJob割当管理テーブル37に登録するJob割当管理部36とを有する。Job割当管理部36とJob生成通知部34とは連携して動作する。   The master computer 3 is generated by a server profile management table 33 that stores profile information of each server managed by the master computer 3, a job generation unit 32 that performs a job generation process, and a job generation unit 32. A job allocation management table 37 for storing data related to jobs, a job generation notification definition file 35 that defines a notification mode of job generation notifications, a server profile management table 33, a job allocation management table 37, and a job generation notification definition file 35 are used. A job generation notification processing unit 34 that notifies a job generation notification to an appropriate server, a server profile management unit 31 that receives profile information from each server and stores it in the server profile management table 33, and a server that is notified of the job generation notification Data from Received as required and a Job allocation management unit 36 for registering the Job allocation management table 37. The job assignment management unit 36 and the job generation notification unit 34 operate in cooperation.

サーバプロファイル管理テーブル33は、図10Aに示すように、各サーバについて、Job生成通知の通知条件、OS、CPU種別、実行可能なアプリケーションなどの構成情報を格納する。特定のアプリケーションについて、システム全体で使用可能なライセンス数が決まっているが、当該ライセンス数を超えて当該特定のアプリケーションがサーバにインストールされている場合には、特定のアプリケーションについてのライセンス総数も、サーバプロファイル管理テーブル33において管理される。なお、本実施の形態では、マスタコンピュータ3による管理からはずれるサーバについては、サーバプロファイル管理テーブル33においてその項目が削除されるか又は無効化される。   As shown in FIG. 10A, the server profile management table 33 stores configuration information such as notification conditions for job generation notification, OS, CPU type, and executable application for each server. For a specific application, the number of licenses that can be used in the entire system is determined. If the number of licenses exceeds the number of licenses installed on the server, the total number of licenses for the specific application is also It is managed in the profile management table 33. In this embodiment, the server profile management table 33 deletes or invalidates a server that is not managed by the master computer 3.

Job生成通知定義ファイル35は、サーバへのJob生成通知条件を格納する。例えば、図10Bに示すように、Job割当管理テーブル37に登録されており且つ処理結果が未登録であるJob数がJobを割り当て可能なサーバ数以上である場合のJob生成通知の通知ポリシー(例えば全てのサーバに重複なしにJobを割り当てる)と、Job割当管理テーブル37に登録されており且つ処理結果が未登録であるJob数がJobを割り当て可能なサーバ数未満である場合のJob生成通知の通知ポリシー(例えば能力の低いサーバを2台残して可能であれば他の複数の空きサーバにJobを重複して割り当てる)とを格納する。なお、多数決型のJob(具体的には、計算結果が計算毎に異なり、多数決で計算結果を採用するようなJob)であって、Jobの割当が行われるべきサーバ数の指定がないJobの場合に用いられるデフォルトのサーバ数も格納されている。   The job generation notification definition file 35 stores job generation notification conditions to the server. For example, as shown in FIG. 10B, the notification policy (for example, job generation notification) when the number of jobs registered in the job allocation management table 37 and the processing result is unregistered is equal to or greater than the number of servers to which jobs can be allocated (for example, All jobs are assigned a job without duplication), and the number of jobs registered in the job assignment management table 37 and the unregistered processing result is less than the number of servers to which jobs can be assigned. The notification policy (for example, assigning jobs to a plurality of other free servers, if possible, leaving two low-capacity servers redundantly) is stored. It should be noted that a majority type job (specifically, a job in which the calculation result varies for each calculation and the calculation result is adopted in the majority vote), and the job number for which the job should be assigned is not specified. The default number of servers used in the case is also stored.

Job割当管理テーブル37は、Job生成部32によって生成されたJobのデータを図1に示すように木構造で管理する。図10Cに示すように、各Jobのデータは、Jobの処理内容(例えばCプログラム)、本Jobを取得しているサーバのリスト及びJobの状態、前後のJobID(Jobのリンク情報)、Jobの処理要件(例えばOS種別やCPU種別)、Jobの優先度、Job処理結果などを含む。Job処理結果は、処理が完了しなければ登録されない。   The job allocation management table 37 manages job data generated by the job generation unit 32 in a tree structure as shown in FIG. As shown in FIG. 10C, each job data includes job processing contents (for example, C program), a list of servers that have acquired this job, the job status, the job IDs before and after (Job link information), It includes processing requirements (for example, OS type and CPU type), job priority, job processing result, and the like. The job processing result is not registered unless the processing is completed.

次に、図1に示したシステムの処理内容について図2乃至図9を用いて説明する。まず、図2を用いてJob生成部32の処理について説明する。Job生成部32は、最初にユーザなどからの要求に応じてJobを1つ生成し(ステップS1)、Job割当管理テーブル37に、Jobの処理内容、Jobの処理要件及びJobの優先度などを含むJobの情報を登録する(ステップS3)。Jobに関連性がある場合には、前後のJobIDも登録する。そして、Job生成通知部34にJob(具体的にはJobID)を通知する(ステップS5)。その後、全てのJobが登録されたか判断する(ステップS7)。まだ登録すべきJobが存在している場合にはステップS1に戻り、全てのJobが登録された場合には、処理を終了する。Job生成自体は従来と同様であり、これ以上述べない。   Next, processing contents of the system shown in FIG. 1 will be described with reference to FIGS. First, the processing of the job generation unit 32 will be described with reference to FIG. The job generation unit 32 first generates one job in response to a request from a user or the like (step S1), and stores job processing contents, job processing requirements, job priority, and the like in the job allocation management table 37. The information of the job to be included is registered (step S3). If the job is related, the previous and next job IDs are also registered. Then, the job generation notification unit 34 is notified of job (specifically, job ID) (step S5). Thereafter, it is determined whether all jobs are registered (step S7). If there is still a job to be registered, the process returns to step S1, and if all jobs are registered, the process is terminated. Job generation itself is the same as the conventional one, and will not be described further.

次に、Jobをサーバに割り当てる際の処理について図3を用いて説明する。Job生成通知部34は、Job生成部32からJob生成の通知(JobIDの通知)を受信する(ステップS11)。そして、Job生成通知部34は、Job割当管理テーブル37から通知に係るJobの処理要件等を読み出す(ステップS13)。そして、サーバプロファイル管理テーブル33に対して、Jobの処理要件を満たすサーバを検索し、抽出する(ステップS15)。例えば、このステップにおいて複数のサーバを抽出しておく。なお、1つもサーバが抽出できない場合には、このステップでサーバが抽出されるようになるまで待機する。   Next, a process for assigning a job to a server will be described with reference to FIG. The job generation notification unit 34 receives a job generation notification (job ID notification) from the job generation unit 32 (step S11). Then, the job generation notification unit 34 reads out job processing requirements related to the notification from the job allocation management table 37 (step S13). Then, a server satisfying the job processing requirements is searched for and extracted from the server profile management table 33 (step S15). For example, a plurality of servers are extracted in this step. If no server can be extracted, the process waits until a server is extracted in this step.

その後、Job生成通知部34は、Job生成通知定義ファイル35から、サーバへのJob生成通知条件を読み出す(ステップS17)。上で述べたように、本実施の形態におけるJob生成通知定義ファイル35によれば、Job数がサーバ数以上か、Job数がサーバ数未満であるかで、Job割当の態様が異なる。   Thereafter, the job generation notification unit 34 reads the job generation notification condition to the server from the job generation notification definition file 35 (step S17). As described above, according to the job generation notification definition file 35 in the present embodiment, the mode of job allocation differs depending on whether the number of jobs is greater than or equal to the number of servers or less than the number of servers.

そして、Job生成通知部34は、Job生成通知条件に従って、ステップS15で抽出されたサーバにJob生成通知を送信する(ステップS19)。Job生成通知は、JobIDを含み、さらにJob実行に必要なデータ全てを含む。Job生成通知部34は、1のJobに複数のサーバを割り当てるようなJob生成通知条件が適用される場合(以下、ケースAと呼ぶ)には、ステップS15で抽出されたサーバのうちJob生成通知条件に従った数のサーバにJob生成通知を送信する。一方、Job生成通知部34は、1のJobに1のサーバを割り当てるようなJob生成通知条件が適用される場合(以下、ケースBと呼ぶ)には、ステップS15で抽出されたサーバのうち最も条件の良い1のサーバにJob生成通知を送信する。なお、Job生成通知部34は、Job生成通知の送信先サーバのIDなどをJob割当管理部36に出力しておく。   Then, the job generation notification unit 34 transmits the job generation notification to the server extracted in step S15 in accordance with the job generation notification condition (step S19). The job generation notification includes a job ID and further includes all data necessary for job execution. When the job generation notification condition that assigns a plurality of servers to one job is applied (hereinafter referred to as case A), the job generation notification unit 34 performs job generation notification among the servers extracted in step S15. The job generation notification is transmitted to the number of servers according to the condition. On the other hand, when the job generation notification condition that assigns one server to one job is applied (hereinafter referred to as case B), the job generation notification unit 34 is the most among the servers extracted in step S15. A job generation notification is transmitted to a server with good conditions. Note that the job generation notification unit 34 outputs the job generation notification transmission destination server ID and the like to the job allocation management unit 36.

Job生成通知を受信したサーバの処理については、図4Aを用いて説明する。まず、サーバの負荷管理部51は、Job生成通知を受信し(ステップS31)、Job取得ポリシー格納部52からJob取得ポリシーを読み出す(ステップS33)。さらに、負荷管理部51は、CPU使用率、メモリ使用率などの負荷指標を取得する(ステップS35)。本ステップの内容は従来技術と同様であるから、ここでは詳しく述べない。そして、取得した負荷指標がJob取得ポリシーに従っているか判断する(ステップS37)。例えば、CPU使用率が70%以下の時にJobを取得するといったJob取得ポリシーが規定されている場合には、CPU使用率が70%以下であるか判断する。取得した負荷指標がJob取得ポリシーに従っていないと判断された場合には、負荷管理部51は、JobIDを含むJob取得拒否通知をマスタコンピュータ3に送信する(ステップS39)。一方、取得した負荷指標がJob取得ポリシーに従っていると判断された場合には、負荷管理部51は、JobIDを含むJob取得通知をマスタコンピュータ3に送信する(ステップS41)。このような処理をJob生成通知を受信する毎に判断する。   The processing of the server that has received the job generation notification will be described with reference to FIG. 4A. First, the server load management unit 51 receives the job generation notification (step S31), and reads the job acquisition policy from the job acquisition policy storage unit 52 (step S33). Furthermore, the load management unit 51 acquires load indexes such as a CPU usage rate and a memory usage rate (step S35). Since the contents of this step are the same as in the prior art, they will not be described in detail here. Then, it is determined whether the acquired load index conforms to the job acquisition policy (step S37). For example, if a job acquisition policy is specified such that a job is acquired when the CPU usage rate is 70% or less, it is determined whether the CPU usage rate is 70% or less. When it is determined that the acquired load index does not comply with the job acquisition policy, the load management unit 51 transmits a job acquisition refusal notification including the Job ID to the master computer 3 (step S39). On the other hand, when it is determined that the acquired load index conforms to the job acquisition policy, the load management unit 51 transmits a job acquisition notification including the Job ID to the master computer 3 (step S41). Such processing is determined every time a job generation notification is received.

なお、負荷管理部51は、サーバプロファイル管理部31に対して、定期的に又は任意のタイミングで、自サーバがJobの割り当てを受けるか否か、プロファイル情報の更新の有無などについて通知する。サーバプロファイル管理部31は、負荷管理部51からの通知に従ってサーバプロファイル管理テーブル33を更新する。なお、サーバは、Job取得通知を送信した場合には、Jobの処理を開始し、処理が終了すれば、処理結果をJob割当管理部36に送信する。   Note that the load management unit 51 notifies the server profile management unit 31 whether or not the own server receives the job assignment, whether or not the profile information is updated, etc. at regular or arbitrary timing. The server profile management unit 31 updates the server profile management table 33 according to the notification from the load management unit 51. The server starts job processing when the job acquisition notification is transmitted, and transmits the processing result to the job assignment management unit 36 when the processing is completed.

図3の説明に戻って、Job割当管理部36は、サーバからJob取得通知又はJob取得拒否通知を受信し(ステップS21)、Job取得拒否通知を受信したか判断する(ステップS23)。ケースAの場合には、Job生成通知の全ての送信先サーバからJob取得拒否通知を受信したか判断する。ケースBの場合には、Job生成通知の送信先サーバからJob取得拒否通知を受信したか判断する。なお、所定時間内にJob取得通知又はJob取得拒否通知を受信しない場合も、Job取得拒否通知を受信したものとして取り扱う。Job取得拒否通知を受信した場合には、ステップS15で抽出された全てのサーバについて通知を行ったか判断する(ステップS25)。ケースAの場合、ステップS23でJob生成通知の全ての送信先サーバからJob取得拒否通知を受信したと判断されているので自動的にステップS15に移行する。一方、ケースBの場合、ステップS15で複数のサーバが抽出されれば、これまでにその全てにJob生成通知を送信したか判断する。   Returning to the description of FIG. 3, the job allocation management unit 36 receives a job acquisition notification or a job acquisition rejection notification from the server (step S21), and determines whether a job acquisition rejection notification is received (step S23). In case A, it is determined whether the job acquisition rejection notification has been received from all the transmission destination servers of the job generation notification. In case B, it is determined whether a job acquisition rejection notification has been received from the job generation notification transmission destination server. Note that even when the job acquisition notification or the job acquisition refusal notification is not received within the predetermined time, the job acquisition refusal notification is treated as being received. If a job acquisition rejection notification has been received, it is determined whether notification has been made for all servers extracted in step S15 (step S25). In case A, it is determined in step S23 that the job acquisition refusal notification has been received from all the destination servers for the job generation notification, and the process automatically proceeds to step S15. On the other hand, in case B, if a plurality of servers are extracted in step S15, it is determined whether the job generation notification has been transmitted to all of them.

Job生成通知を送信していないサーバが存在する場合にはステップS19に戻る。一方、Job生成通知を送信していないサーバが存在しない場合にはステップS15に戻る。このように、Job割当管理テーブル37において、サーバが割り当てられていないJobについては、繰り返しサーバプロファイル管理テーブル33を参照して少なくとも1のサーバが割り当てられるようにする。   If there is a server that has not transmitted the job generation notification, the process returns to step S19. On the other hand, if there is no server that has not transmitted the job generation notification, the process returns to step S15. As described above, in the job assignment management table 37, for a job to which no server is assigned, at least one server is assigned with reference to the server profile management table 33 repeatedly.

なお、一度Job取得拒否通知を送信してきたサーバについては、本処理フロー中では、再度Job生成通知を送信しないように管理しても良い。   Note that a server that has once transmitted a job acquisition refusal notification may be managed so that a job generation notification is not transmitted again during this processing flow.

一方、Job取得拒否通知ではなくJob取得通知を受信した場合には、Job割当管理部36は、Job割当管理テーブル37の該当JobのデータにJob取得サーバIDを登録する(ステップS27)。ケースAの場合、1のサーバからJob取得通知を受信した場合には、そのサーバのサーバIDを登録する。複数のサーバからJob取得通知を受信した場合には、それらのサーバの全てのサーバIDを登録する。ケースBの場合には、1のサーバにJobが割り当てられたことになるので、当該サーバのサーバIDを登録する。   On the other hand, when the job acquisition notification is received instead of the job acquisition rejection notification, the job allocation management unit 36 registers the job acquisition server ID in the data of the corresponding job in the job allocation management table 37 (step S27). In case A, when a job acquisition notification is received from one server, the server ID of that server is registered. When job acquisition notifications are received from a plurality of servers, all server IDs of those servers are registered. In case B, since Job is assigned to one server, the server ID of the server is registered.

このような処理を実施することによって、Job生成通知定義ファイル35に格納されているJob生成通知条件に応じたJob割当が行われるようになる。より具体的には、Job数が多い場合には、1のJobを1のサーバに割り当て、Job数が少ない場合には、1のJobを1以上のサーバに割り当てて、より早くJobの処理を完了したサーバの処理結果を採用することができるようになる。   By performing such processing, job allocation according to the job generation notification condition stored in the job generation notification definition file 35 is performed. More specifically, when the number of jobs is large, one job is assigned to one server, and when the number of jobs is small, one job is assigned to one or more servers, and the job processing is performed more quickly. The processing result of the completed server can be adopted.

また、Job生成通知に応じるか否かは、各サーバが自ら判断するため、マスタコンピュータ3では、各サーバの稼働状況を監視する必要がない。従って、マスタコンピュータ3の処理負荷が減少する。また、サーバに障害が発生した場合には、Job取得通知が返信されないため、他のサーバにJob生成通知を送り直すこととなる。   In addition, since each server determines whether or not to accept the job generation notification, the master computer 3 does not need to monitor the operation status of each server. Accordingly, the processing load on the master computer 3 is reduced. Further, when a failure occurs in the server, the job acquisition notification is not returned, so that the job generation notification is re-sent to another server.

但し、Jobは従来のような単純な割り当てではない。本実施の形態では、サーバが自らの負荷などに基づきJob生成通知に応じてJob取得通知を送信するかJob取得拒否通知を送信するか判断した結果として、Job割り当てが決定するという点において、Pull型のJob割り当てとなっている。   However, Job is not a simple assignment as in the past. In the present embodiment, the Pull assignment is determined as a result of determining whether the server transmits a job acquisition notification or a job acquisition refusal notification according to the job generation notification based on its own load. It is a type job assignment.

なお、サーバは、Jobの処理が完了すると、Jobの処理結果をJob割当管理部36に通知する。Job割当管理部36は、Jobの処理結果を該当するJobデータに登録する。また、Job割当管理部36は、当該Jobに複数のサーバが割り当てられている場合には、そのうちの1のサーバからJobの処理結果を受信すると、他のサーバについてJobの終了を通知するJob制御通知を送信し、該当サーバにJobの処理を終了させる。処理に割り当てたリソースが無駄になるためである。   When the job processing is completed, the server notifies the job allocation management unit 36 of the job processing result. The job assignment management unit 36 registers the job processing result in the corresponding job data. Further, when a plurality of servers are assigned to the job, the job assignment management unit 36 receives the job processing result from one of the servers, and performs job control for notifying the other server of the end of the job. The notification is transmitted, and the job processing is terminated at the corresponding server. This is because resources allocated to the processing are wasted.

また、上で述べた処理フローではケースAの場合でも最悪の場合1のサーバにしかJobが割り当てられない場合もある。このような状況を回避するため、2以上のサーバからJob取得通知を受信しない場合にはステップS23からステップS25に移行するようにしても良い。   In the processing flow described above, even in case A, the job may be assigned to only one server in the worst case. In order to avoid such a situation, when job acquisition notifications are not received from two or more servers, the process may proceed from step S23 to step S25.

また、図4Bに示すような処理も、図3及び図4Aのスレッドとは別スレッドで定期的に又は任意のタイミングで実行される。まず、Job生成通知部34は、Job割当管理テーブル37を検索し、処理未了のJobを抽出する(ステップS101)。処理結果が登録されていないJobを特定する。もし、処理未了のJobが存在する場合には、処理未了のJobのデータを読み出しておく。そして、処理未了のJobが存在するか判断し(ステップS103)、処理未了のJobが存在しない場合には、処理を終了する。一方、処理未了のJobが存在する場合には、Job生成通知部34は、Job割当管理テーブル37とサーバプロファイル管理テーブル33とを参照して、現在のJob割当状態を特定する(ステップS105)。すなわち、Job数とサーバ数とを特定する。そして、Job生成通知定義ファイル35に格納されているJob生成通知条件に基づき、1のJobに複数のサーバを割り当て可能な状態にあるか判断する(ステップS107)。上で述べた例では、Job数がサーバ数未満であれば1のJobに複数のサーバを割り当て可能である。Job数がサーバ数以上であるような1のJobに複数のサーバを割り当て不能な状態であれば、処理を終了する。   Also, the processing shown in FIG. 4B is executed periodically or at an arbitrary timing in a thread different from the threads in FIGS. 3 and 4A. First, the job generation notification unit 34 searches the job assignment management table 37 and extracts jobs that have not been processed (step S101). A job whose processing result is not registered is specified. If there is an unfinished job, the data of the unfinished job is read out. Then, it is determined whether there is an unfinished job (step S103). If there is no unfinished job, the process ends. On the other hand, when there is an unfinished job, the job generation notification unit 34 refers to the job allocation management table 37 and the server profile management table 33 to identify the current job allocation state (step S105). . That is, the number of jobs and the number of servers are specified. Then, based on the job generation notification conditions stored in the job generation notification definition file 35, it is determined whether a plurality of servers can be assigned to one job (step S107). In the example described above, if the number of jobs is less than the number of servers, a plurality of servers can be assigned to one job. If a plurality of servers cannot be assigned to one job such that the number of jobs is equal to or greater than the number of servers, the process ends.

そして、1のJobに複数のサーバを割り当て可能な状態であると判断された場合には、Job生成通知部34は、サーバプロファイル管理テーブル33を検索し、処理未了のJobの処理要件を満たし且つ当該Jobに割り当てられているサーバより高性能なサーバ(より条件の良いサーバ。具体的には、CPUの処理速度が速いなど。)を抽出する(ステップS109)。以下の処理は、ステップS101で複数のJobが抽出された場合には各Jobについて実施する。ステップS109でサーバが抽出できたか判断し(ステップS111)、抽出できなければ処理を終了する。一方、ステップS109でサーバが抽出できた場合には、Job生成通知部34は、抽出されたサーバにJob生成通知を送信する(ステップS113)。これに対してサーバは図4Aに示した処理を実施する。そうすれば、サーバは、Job取得通知又はJob取得拒否通知をマスタコンピュータ3に送信する。   If it is determined that a plurality of servers can be assigned to one job, the job generation notification unit 34 searches the server profile management table 33 and satisfies the processing requirements of the unfinished job. In addition, a server having a higher performance than the server assigned to the job (a server with better conditions. Specifically, the processing speed of the CPU is high) is extracted (step S109). The following processing is performed for each job when a plurality of jobs are extracted in step S101. In step S109, it is determined whether the server can be extracted (step S111). If the server cannot be extracted, the process ends. On the other hand, if the server can be extracted in step S109, the job generation notification unit 34 transmits a job generation notification to the extracted server (step S113). In response to this, the server performs the process shown in FIG. 4A. Then, the server transmits a job acquisition notification or a job acquisition rejection notification to the master computer 3.

マスタコンピュータ3のJob割当管理部36は、Job取得通知又はJob取得拒否通知をサーバから受信する(ステップS115)。そして、Job割当管理部36は、Job取得拒否通知を受信したか判断し(ステップS117)、Job取得拒否通知を受信した場合には、処理を終了する。一方、Job取得通知を受信した場合には、Job割当管理テーブル37の該当JobのデータにJob取得サーバのIDを登録する(ステップS119)。そして処理を終了する。   The job assignment management unit 36 of the master computer 3 receives a job acquisition notification or a job acquisition rejection notification from the server (step S115). Then, the job allocation management unit 36 determines whether or not a job acquisition refusal notification has been received (step S117). If a job acquisition refusal notification has been received, the job allocation management unit 36 ends the process. On the other hand, when the job acquisition notification is received, the ID of the job acquisition server is registered in the job data of the job allocation management table 37 (step S119). Then, the process ends.

このような処理を行うことによって、最初は能力の低いサーバしか割り当てられてられなかったが、その後Jobの数が減少したりサーバ数が増加するなどでサーバに余裕が生ずると、後からでも能力の高いサーバをそのJobに割り当てることによって、早期に処理結果を得られるようになる。なお、Jobを実施することとなったサーバがフリーズしたり、ネットワークがダウンした場合も対処可能となる。   By performing such a process, only servers with low capacity were initially allocated, but if there is room in the server due to a decrease in the number of jobs or an increase in the number of servers, the capacity can be increased later. By assigning a high server to the job, the processing result can be obtained early. Note that it is possible to cope with the case where the server that performs the job freezes or the network goes down.

次に、上で述べた処理の変形として、プログラムのライセンスをも考慮した場合の処理内容を説明する。第1の変形例として、サーバが特定のアプリケーションについて固定のライセンスを有する場合における処理を図5及び図6を用いて説明する。   Next, as a modification of the processing described above, processing contents when a program license is also considered will be described. As a first modification, processing when the server has a fixed license for a specific application will be described with reference to FIGS. 5 and 6.

まず、Job生成通知部34は、Job生成部32からJob生成の通知(JobIDの通知)を受信する(ステップS51)。そして、Job生成通知部34は、Job割当管理テーブル37から通知に係るJobの処理要件を読み出す(ステップS53)。そして、サーバプロファイル管理テーブル33に対して、Jobの処理要件を満たすサーバを検索し、抽出する(ステップS55)。例えば、このステップにおいて複数のサーバを抽出しておく。   First, the job generation notification unit 34 receives a job generation notification (job ID notification) from the job generation unit 32 (step S51). Then, the job generation notification unit 34 reads the job processing requirements related to the notification from the job allocation management table 37 (step S53). Then, a server that satisfies the processing requirements of Job is searched for and extracted from the server profile management table 33 (step S55). For example, a plurality of servers are extracted in this step.

さらに、Job生成通知部34は、Job割当管理テーブル37を参照して、ステップS55で抽出されたサーバのうち、ライセンスを保有し且つそのライセンスのプログラムを未実行であるサーバを特定する(ステップS57)。そして、Job生成通知部34は、Job生成通知定義ファイル35から、サーバへのJob生成通知条件を読み出す(ステップS59)。   Further, the job generation notification unit 34 refers to the job allocation management table 37 and identifies a server that has a license and has not yet executed the license program among the servers extracted in step S55 (step S57). ). Then, the job generation notification unit 34 reads out the job generation notification condition to the server from the job generation notification definition file 35 (step S59).

その後、Job生成通知部34は、Job生成通知条件に従って、ステップS57で特定されたサーバにJob生成通知を送信する(ステップS61)。Job生成通知は、JobIDを含み、さらにJob実行に必要なデータ全てを含む。Job生成通知部34は、ケースAの場合、ステップS57で特定されたサーバのうちJob生成通知条件に従った数のサーバにJob生成通知を送信する。一方、Job生成通知部34は、ケースBの場合、ステップS57で特定されたサーバのうち最も条件の良い1のサーバにJob生成通知を送信する。なお、Job生成通知部34は、Job生成通知の送信先サーバのIDなどをJob割当管理部36に出力しておく。   Thereafter, the job generation notification unit 34 transmits the job generation notification to the server specified in step S57 in accordance with the job generation notification condition (step S61). The job generation notification includes a job ID and further includes all data necessary for job execution. In the case A, the job generation notification unit 34 transmits the job generation notification to the number of servers in accordance with the job generation notification condition among the servers specified in step S57. On the other hand, in the case B, the job generation notification unit 34 transmits the job generation notification to the server having the best condition among the servers specified in step S57. Note that the job generation notification unit 34 outputs the job generation notification transmission destination server ID and the like to the job allocation management unit 36.

一方、サーバ側の処理は、図4Aに示したものと同じである。   On the other hand, the processing on the server side is the same as that shown in FIG. 4A.

処理は端子Aを介して図6の処理に移行して、Job割当管理部36は、サーバからJob取得通知又はJob取得拒否通知を受信し(ステップS63)、Job取得拒否通知を受信したか判断する(ステップS65)。ケースAの場合には、Job生成通知の全ての送信先サーバからJob取得拒否通知を受信したか判断する。ケースBの場合には、Job生成通知の送信先サーバからJob取得拒否通知を受信したか判断する。Job取得拒否通知を受信した場合には、ステップS57で特定された全てのサーバについて通知を行ったか判断する(ステップS67)。ケースAの場合、ステップS65でJob生成通知の全ての送信先サーバからJob取得拒否通知を受信したと判断されているので自動的に端子Cを介してステップS55に移行する。一方、ケースBの場合、ステップS57で複数のサーバが特定されれば、これまでにその全てにJob生成通知を送信したか判断する。   The processing shifts to the processing of FIG. 6 via the terminal A, and the job allocation management unit 36 receives the job acquisition notification or the job acquisition rejection notification from the server (step S63), and determines whether the job acquisition rejection notification is received. (Step S65). In case A, it is determined whether the job acquisition rejection notification has been received from all the transmission destination servers of the job generation notification. In case B, it is determined whether a job acquisition rejection notification has been received from the job generation notification transmission destination server. If a job acquisition refusal notification has been received, it is determined whether notification has been made for all servers identified in step S57 (step S67). In case A, it is determined in step S65 that the job acquisition refusal notification has been received from all the destination servers for the job generation notification, and the process automatically proceeds to step S55 via the terminal C. On the other hand, in case B, if a plurality of servers are specified in step S57, it is determined whether the job generation notification has been transmitted to all of them.

Job生成通知を送信していないサーバが存在する場合には端子Bを介してステップS61に戻る。一方、Job生成通知を送信していないサーバが存在しない場合には端子Cを介してステップS55に戻る。   If there is a server that has not transmitted the job generation notification, the process returns to step S61 via the terminal B. On the other hand, if there is no server that has not transmitted the job generation notification, the process returns to step S55 via the terminal C.

一方、Job取得拒否通知ではなくJob取得通知を受信した場合には、Job割当管理部36は、Job割当管理テーブル37の該当JobのデータにJob取得サーバIDを登録する(ステップS69)。ケースAの場合、1のサーバからJob取得通知を受信した場合には、そのサーバのサーバIDを登録する。複数のサーバからJob取得通知を受信した場合には、それらのサーバの全てのサーバIDを登録する。ケースBの場合には、1のサーバにJobが割り当てられたことになるので、当該サーバのサーバIDを登録する。   On the other hand, when the job acquisition notification is received instead of the job acquisition rejection notification, the job allocation management unit 36 registers the job acquisition server ID in the data of the corresponding job in the job allocation management table 37 (step S69). In case A, when a job acquisition notification is received from one server, the server ID of that server is registered. When job acquisition notifications are received from a plurality of servers, all server IDs of those servers are registered. In case B, since Job is assigned to one server, the server ID of the server is registered.

このようにすれば、アプリケーションに固定のライセンスが割り当てられている場合に対応することができる。   In this way, it is possible to deal with a case where a fixed license is assigned to the application.

なお、図4Bの処理フローも別スレッドで実施される。   Note that the processing flow of FIG. 4B is also executed in another thread.

このようにすればアプリケーションのライセンスを考慮しなければならない場合でも対処できるようになる。   In this way, it is possible to cope with the case where the license of the application must be taken into consideration.

また、ライセンス総数より多くアプリケーションをサーバにインストールしておき、そのアプリケーションの同時実行サーバ数をライセンス総数に制限する場合には、ステップS57の代わりに以下のような処理を実施すればよい。具体的には、Job生成通知部34は、Job実行に必要なライセンス・アプリケーションを実行しているサーバ数がライセンス総数未満であるか判断する。ライセンス総数は、サーバプロファイル管理テーブル33において各アプリケーションについて管理されている。Job実行に必要なライセンス・アプリケーションを実行しているサーバ数は、Job割当管理テーブル37を検索して計数する。ここで、Job実行に必要なライセンス・アプリケーションを実行しているサーバ数がライセンス総数となっている場合には、これ以上ライセンス・アプリケーションを実行することはできないので、当該ライセンス・アプリケーションの実行がいずれかのサーバで終了するまで、待機する。   If more applications than the total number of licenses are installed on the server and the number of simultaneously executing servers of the application is limited to the total number of licenses, the following processing may be performed instead of step S57. Specifically, the job generation notification unit 34 determines whether or not the number of servers executing the license application necessary for job execution is less than the total number of licenses. The total number of licenses is managed for each application in the server profile management table 33. The number of servers executing the license application necessary for job execution is counted by searching the job assignment management table 37. Here, if the number of servers that are executing the license application necessary for job execution is equal to the total number of licenses, the license application cannot be executed any more. Wait until that server finishes.

そして、Job実行に必要なライセンス・アプリケーションを実行しているサーバ数がライセンス総数未満である場合には、Job生成通知部34は、ライセンス・アプリケーションを未実行であるサーバを抽出する。ライセンス・アプリケーションがインストールされているサーバはサーバプロファイル管理テーブル33から特定され、そのサーバがライセンス・アプリケーションを未実行であるか否かはJob割当管理テーブル37を検索することによって判断できる。   When the number of servers that are executing license applications necessary for job execution is less than the total number of licenses, the job generation notification unit 34 extracts servers that have not yet executed license applications. The server in which the license application is installed is identified from the server profile management table 33, and it can be determined by searching the job assignment management table 37 whether the server has not yet executed the license application.

このようにすれば、浮動ライセンス方式を採用している場合にも対応することができる。   In this way, it is possible to cope with the case where the floating license method is adopted.

次に、Jobの優先度を考慮する場合の変形例について図7を用いて説明する。以下に説明する処理は、図3のステップS19に代わって実施する。   Next, a modified example in the case of considering the job priority will be described with reference to FIG. The process described below is performed in place of step S19 in FIG.

まず、Job生成通知部34は、Job割当管理テーブル37から、生成されたJobの優先度を取得する(ステップS71)。そして、優先度が所定値X以上であるか判断する(ステップS73)。優先すべきJobほど優先度の値が大きくなる場合に、このような判断を行い、優先すべきJobほど優先度の値が小さくなる場合には、優先度が所定値X以下であるか判断する。   First, the job generation notification unit 34 acquires the priority of the generated job from the job allocation management table 37 (step S71). And it is judged whether a priority is more than predetermined value X (Step S73). Such a determination is made when the priority value becomes larger as the job to be prioritized, and when the priority value becomes smaller as the job to be prioritized, it is determined whether the priority is equal to or less than the predetermined value X. .

優先度が所定値X未満である場合には、Job生成通知部34は、Job生成通知条件に従って、ステップS15で抽出されたサーバにJob生成通知を送信する(ステップS75)。ステップS19の説明と同様の処理を行う。一方、優先度が所定値X以上である場合には、Job生成通知部34は、Job生成通知条件にかかわらず、ステップS15で抽出された複数のサーバに、Job生成通知を送信する(ステップS77)。すなわち、優先度が所定値X以上である場合には、ケースAと同様に、Jobの処理要件を満たす複数のサーバに当該Jobを割り当てることによって、可能な限り早期に処理結果を得るようにする。   If the priority is less than the predetermined value X, the job generation notification unit 34 transmits a job generation notification to the server extracted in step S15 in accordance with the job generation notification condition (step S75). Processing similar to that described in step S19 is performed. On the other hand, when the priority is equal to or higher than the predetermined value X, the job generation notification unit 34 transmits the job generation notification to the plurality of servers extracted in step S15 regardless of the job generation notification condition (step S77). ). That is, when the priority is equal to or greater than the predetermined value X, as in case A, the job is obtained as soon as possible by assigning the job to a plurality of servers that satisfy the job processing requirements. .

このようにすれば、優先度に応じてJob割当を切り替えて、優先度が高い場合には可能な限り早期に処理結果を取得できるようになる。   In this way, job assignment is switched according to the priority, and if the priority is high, the processing result can be acquired as early as possible.

次に、計算結果が計算毎に異なり、多数決で計算結果を特定するような多数決型Jobを取り扱う変形例を図8及び図9を用いて説明する。   Next, a modified example of handling a majority type job in which the calculation results differ for each calculation and the calculation result is specified by majority decision will be described with reference to FIGS.

基本的に、Job生成部32は、図2のステップS3の代わりに図8の処理を行う。まず、Job生成部32は、生成されたJobが多数決型であるか判断する(ステップS81)。生成されたJobが多数決型でない場合には、通常どおりJobのデータを、Job割当管理テーブル37に登録する(ステップS83)。そして元の処理に戻る。   Basically, the job generation unit 32 performs the process of FIG. 8 instead of step S3 of FIG. First, the job generation unit 32 determines whether the generated job is a majority type (step S81). If the generated job is not the majority type, the job data is registered in the job assignment management table 37 as usual (step S83). Then, the process returns to the original process.

一方、生成されたJobが多数決型である場合には、Job数の指定があるか判断する(ステップS85)。Job数の指定がない場合には、指定数なしの多数決型Jobとして、Jobのデータを、Job割当管理テーブル37に登録する(ステップS87)。そして元の処理に戻る。   On the other hand, if the generated job is of the majority type, it is determined whether the number of jobs is specified (step S85). If the number of jobs is not specified, the job data is registered in the job assignment management table 37 as a majority type job with no specified number (step S87). Then, the process returns to the original process.

また、Job数の指定がある場合には、指定Job数のJobのデータを、Job割当管理テーブル37に登録する(ステップS89)。Job割当管理テーブル37には、指定Job数のJobのデータを各々並列的な関係として登録する。より具体的には、親ノードが多数決型Jobの全体に関するノードで、個々のJobについては当該親ノードの子ノードとして並列(すなわち同列)に配置される。そして元の処理に戻る。   If the number of jobs is specified, the job data for the specified number of jobs is registered in the job allocation management table 37 (step S89). In the job assignment management table 37, the data of the specified number of jobs is registered as a parallel relationship. More specifically, the parent node is a node related to the entire majority type job, and each job is arranged in parallel (that is, in the same row) as a child node of the parent node. Then, the process returns to the original process.

このようにJob数が指定されていれば、個々のJobをJob割当管理テーブル37に登録する。一方、Job数が指定されていなければ、指定数なしの多数決型JobとしてJobを登録し、実際にJob生成通知を送信する際に、所定数のサーバにJobが割り当てられるようにする。   If the number of jobs is specified in this way, each job is registered in the job assignment management table 37. On the other hand, if the number of jobs is not specified, the job is registered as a majority-type job with no specified number, and when a job generation notification is actually transmitted, the jobs are assigned to a predetermined number of servers.

次に、このような多数決型Jobの場合のJob通知処理について図9を用いて説明する。Job生成通知部34は、ステップS19の代わりに以下の処理を実施する。   Next, job notification processing in the case of such a majority type job will be described with reference to FIG. The job generation notification unit 34 performs the following processing instead of step S19.

まず、Job生成通知部34は、Job割当管理テーブル37から読み出したJobが指定数なしの多数決型Jobである判断する(ステップS91)。指定数なしの多数決型Jobでない場合には、Job生成通知部34は、Job生成通知条件に従って、ステップS15で特定されたサーバに送信する(ステップS93)。なお、子ノードについてのみ通常どおり処理する。そして元の処理に戻る。   First, the job generation notification unit 34 determines that the job read from the job allocation management table 37 is a majority-type job with no specified number (step S91). If it is not a majority type job without a designated number, the job generation notification unit 34 transmits it to the server specified in step S15 in accordance with the job generation notification condition (step S93). Only child nodes are processed as usual. Then, the process returns to the original process.

一方、指定数なし多数決型Jobである場合には、Job生成通知定義ファイル35に規定されたデフォルトの数のサーバに、Job生成通知を送信する(ステップS95)。なお、1つでもJob取得拒否通知を受け取った場合には、代替となるサーバにJob生成通知を送信する。また、Job割当管理部36は、多数決型Jobの計算結果の集計を行ってJob割当管理テーブル37に登録する。指定数ありの多数決型Jobの場合には、子ノードにそれぞれの処理結果を登録し、親ノードにJob割当管理部36の集計結果を登録する。   On the other hand, if it is a majority-type job without a designated number, a job generation notification is transmitted to the default number of servers defined in the job generation notification definition file 35 (step S95). When at least one job acquisition rejection notification is received, a job generation notification is transmitted to an alternative server. Further, the job allocation management unit 36 totals the calculation results of the majority type job and registers the result in the job allocation management table 37. In the case of a majority voting job with a designated number, each processing result is registered in the child node, and the aggregation result of the job assignment management unit 36 is registered in the parent node.

このようにすれば多数決型Jobでも簡単に取り扱うことができるようになる。   In this way, the majority job can be easily handled.

以上本発明の実施の形態を説明したが、本発明はこれに限定されるものではない。例えば図1に示した機能ブロック図は、必ずしも実際のプログラム・モジュール構成に対応しない。また、処理フローについても同様の効果を奏する場合には、処理ステップの順番を入れ替えたり並行して実施することも可能である。   Although the embodiment of the present invention has been described above, the present invention is not limited to this. For example, the functional block diagram shown in FIG. 1 does not necessarily correspond to an actual program module configuration. Further, when the same effect is obtained with respect to the processing flow, it is also possible to change the order of the processing steps or to execute it in parallel.

また、マスタコンピュータ3についても複数のコンピュータにより実施される場合もある。   The master computer 3 may also be implemented by a plurality of computers.

さらに、Job生成通知定義ファイル35に格納されるJob生成通知条件については1つの例のみ示したが、このJob生成通知条件を変更することによって、様々な態様でJob生成通知を行うことができるようになる。例えば、上で述べた例ではJob数とサーバ数とで2段階の切り替えを行っていたが、より多くの段階で処理を切り替えるようにしても良い。また、別のパラメータを導入して処理を切り替えるようにしてもよい。さらにJob生成通知を送信する順番などについての条件が登録される場合もある。   Further, only one example of the job generation notification condition stored in the job generation notification definition file 35 has been shown. However, by changing the job generation notification condition, the job generation notification can be performed in various modes. become. For example, in the example described above, the switching is performed in two steps depending on the number of jobs and the number of servers, but the processing may be switched in more steps. Further, another parameter may be introduced to switch processing. Furthermore, a condition regarding the order of sending the job generation notification may be registered.

なお、マスタコンピュータ3及び各サーバは、コンピュータ装置であって、図11に示すように当該コンピュータ装置においては、メモリ2501(記憶部)とCPU2503(処理部)とハードディスク・ドライブ(HDD)2505と表示装置2509に接続される表示制御部2507とリムーバブル・ディスク2511用のドライブ装置2513と入力装置2515とネットワークに接続するための通信制御部2517とがバス2519で接続されている。オペレーティング・システム(OS)及びWebブラウザを含むアプリケーション・プログラムは、HDD2505に格納されており、CPU2503により実行される際にはHDD2505からメモリ2501に読み出される。必要に応じてCPU2503は、表示制御部2507、通信制御部2517、ドライブ装置2513を制御して、必要な動作を行わせる。また、処理途中のデータについては、メモリ2501に格納され、必要があればHDD2505に格納される。このようなコンピュータは、上で述べたCPU2503、メモリ2501などのハードウエアとOS及び必要なアプリケーション・プログラムとが有機的に協働することにより、上で述べたような各種機能を実現する。   The master computer 3 and each server are computer devices. In the computer device, a memory 2501 (storage unit), a CPU 2503 (processing unit), and a hard disk drive (HDD) 2505 are displayed as shown in FIG. A display control unit 2507 connected to the device 2509, a drive device 2513 for the removable disk 2511, an input device 2515, and a communication control unit 2517 for connecting to a network are connected by a bus 2519. Application programs including an operating system (OS) and a Web browser are stored in the HDD 2505, and are read from the HDD 2505 to the memory 2501 when executed by the CPU 2503. If necessary, the CPU 2503 controls the display control unit 2507, the communication control unit 2517, and the drive device 2513 to perform necessary operations. Further, data in the middle of processing is stored in the memory 2501 and stored in the HDD 2505 if necessary. Such a computer realizes various functions as described above by organically cooperating hardware such as the CPU 2503 and the memory 2501 described above with the OS and necessary application programs.

(付記1)
ジョブを処理する各コンピュータの負荷状態を管理することなく当該各コンピュータにジョブを割り当てるジョブ割当プログラムであって、
前記各コンピュータの構成のデータを格納するプロファイル管理データ格納部を用いて、生成されたジョブの処理に必要な構成を有するコンピュータを特定する特定ステップと、
ジョブの生成状態に対応して前記ジョブに対するコンピュータの割当態様に関するデータを格納する割当態様データ格納部を用いて、現在のジョブの生成状態に応じた、前記ジョブの割当態様を特定するステップと、
特定された前記ジョブの割当態様に従って、前記特定ステップにおいて特定されたコンピュータのうち少なくともいずれかにジョブ生成通知を送信する送信ステップと、
前記ジョブ生成通知に対する応答としてジョブ取得拒否通知を受信した場合、生成された前記ジョブの処理に必要な構成を有するコンピュータへのジョブ生成通知の送信を再実施する再送ステップと、
を、マスタコンピュータに実行させるためのジョブ割当プログラム。
(Appendix 1)
A job assignment program that assigns a job to each computer without managing the load state of each computer that processes the job,
A specifying step of specifying a computer having a configuration necessary for processing the generated job using a profile management data storage unit that stores data of the configuration of each computer;
Identifying an assignment mode of the job according to a current job generation state, using an assignment mode data storage unit that stores data relating to a computer assignment mode for the job corresponding to a job generation state;
A transmission step of transmitting a job generation notification to at least one of the computers identified in the identifying step according to the identified job assignment mode;
When a job acquisition refusal notification is received as a response to the job generation notification, a retransmission step for re-executing the transmission of the job generation notification to a computer having a configuration necessary for processing the generated job;
Is a job assignment program for causing a master computer to execute

(付記2)
前記ジョブ生成通知に対する応答としてジョブ取得通知を受信した場合には、生成された前記ジョブに対応して前記ジョブ取得通知の送信元のコンピュータの識別情報をジョブ割当データ格納部に登録するステップと、
前記ジョブ割当データ格納部を検索して、処理結果が未登録のジョブを抽出するステップと、
前記割当態様データ格納部を用いて、抽出時点のジョブの生成状態に応じた、前記ジョブの割当態様を特定するステップと、
特定された前記ジョブの割当態様が前記処理結果が未登録のジョブにコンピュータの重複割当を許容するものである場合、前記処理結果が未登録のジョブの処理に必要な構成を有し且つ前記処理結果が未登録のジョブを現在処理しているコンピュータより性能が高いコンピュータへジョブ生成通知を送信するステップと、
をさらにマスタコンピュータに実行させる付記1記載のジョブ割当プログラム。
(Appendix 2)
When receiving a job acquisition notification as a response to the job generation notification, registering identification information of a computer that is the transmission source of the job acquisition notification in a job allocation data storage unit corresponding to the generated job;
Searching the job assignment data storage unit to extract a job whose processing result is not registered;
Identifying the job allocation mode according to the job generation state at the time of extraction using the allocation mode data storage unit;
When the specified job assignment mode is one that allows duplicate assignment of computers to unregistered jobs, the processing result has a configuration necessary for processing unregistered jobs and the processing Sending a job generation notification to a computer with higher performance than the computer currently processing the unregistered job;
The job assignment program according to appendix 1, wherein the master computer is further executed.

(付記3)
前記ジョブの割当態様に関するデータが、
前記ジョブの数が前記コンピュータの数以上である状態の場合には、同一ジョブに複数のコンピュータの割り当てを禁止し、
前記ジョブの数が前記コンピュータの数未満である状態の場合には、同一ジョブに複数のコンピュータの割り当てを許容する
ことを表すデータを含む付記1記載のジョブ割当プログラム。
(Appendix 3)
Data relating to the job allocation mode is
If the number of jobs is equal to or greater than the number of computers, the assignment of multiple computers to the same job is prohibited,
The job assignment program according to supplementary note 1, including data indicating that the assignment of a plurality of computers to the same job is permitted when the number of jobs is less than the number of computers.

(付記4)
前記再送ステップが、
前記ジョブの割当態様が、生成された前記ジョブに1のコンピュータを割り当てることを示している場合、前記送信ステップ以降のステップ又は前記特定ステップで特定されたコンピュータの全てから前記ジョブ取得拒否通知を受信した場合には前記特定ステップ以降のステップを実施するステップ
を含む付記1記載のジョブ割当プログラム。
(Appendix 4)
The retransmission step comprises:
When the job assignment mode indicates that one computer is assigned to the generated job, the job acquisition refusal notification is received from all the computers specified in the steps after the transmission step or in the specific step. The job assignment program according to supplementary note 1, including a step of executing the steps after the specific step when the step is performed.

(付記5)
前記再送ステップが、
前記ジョブの割当態様が、生成された前記ジョブに複数のコンピュータを割り当てることを示している場合、前記特定ステップで特定されたコンピュータの全てから前記ジョブ取得拒否通知を受信した際には前記特定ステップ以降のステップを実施するステップ
を含む付記1記載のジョブ割当プログラム。
(Appendix 5)
The retransmission step comprises:
When the job assignment mode indicates that a plurality of computers are assigned to the generated job, the specifying step is performed when the job acquisition rejection notification is received from all of the computers specified in the specifying step. The job assignment program according to supplementary note 1, including a step of performing the following steps.

(付記6)
生成された前記ジョブの優先度が所定の基準より高いか判断するステップと、
生成された前記ジョブの優先度が所定の基準より高い場合には、前記ジョブの割当態様にかかわらず、前記特定ステップにおいて特定された複数のコンピュータにジョブ生成通知を送信する送信ステップと、
をさらに含む付記1記載のジョブ割当プログラム。
(Appendix 6)
Determining whether the priority of the generated job is higher than a predetermined reference;
When the priority of the generated job is higher than a predetermined reference, regardless of the job allocation mode, a transmission step of transmitting a job generation notification to a plurality of computers specified in the specifying step;
The job assignment program according to appendix 1, further comprising:

(付記7)
前記特定ステップが、
生成された前記ジョブで用いられるアプリケーションの実行数がライセンス総数より少ないか判断するステップと、
生成された前記ジョブで用いられるアプリケーションの実行数がライセンス総数より少ないと判断された場合、当該アプリケーションがインストールされており且つ生成された前記ジョブの処理に必要な他の構成を有するコンピュータを特定するステップと、
を含む付記1記載のジョブ割当プログラム。
(Appendix 7)
The specific step includes
Determining whether the number of executions of applications used in the generated job is less than the total number of licenses;
When it is determined that the number of applications executed in the generated job is less than the total number of licenses, the computer in which the application is installed and having another configuration necessary for processing the generated job is specified. Steps,
The job allocation program according to appendix 1, including:

(付記8)
生成された前記ジョブが、計算処理数が指定された多数決型のジョブである場合、各前記計算処理を1つの前記ジョブとして取り扱うことを特徴とする付記1記載のジョブ割当プログラム。
(Appendix 8)
The job assignment program according to claim 1, wherein when the generated job is a majority-type job in which the number of calculation processes is specified, each calculation process is handled as one job.

(付記9)
生成された前記ジョブが、計算処理数が無指定の多数決型のジョブである場合、前記ジョブの割当態様にかかわらず、前記特定ステップにおいて特定された所定数のコンピュータにジョブ生成通知を送信するステップ、
をさらに含む付記1記載のジョブ割当プログラム。
(Appendix 9)
A step of transmitting a job generation notification to a predetermined number of computers specified in the specifying step, regardless of the job assignment mode, when the generated job is a majority type job with an unspecified number of calculation processes; ,
The job assignment program according to appendix 1, further comprising:

(付記10)
ジョブを処理する各コンピュータの負荷状態を管理することなく当該各コンピュータにジョブを割り当てるジョブ割当プログラムであって、
前記各コンピュータの構成のデータを格納するプロファイル管理データ格納部を用いて、生成されたジョブの処理に必要な構成を有するコンピュータを特定する特定ステップと、
ジョブの生成状態に対応して前記ジョブに対するコンピュータの割当態様に関するデータを格納する割当態様データ格納部を用いて、現在のジョブの生成状態に応じた、前記ジョブの割当態様を特定するステップと、
特定された前記ジョブの割当態様に従って、前記特定ステップにおいて特定されたコンピュータのうち少なくともいずれかにジョブ生成通知を送信する送信ステップと、
前記ジョブ生成通知に対する応答としてジョブ取得通知を受信した場合には、生成された前記ジョブに対応して前記ジョブ取得通知の送信元のコンピュータの識別情報をジョブ割当データ格納部に登録するステップと、
前記ジョブ割当データ格納部を検索して、処理結果が未登録のジョブを抽出するステップと、
前記割当態様データ格納部を用いて、抽出時点のジョブの生成状態に応じた、前記ジョブの割当態様を特定するステップと、
特定された前記ジョブの割当態様が前記処理結果が未登録のジョブにコンピュータの重複割当を許容するものである場合、前記処理結果が未登録のジョブの処理に必要な構成を有し且つ前記処理結果が未登録のジョブを現在処理しているコンピュータより性能が高いコンピュータへジョブ生成通知を送信するステップと、
を、マスタコンピュータに実行させるためのジョブ割当プログラム。
(Appendix 10)
A job assignment program that assigns a job to each computer without managing the load state of each computer that processes the job,
A specifying step of specifying a computer having a configuration necessary for processing the generated job using a profile management data storage unit that stores data of the configuration of each computer;
Identifying an assignment mode of the job according to a current job generation state, using an assignment mode data storage unit that stores data relating to a computer assignment mode for the job corresponding to a job generation state;
A transmission step of transmitting a job generation notification to at least one of the computers identified in the identifying step according to the identified job assignment mode;
When receiving a job acquisition notification as a response to the job generation notification, registering identification information of a computer that is the transmission source of the job acquisition notification in a job allocation data storage unit corresponding to the generated job;
Searching the job assignment data storage unit to extract a job whose processing result is not registered;
Identifying the job allocation mode according to the job generation state at the time of extraction using the allocation mode data storage unit;
When the specified job assignment mode is one that allows duplicate assignment of computers to unregistered jobs, the processing result has a configuration necessary for processing unregistered jobs and the processing Sending a job generation notification to a computer with higher performance than the computer currently processing the unregistered job;
Is a job assignment program for causing a master computer to execute

(付記11)
ジョブを処理する各コンピュータの負荷状態を管理することなく当該各コンピュータにジョブを割り当てるジョブ割当方法であって、
前記各コンピュータの構成のデータを格納するプロファイル管理データ格納部を用いて、生成されたジョブの処理に必要な構成を有するコンピュータを特定する特定ステップと、
ジョブの生成状態に対応して前記ジョブに対するコンピュータの割当態様に関するデータを格納する割当態様データ格納部を用いて、現在のジョブの生成状態に応じた、前記ジョブの割当態様を特定するステップと、
特定された前記ジョブの割当態様に従って、前記特定ステップにおいて特定されたコンピュータのうち少なくともいずれかにジョブ生成通知を送信する送信ステップと、
前記ジョブ生成通知に対する応答としてジョブ取得拒否通知を受信した場合、生成された前記ジョブの処理に必要な構成を有するコンピュータへのジョブ生成通知の送信を再実施する再送ステップと、
を含み、マスタコンピュータに実行されるジョブ割当方法。
(Appendix 11)
A job assignment method for assigning a job to each computer without managing the load state of each computer that processes the job,
A specifying step of specifying a computer having a configuration necessary for processing the generated job using a profile management data storage unit that stores data of the configuration of each computer;
Identifying an assignment mode of the job according to a current job generation state, using an assignment mode data storage unit that stores data relating to a computer assignment mode for the job corresponding to a job generation state;
A transmission step of transmitting a job generation notification to at least one of the computers identified in the identifying step according to the identified job assignment mode;
When a job acquisition refusal notification is received as a response to the job generation notification, a retransmission step for re-executing the transmission of the job generation notification to a computer having a configuration necessary for processing the generated job;
A job assignment method executed on a master computer.

(付記12)
ジョブを処理する各コンピュータの負荷状態を管理することなく当該各コンピュータにジョブを割り当てるジョブ割当装置であって、
前記各コンピュータの構成のデータを格納するプロファイル管理データ格納部を用いて、生成されたジョブの処理に必要な構成を有するコンピュータを特定する特定手段と、
ジョブの生成状態に対応して前記ジョブに対するコンピュータの割当態様に関するデータを格納する割当態様データ格納部を用いて、現在のジョブの生成状態に応じた、前記ジョブの割当態様を特定する手段と、
特定された前記ジョブの割当態様に従って、前記特定ステップにおいて特定されたコンピュータのうち少なくともいずれかにジョブ生成通知を送信する送信手段と、
前記ジョブ生成通知に対する応答としてジョブ取得拒否通知を受信した場合、生成された前記ジョブの処理に必要な構成を有するコンピュータへのジョブ生成通知の送信を再実施する再送手段と、
を有するジョブ割当装置。
(Appendix 12)
A job assignment device that assigns a job to each computer without managing the load state of each computer that processes the job,
Identifying means for identifying a computer having a configuration necessary for processing a generated job using a profile management data storage unit that stores data of the configuration of each computer;
Means for specifying the job allocation mode according to the current job generation status, using an allocation mode data storage unit that stores data relating to a computer allocation mode for the job corresponding to the job generation status;
Transmitting means for transmitting a job generation notification to at least one of the computers identified in the identifying step according to the identified job assignment mode;
When a job acquisition refusal notification is received as a response to the job generation notification, a retransmission unit that re-executes transmission of the job generation notification to a computer having a configuration necessary for processing the generated job;
A job allocation apparatus.

(付記13)
ジョブを処理する各コンピュータの負荷状態を管理することなく当該各コンピュータにジョブを割り当てるジョブ割当装置であって、
前記各コンピュータの構成のデータを格納するプロファイル管理データ格納部を用いて、生成されたジョブの処理に必要な構成を有するコンピュータを特定する特定手段と、
ジョブの生成状態に対応して前記ジョブに対するコンピュータの割当態様に関するデータを格納する割当態様データ格納部を用いて、現在のジョブの生成状態に応じた、前記ジョブの割当態様を特定する手段と、
特定された前記ジョブの割当態様に従って、前記特定ステップにおいて特定されたコンピュータのうち少なくともいずれかにジョブ生成通知を送信する送信手段と、
前記ジョブ生成通知に対する応答としてジョブ取得通知を受信した場合には、生成された前記ジョブに対応して前記ジョブ取得通知の送信元のコンピュータの識別情報をジョブ割当データ格納部に登録する手段と、
前記ジョブ割当データ格納部を検索して、処理結果が未登録のジョブを抽出する手段と、
前記割当態様データ格納部を用いて、抽出時点のジョブの生成状態に応じた、前記ジョブの割当態様を特定する手段と、
特定された前記ジョブの割当態様が前記処理結果が未登録のジョブにコンピュータの重複割当を許容するものである場合、前記処理結果が未登録のジョブの処理に必要な構成を有し且つ前記処理結果が未登録のジョブを現在処理しているコンピュータより性能が高いコンピュータへジョブ生成通知を送信する手段と、
を有するジョブ割当装置。
(Appendix 13)
A job assignment device that assigns a job to each computer without managing the load state of each computer that processes the job,
Identifying means for identifying a computer having a configuration necessary for processing a generated job using a profile management data storage unit that stores data of the configuration of each computer;
Means for specifying the job allocation mode according to the current job generation status, using an allocation mode data storage unit that stores data relating to a computer allocation mode for the job corresponding to the job generation status;
Transmitting means for transmitting a job generation notification to at least one of the computers identified in the identifying step according to the identified job assignment mode;
Means for registering, in a job allocation data storage unit, identification information of a computer that is the transmission source of the job acquisition notification in response to the generated job when a job acquisition notification is received as a response to the job generation notification;
Means for searching the job allocation data storage unit and extracting a job whose processing result is unregistered;
Means for specifying the job allocation mode according to the job generation state at the time of extraction using the allocation mode data storage;
When the specified job assignment mode is one that allows duplicate assignment of computers to unregistered jobs, the processing result has a configuration necessary for processing unregistered jobs and the processing Means for sending a job generation notification to a computer with higher performance than the computer currently processing the unregistered job;
A job allocation apparatus.

(付記14)
マスタコンピュータで管理されるコンピュータにより実行されるジョブ取得方法であって、
前記マスタコンピュータからジョブ生成通知を受信するステップと、
前記ジョブ生成通知を受信時点で、前記コンピュータの負荷状態が所定の基準より低いか判断するステップと、
前記コンピュータの負荷状態が前記所定の基準より低い場合には、前記マスタコンピュータにジョブ取得通知を送信するステップと、
前記コンピュータの負荷状態が前記所定の基準以上である場合には、前記マスタコンピュータにジョブ取得拒否通知を送信するステップと、
を含むジョブ取得方法。
(Appendix 14)
A job acquisition method executed by a computer managed by a master computer,
Receiving a job generation notification from the master computer;
Determining whether the load state of the computer is lower than a predetermined reference at the time of receiving the job generation notification;
When the load state of the computer is lower than the predetermined reference, sending a job acquisition notification to the master computer;
If the load state of the computer is greater than or equal to the predetermined criterion, sending a job acquisition refusal notification to the master computer;
Job acquisition method including

11乃至13 ネットワーク
51 負荷管理部 52 Job取得ポリシー格納部
31 サーバプロファイル管理部
32 Job生成部
33 サーバプロファイル管理テーブル
34 Job生成通知部
35 Job生成通知定義ファイル
36 Job割当管理部
37 Job割当管理テーブル
11 to 13 Network 51 Load management unit 52 Job acquisition policy storage unit 31 Server profile management unit 32 Job generation unit 33 Server profile management table 34 Job generation notification unit 35 Job generation notification definition file 36 Job allocation management unit 37 Job allocation management table

Claims (5)

ジョブを処理する各コンピュータジョブを割り当てるジョブ割当プログラムであって、
前記各コンピュータへのジョブの割当を管理するための割当管理データ格納部を用いて、生成されたジョブで用いられるアプリケーションの実行数がライセンス総数より少ないか判断するステップと、
生成された前記ジョブで用いられるアプリケーションの実行数がライセンス総数より少ないと判断された場合、前記各コンピュータの構成のデータを格納するプロファイル管理データ格納部を用いて、当該アプリケーションがインストールされており且つ生成された前記ジョブの処理に必要な他の構成を有するコンピュータを特定する特定ステップと、
ジョブの生成状態に対応して前記ジョブに対するコンピュータの割当態様に関するデータを格納する割当態様データ格納部を用いて、現在のジョブの生成状態に応じた、前記ジョブの割当態様を特定するステップと、
特定された前記ジョブの割当態様に従って、前記特定ステップにおいて特定されたコンピュータのうち少なくともいずれかに、生成された前記ジョブの実行に足るデータを含むジョブ生成通知を送信する送信ステップと、
前記ジョブ生成通知を受信したコンピュータのうち、生成された前記ジョブの実行を開始しないコンピュータから、前記ジョブ生成通知に対する応答としてジョブ取得拒否通知を受信した場合、生成された前記ジョブの処理に必要な構成を有するコンピュータへのジョブ生成通知の送信を再実施する再送ステップと、
を、マスタコンピュータに実行させるためのジョブ割当プログラム。
A job assignment program that assigns a job to each computer to process the job,
Determining whether or not the number of applications executed in the generated job is less than the total number of licenses using an allocation management data storage unit for managing job allocation to the computers;
When it is determined that the number of executions of the application used in the generated job is less than the total number of licenses, the application is installed using the profile management data storage unit that stores the configuration data of each computer, and A specific step of identifying a computer having another configuration necessary for processing the generated job;
Identifying an assignment mode of the job according to a current job generation state, using an assignment mode data storage unit that stores data relating to a computer assignment mode for the job corresponding to a job generation state;
A transmission step of transmitting a job generation notification including data sufficient for execution of the generated job to at least one of the computers specified in the specifying step according to the specified job assignment mode;
Of the computers that have received the job generation notification, if a job acquisition rejection notification is received as a response to the job generation notification from a computer that does not start execution of the generated job, it is necessary for processing the generated job. A retransmission step for re-executing the transmission of the job generation notification to the computer having the configuration;
Is a job assignment program for causing a master computer to execute
生成された前記ジョブが、計算処理の数が指定されており且つ多数決によって計算処理の結果が決定される多数決型のジョブである場合、指定された前記数の計算処理の各々を1つの前記ジョブとして取り扱うことを特徴とする請求項1記載のジョブ割当プログラム。When the generated job is a majority type job in which the number of calculation processes is specified and the result of the calculation process is determined by majority vote, each of the specified number of calculation processes is regarded as one job. The job assignment program according to claim 1, wherein: 生成された前記ジョブが、計算処理の数が指定されておらず且つ多数決によって計算処理の結果が決定される多数決型のジョブである場合、前記ジョブの割当態様にかかわらず、前記特定ステップにおいて特定されたコンピュータにジョブ生成通知を送信するステップ、When the generated job is a majority type job in which the number of calculation processes is not specified and the result of the calculation process is determined by majority vote, the specific step is specified regardless of the job assignment mode. Sending a job generation notification to a designated computer;
をさらに含む請求項1記載のジョブ割当プログラム。The job assignment program according to claim 1, further comprising:
ジョブを処理する各コンピュータジョブを割り当てるジョブ割当方法であって、
前記各コンピュータへのジョブの割当を管理するための割当管理データ格納部を用いて、生成されたジョブで用いられるアプリケーションの実行数がライセンス総数より少ないか判断するステップと、
生成された前記ジョブで用いられるアプリケーションの実行数がライセンス総数より少ないと判断された場合、前記各コンピュータの構成のデータを格納するプロファイル管理データ格納部を用いて、当該アプリケーションがインストールされており且つ生成された前記ジョブの処理に必要な他の構成を有するコンピュータを特定する特定ステップと、
ジョブの生成状態に対応して前記ジョブに対するコンピュータの割当態様に関するデータを格納する割当態様データ格納部を用いて、現在のジョブの生成状態に応じた、前記ジョブの割当態様を特定するステップと、
特定された前記ジョブの割当態様に従って、前記特定ステップにおいて特定されたコンピュータのうち少なくともいずれかに、生成された前記ジョブの実行に足るデータを含むジョブ生成通知を送信する送信ステップと、
前記ジョブ生成通知を受信したコンピュータのうち、生成された前記ジョブの実行を開始しないコンピュータから、前記ジョブ生成通知に対する応答としてジョブ取得拒否通知を受信した場合、生成された前記ジョブの処理に必要な構成を有するコンピュータへのジョブ生成通知の送信を再実施する再送ステップと、
を含み、マスタコンピュータに実行されるジョブ割当方法。
A job assignment method for assigning a job to each computer to process the job,
Determining whether or not the number of applications executed in the generated job is less than the total number of licenses using an allocation management data storage unit for managing job allocation to the computers;
When it is determined that the number of executions of the application used in the generated job is less than the total number of licenses, the application is installed using the profile management data storage unit that stores the configuration data of each computer, and A specific step of identifying a computer having another configuration necessary for processing the generated job;
Identifying an assignment mode of the job according to a current job generation state, using an assignment mode data storage unit that stores data relating to a computer assignment mode for the job corresponding to a job generation state;
A transmission step of transmitting a job generation notification including data sufficient for execution of the generated job to at least one of the computers specified in the specifying step according to the specified job assignment mode;
Of the computers that have received the job generation notification, if a job acquisition rejection notification is received as a response to the job generation notification from a computer that does not start execution of the generated job, it is necessary for processing the generated job. A retransmission step for re-executing the transmission of the job generation notification to the computer having the configuration;
A job assignment method executed on a master computer.
ジョブを処理する各コンピュータジョブを割り当てるジョブ割当装置であって、
前記各コンピュータへのジョブの割当を管理するための割当管理データ格納部を用いて、生成されたジョブで用いられるアプリケーションの実行数がライセンス総数より少ないか判断する手段と、
生成された前記ジョブで用いられるアプリケーションの実行数がライセンス総数より少ないと判断された場合、前記各コンピュータの構成のデータを格納するプロファイル管理データ格納部を用いて、当該アプリケーションがインストールされており且つ生成された前記ジョブの処理に必要な他の構成を有するコンピュータを特定する特定手段と、
ジョブの生成状態に対応して前記ジョブに対するコンピュータの割当態様に関するデータを格納する割当態様データ格納部を用いて、現在のジョブの生成状態に応じた、前記ジョブの割当態様を特定する手段と、
特定された前記ジョブの割当態様に従って、前記特定手段により特定されたコンピュータのうち少なくともいずれかに、生成された前記ジョブの実行に足るデータを含むジョブ生成通知を送信する送信手段と、
前記ジョブ生成通知を受信したコンピュータのうち、生成された前記ジョブの実行を開始しないコンピュータから、前記ジョブ生成通知に対する応答としてジョブ取得拒否通知を受信した場合、生成された前記ジョブの処理に必要な構成を有するコンピュータへのジョブ生成通知の送信を再実施する再送手段と、
を有するジョブ割当装置。
A job assigning apparatus for assigning a job to each computer to process the job,
Means for determining whether the number of executions of the application used in the generated job is less than the total number of licenses, using an assignment management data storage unit for managing the assignment of jobs to each computer;
When it is determined that the number of executions of the application used in the generated job is less than the total number of licenses, the application is installed using the profile management data storage unit that stores the configuration data of each computer, and Specifying means for specifying a computer having another configuration necessary for processing the generated job;
Means for specifying the job allocation mode according to the current job generation status, using an allocation mode data storage unit that stores data relating to a computer allocation mode for the job corresponding to the job generation status;
Transmitting means for transmitting a job generation notification including data sufficient for execution of the generated job to at least one of the computers specified by the specifying means according to the specified job assignment mode;
Of the computers that have received the job generation notification, if a job acquisition rejection notification is received as a response to the job generation notification from a computer that does not start execution of the generated job, it is necessary for processing the generated job. Resending means for re-executing transmission of a job generation notification to a computer having a configuration;
A job allocation apparatus.
JP2012000028A 2012-01-04 2012-01-04 Job allocation program, method and apparatus Expired - Fee Related JP5354033B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012000028A JP5354033B2 (en) 2012-01-04 2012-01-04 Job allocation program, method and apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012000028A JP5354033B2 (en) 2012-01-04 2012-01-04 Job allocation program, method and apparatus

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2006341081A Division JP4992408B2 (en) 2006-12-19 2006-12-19 Job allocation program, method and apparatus

Publications (2)

Publication Number Publication Date
JP2012064249A JP2012064249A (en) 2012-03-29
JP5354033B2 true JP5354033B2 (en) 2013-11-27

Family

ID=46059815

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012000028A Expired - Fee Related JP5354033B2 (en) 2012-01-04 2012-01-04 Job allocation program, method and apparatus

Country Status (1)

Country Link
JP (1) JP5354033B2 (en)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001325041A (en) * 2000-05-12 2001-11-22 Toyo Eng Corp Method for utilizing computer resource and system for the same
JP2003058266A (en) * 2001-08-09 2003-02-28 Hokuriku Electric Power Co Inc:The License management method and license management program
JP2004240671A (en) * 2003-02-05 2004-08-26 Hitachi Ltd Processing method and system for distributed computer
JP2004246592A (en) * 2003-02-13 2004-09-02 Mitsubishi Electric Corp Job execution management device
JP2005293492A (en) * 2004-04-05 2005-10-20 Mitsubishi Electric Corp Server, terminal, and information system
JPWO2006100752A1 (en) * 2005-03-22 2008-08-28 富士通株式会社 Distributed processing management apparatus, distributed processing management method, distributed processing management program

Also Published As

Publication number Publication date
JP2012064249A (en) 2012-03-29

Similar Documents

Publication Publication Date Title
JP4992408B2 (en) Job allocation program, method and apparatus
US9104498B2 (en) Maximizing server utilization within a datacenter
US20170207977A1 (en) Systems and methods for resource sharing between two resource allocation systems
JP3658420B2 (en) Distributed processing system
US8898505B2 (en) Dynamically configureable placement engine
JP5770721B2 (en) Information processing system
US20150295970A1 (en) Method and device for augmenting and releasing capacity of computing resources in real-time stream computing system
US20130239115A1 (en) Processing system
CN109564528B (en) System and method for computing resource allocation in distributed computing
CN112162865A (en) Server scheduling method and device and server
US8874751B2 (en) Candidate set solver with user advice
CN111258746B (en) Resource allocation method and service equipment
US11438271B2 (en) Method, electronic device and computer program product of load balancing
US10013288B2 (en) Data staging management system
Bok et al. An efficient MapReduce scheduling scheme for processing large multimedia data
WO2019056771A1 (en) Distributed storage system upgrade management method and device, and distributed storage system
JP2017037492A (en) Distributed processing program, distributed processing method and distributed processor
US9384050B2 (en) Scheduling method and scheduling system for multi-core processor system
US9882973B2 (en) Breadth-first resource allocation system and methods
CN110914805A (en) Computing system for hierarchical task scheduling
WO2014173366A2 (en) Method, device and system for carrying out telecommunication capability group sending
JP2016004328A (en) Task assignment program, task assignment method, and task assignment device
US11275621B2 (en) Device and method for selecting tasks and/or processor cores to execute processing jobs that run a machine
JP5354033B2 (en) Job allocation program, method and apparatus
US20140258540A1 (en) Management system and method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120104

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130425

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130507

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130705

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: 20130730

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130812

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees