(57)【要約】   【課題】  処理負荷、処理タイプ、ファイルの加工などが種々多様であった場合でも適切なホストを起動してジョブを実行する。  【解決手段】  ＥＡＩサーバ１０は、キューテーブルに記憶されたキューのジョブを起動すべきときに、各ホストにて実行可能なジョブの最大実行数を示す同時実行ジョブ最大数と、同時に実行する最低ジョブ数を示す最低同時実行ジョブ数とを含むノート定義テーブルを参照して、標準の処理タイプのジョブの何本分に相当するかを示す標準タイプ対比加重、および、基準データ量を超えた場合に追加すべき加重を示すデータ量対比加重を考慮して、実際の負荷に相当する換算ジョブ数を割り出し、当該換算ジョブ数に相当するジョブを実行すべきホストを、各ホストの最低同時実行ジョブ数および同時実行ジョブ最大数を考慮して特定し、前記ホストにジョブを実行させる。【選択図】  図１
2005107824.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して接続された複数の他のコンピュータとのデータ交換を行うＥＡＩサーバであって、
各ホストにて実行可能なジョブの最大実行数を示す同時実行ジョブ最大数と、同時に起動する最低ジョブ数を示す最低同時実行ジョブ数とを含むノード定義情報テーブルと、
複数の処理タイプのそれぞれについて、標準の処理タイプのジョブの何本分に相当するかを示す標準タイプ対比加重を含む処理タイプ別標準情報テーブルと、
インタフェースの識別子を示すＩ／Ｆ識別子、その名称を示すＩ／Ｆ名称、処理のタイプおよび実行されるジョブ名を示す実行ジョブ名からなるＩ／Ｆ定義テーブルと、
ファイルを識別するためのファイル識別子、前記Ｉ／Ｆ識別子、ファイル名称、送受信の区分を表す送受信区分、標準的なデータの上限を示す基準データ量、および、基準データ量を超えた場合に追加すべき加重を示すデータ量対比加重を含むファイル定義テーブルと、
ジョブの起動により動的にその内容が更新されるキューテーブルであって、キューを一意的に識別するためのキュー識別子、Ｉ／Ｆ識別子、ジョブの実行状態、ジョブを実行するホスト名、標準タイプ対比加重、および、データ量対比加重の合計を示すキューテーブルと、
前記ネットワークを介した他のコンピュータからの受信に応じて動的にその内容が更新される受信データ管理テーブルであって、キュー識別子、ファイル識別子、Ｉ／Ｆ識別子、受信したデータの受信状態、および、データ量対比加重を含むデータ受信管理テーブルと、
前記ネットワークを介してデータを受信したときに、前記Ｉ／Ｆ定義テーブルおよびファイル定義テーブルを参照して、当該データに関するジョブのＩ／Ｆ定義情報およびファイル定義情報を特定し、受信データ管理テーブルに、新規に採番されたキュー識別子を、受信したデータのデータ量に基づくデータ量対比加重を含む必要な情報とともに記憶し、かつ、キューテーブルに、前記データ量対比加重および処理タイプに応じた標準タイプ対比加重を含む必要な情報を記憶するデータ待ち合わせ手段と、
前記キューテーブルを参照して、起動すべきジョブを特定し、標準タイプ対比加重およびデータ量対比加重を考慮して、実際の負荷に相当する換算ジョブ数を割り出し、当該換算ジョブ数に相当するジョブを実行すべきホストを、各ホストの最低同時実行ジョブ数および同時実行ジョブ最大数を考慮して特定し、前記ホストにジョブを実行させるジョブ実行制御手段とを備えたことを特徴とするＥＡＩサーバ。
【請求項２】
前記データ待ち合わせ手段が、前記受信したデータのサイズと、前記ファイル定義テーブル中の基準データ量とを比較して、前記受信管理テーブルに、データ量対比加重を記憶することを特徴とする請求項１に記載のＥＡＩサーバ。
【請求項３】
前記ジョブ実行制御手段が、各ホストに関して、
最低同時実行本数枠＝最低同時実行ジョブ本数−実行中のジョブ数
を算出し、前記最低同時実行本数枠の最大のものに、前記ジョブを実行させることを特徴とする請求項１または２に記載のＥＡＩサーバ。
【請求項４】
前記ジョブ実行制御手段が、各ホストに関して、
当該ホストで実行中のジョブの標準タイプ対比加重の合計およびデータ量対比加重の合計の総和である実行中換算ジョブ数を算出し、
同時実行ジョブ最大数−実行中換算ジョブ数に相当する実行可能換算ジョブ数が最大のものに、前記ジョブを実行させることを特徴とする請求項３に記載のＥＡＩサーバ。
【請求項５】
前記ジョブ実行制御手段が、
前記換算ジョブ数＞実行可能換算ジョブ数
である場合に、前記ホストにジョブを実行させることを特徴とする請求項４に記載のＥＡＩサーバ。
【請求項６】
ネットワークを介して接続された複数の他のコンピュータとのデータ交換を行うＥＡＩサーバであって、各ホストにて実行可能なジョブの最大実行数を示す同時実行ジョブ最大数と、同時に起動する最低ジョブ数を示す最低同時実行ジョブ数とを含むノード定義情報テーブルと、複数の処理タイプのそれぞれについて、標準の処理タイプのジョブの何本分に相当するかを示す標準タイプ対比加重を含む処理タイプ別標準情報テーブルと、インタフェースの識別子を示すＩ／Ｆ識別子、その名称を示すＩ／Ｆ名称、処理のタイプおよび実行されるジョブ名を示す実行ジョブ名からなるＩ／Ｆ定義テーブルと、ファイルを識別するためのファイル識別子、前記Ｉ／Ｆ識別子、ファイル名称、送受信の区分を表す送受信区分、標準的なデータの上限を示す基準データ量、および、基準データ量を超えた場合に追加すべき加重を示すデータ量対比加重を含むファイル定義テーブルと、ジョブの起動により動的にその内容が更新されるキューテーブルであって、キューを一意的に識別するためのキュー識別子、Ｉ／Ｆ識別子、ジョブの実行状態、ジョブを実行するホスト名、標準タイプ対比加重、および、データ量対比加重の合計を示すキューテーブルと、前記ネットワークを介した他のコンピュータからの受信に応じて動的にその内容が更新される受信データ管理テーブルであって、キュー識別子、ファイル識別子、Ｉ／Ｆ識別子、受信したデータの受信状態、および、データ量対比加重を含むデータ受信管理テーブルとを含むＥＡＩサーバにより読み出し可能なプログラムであって、前記ＥＡＩサーバを、
前記ネットワークを介してデータを受信したときに、前記Ｉ／Ｆ定義テーブルおよびファイル定義テーブルを参照して、当該データに関するジョブのＩ／Ｆ定義情報およびファイル定義情報を特定し、受信データ管理テーブルに、新規に採番されたキュー識別子を、受信したデータのデータ量に基づくデータ量対比加重を含む必要な情報とともに記憶し、かつ、キューテーブルに、前記データ量対比加重および処理タイプに応じた標準タイプ対比加重を含む必要な情報を記憶するデータ待ち合わせ手段、および、
前記キューテーブルを参照して、起動すべきジョブを特定し、標準タイプ対比加重およびデータ量対比加重を考慮して、実際の負荷に相当する換算ジョブ数を割り出し、当該換算ジョブ数に相当するジョブを実行すべきホストを、各ホストの最低同時実行ジョブ数および同時実行ジョブ最大数を考慮して特定し、前記ホストにジョブを実行させるジョブ実行制御手段として機能させることを特徴とする、ＥＡＩサーバにより読み取り可能なプログラム。
【請求項７】
前記ＥＡＩサーバを前記データ待ち合わせ手段として機能させる場合において、前記受信したデータのサイズと、前記ファイル定義テーブル中の基準データ量とを比較して、前記受信管理テーブルに、データ量対比加重を記憶するように、前記ＥＡＩサーバを動作させることを特徴とする請求項６に記載のプログラム。
【請求項８】
前記ＥＡＩサーバを前記ジョブ実行制御手段として機能させる場合において、各ホストに関して、
最低同時実行本数枠＝最低同時実行ジョブ本数−実行中のジョブ数
を算出し、前記最低同時実行本数枠の最大のものに、前記ジョブを実行させるように、前記ＥＡＩサーバを動作させることを特徴とする請求項６または７に記載のプログラム。
【請求項９】
前記ＥＡＩサーバを前記ジョブ実行制御手段として機能させる場合において、各ホストに関して、
当該ホストで実行中のジョブの標準タイプ対比加重の合計およびデータ量対比加重の合計の総和である実行中換算ジョブ数を算出し、
同時実行ジョブ最大数−実行中換算ジョブ数に相当する実行可能換算ジョブ数が最大のものに、前記ジョブを実行させるように、前記ＥＡＩサーバを動作させることを特徴とする請求項８に記載のプログラム。
【請求項１０】
前記ＥＡＩサーバを前記ジョブ実行制御手段として機能させる場合において、
前記換算ジョブ数＞実行可能換算ジョブ数
である場合に、前記ホストにジョブを実行させるように、前記ＥＡＩサーバを動作させることを特徴とする請求項９に記載のＥＡＩプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＥＡＩ（Enterprise Application
Integration）サーバに関し、より詳細には、適切なジョブスケジューリングが実現できるＥＡＩサーバに関する。
【背景技術】
【０００２】
ＥＡＩサーバは、そのソフトの性格上複数のシステムとのデータ交換を行うサーバとして機能する。ＥＡＩサーバに接続されるシステム、ホスト、サーバには、それぞれ、異なるハードウェアアーキテキチャ、異なるＯＳ、異なる文字セット、異なるジョブスケジューリング機構などが装備されている可能性がある。また、ＥＡＩサーバに、新規のサーバが接続された場合、既存のサーバとの整合を図る必要もある。
【特許文献１】特開２００２−１８９８４１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
その結果、ＥＡＩサーバは、以下のような課題を持つシステムとなる。
【０００４】
（１）加工処理の繁忙期と閑散期が極端。
ＥＡＩサーバに接続される各システムで、それぞれにジョブスケジューリング機構が装備されているため、ＥＡＩサーバにてデータ加工を行う  タイミングは、そのデータの発生システムのジョブスケジューリングに従う事になる。その結果、ＥＡＩサーバに対して、複数のシステムから短時間に大量のデータ加工依頼が集中し、或いは、ほとんどデータ加工依頼のない時間帯が発生する事となる。
【０００５】
ＥＡＩサーバにおいては、ピーク時は大量のデータ加工を実現する必要がある為、膨大なコンピュータ資源    （ＣＰＵ数、搭載メモリ、利用可能ディスクスペースなど）が必要とされるが、ピーク時以外は、ほとんどコンピュータ資源を利用していないという特性を持っている。その結果、ピーク時の処理を実現可能なコンピュータ資源を準備すると費用対効果が非常に悪くなる。
【０００６】
（２）ＥＡＩサーバ上でのデータ加工処理の特性
ＥＡＩサーバ上で実行されるデータ加工処理は、おおよそ以下の３つのパターンに分類される場合が多い。
【０００７】
第１のタイプ
大量のコンピュータ資源を消費し、処理時間も長くかかる加工処理。
このパターンの加工処理の特性として、同じパターンの加工処理を同時に実行しない方がよいとされるもの。
【０００８】
第２のタイプ
使用コンピュータ資源も処理時間も平均的な加工処理。
同じパターンの加工処理であれば複数同時実行を行う事により全体のスループット向上につながるもの。
【０００９】
第３のタイプ
使用コンピューターリソースも処理時間も小さな加工処理。
【００１０】
同じパターンの加工処理であればパターン２のものよりも大量に同時実行することが可能なもの。
【００１１】
実際のＥＡＩサーバ上では、上記のような特性を持つ加工処理がランダムに発生するので、単純な同時実行数の制御だけを行うと、コンピュータ資源の不足や余りを発生させてしまう。
【００１２】
（３）複数のファイルを使用する加工処理
ＥＡＩサーバ上で加工されるパターンを大別すると
１：１
ｎ：１
１：ｎ
ｎ：ｍ  （１、ｎ、ｍは、それぞれ、ジョブ数）
となるが、このとき、複数のデータを使用して加工を行う場合、どうしても使用するデータの生成を待つ機構が必要となる。
【００１３】
単一のシステム内でこのような処理を実装する場合は、ジョブコントロール・ソフトウェアを使用してデータ生成のタイミングを取ればよいが、複数のシステムを結合させる立場にあるＥＡＩサーバ      では、自身の制御機構の中にデータ待ち合わせ機能が必要となる。
また、他のホストにおいてジョブを実行させる場合には、当該他のホストにおける能力や実行されているジョブを考慮する必要がある。
【００１４】
特許文献１には、計算機リソースの配分を考慮したワークフロー管理を実現する方法、システムおよび記憶媒体が開示されている。しかしながら、これによっても、上記問題点を解決することは容易ではない。
【００１５】
本発明は、処理負荷、処理タイプ、ファイルの加工などが種々多様であった場合でも適切な処理を実行することができるＥＡＩサーバおよびそのプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１６】
本発明の目的は、ネットワークを介して接続された複数の他のコンピュータとのデータ交換を行うＥＡＩサーバであって、各ホストにて実行可能なジョブの最大実行数を示す同時実行ジョブ最大数と、同時に起動する最低ジョブ数を示す最低同時実行ジョブ数とを含むノード定義情報テーブルと、複数の処理タイプのそれぞれについて、標準の処理タイプのジョブの何本分に相当するかを示す標準タイプ対比加重を含む処理タイプ別標準情報テーブルと、インタフェースの識別子を示すＩ／Ｆ識別子、その名称を示すＩ／Ｆ名称、処理のタイプおよび実行されるジョブ名を示す実行ジョブ名からなるＩ／Ｆ定義テーブルと、ファイルを識別するためのファイル識別子、前記Ｉ／Ｆ識別子、ファイル名称、送受信の区分を表す送受信区分、標準的なデータの上限を示す基準データ量、および、基準データ量を超えた場合に追加すべき加重を示すデータ量対比加重を含むファイル定義テーブルと、ジョブの起動により動的にその内容が更新されるキューテーブルであって、キューを一意的に識別するためのキュー識別子、Ｉ／Ｆ識別子、ジョブの実行状態、ジョブを実行するホスト名、標準タイプ対比加重、および、データ量対比加重の合計を示すキューテーブルと、前記ネットワークを介した他のコンピュータからの受信に応じて動的にその内容が更新される受信データ管理テーブルであって、キュー識別子、ファイル識別子、Ｉ／Ｆ識別子、受信したデータの受信状態、および、データ量対比加重を含むデータ受信管理テーブルと、前記ネットワークを介してデータを受信したときに、前記Ｉ／Ｆ定義テーブルおよびファイル定義テーブルを参照して、当該データに関するジョブのＩ／Ｆ定義情報およびファイル定義情報を特定し、受信データ管理テーブルに、新規に採番されたキュー識別子を、受信したデータのデータ量に基づくデータ量対比加重を含む必要な情報とともに記憶し、かつ、キューテーブルに、前記データ量対比加重および処理タイプに応じた標準タイプ対比加重を含む必要な情報を記憶するデータ待ち合わせ手段と、前記キューテーブルを参照して、起動すべきジョブを特定し、標準タイプ対比加重およびデータ量対比加重とを考慮して、実際の負荷に相当する換算ジョブ数を割り出し、当該換算ジョブ数に相当するジョブを実行すべきホストを、各ホストの最低同時実行ジョブ数および同時実行ジョブ最大数を考慮して特定し、前記ホストにジョブを実行させる実行制御手段とを備えたことを特徴とするＥＡＩサーバにより達成される。
【００１７】
好ましい実施態様においては、前記データ待ち合わせ手段が、前記受信したデータのサイズと、前記ファイル定義テーブル中の基準データ量とを比較して、前記受信管理テーブルに、データ量対比加重を記憶する。
【００１８】
別の好ましい実施態様においては、前記ジョブ実行制御手段が、各ホストに関して、最低同時実行本数枠＝最低同時実行ジョブ本数−実行中のジョブ数を算出し、前記最低同時実行本数枠の最大のものに、前記ジョブを実行させる。
【００１９】
より好ましい実施態様においては前記ジョブ実行制御手段が、各ホストに関して、
当該ホストで実行中のジョブの標準タイプ対比加重の合計およびデータ量対比加重の合計の総和である実行中換算ジョブ数を算出し、
同時実行ジョブ最大数−実行中換算ジョブ数に相当する実行可能換算ジョブ数が最大のものに、前記ジョブを実行させる。
【００２０】
さらに、前記ジョブ実行制御手段が、前記換算ジョブ数＞実行可能換算ジョブ数である場合に、前記ホストにジョブを実行させるのが望ましい。
【００２１】
また、本発明の目的は、ネットワークを介して接続された複数の他のコンピュータとのデータ交換を行うＥＡＩサーバであって、各ホストにて実行可能なジョブの最大実行数を示す同時実行ジョブ最大数と、同時に起動する最低ジョブ数を示す最低同時実行ジョブ数とを含むノード定義情報テーブルと、複数の処理タイプのそれぞれについて、標準の処理タイプのジョブの何本分に相当するかを示す標準タイプ対比加重を含む処理タイプ別標準情報テーブルと、インタフェースの識別子を示すＩ／Ｆ識別子、その名称を示すＩ／Ｆ名称、処理のタイプおよび実行されるジョブ名を示す実行ジョブ名からなるＩ／Ｆ定義テーブルと、ファイルを識別するためのファイル識別子、前記Ｉ／Ｆ識別子、ファイル名称、送受信の区分を表す送受信区分、標準的なデータの上限を示す基準データ量、および、基準データ量を超えた場合に追加すべき加重を示すデータ量対比加重を含むファイル定義テーブルと、ジョブの起動により動的にその内容が更新されるキューテーブルであって、キューを一意的に識別するためのキュー識別子、Ｉ／Ｆ識別子、ジョブの実行状態、ジョブを実行するホスト名、標準タイプ対比加重、および、データ量対比加重の合計を示すキューテーブルと、前記ネットワークを介した他のコンピュータからの受信に応じて動的にその内容が更新される受信データ管理テーブルであって、キュー識別子、ファイル識別子、Ｉ／Ｆ識別子、受信したデータの受信状態、および、データ量対比加重を含むデータ受信管理テーブルとを含むＥＡＩサーバにより読み出し可能なプログラムであって、前記ＥＡＩサーバを、
【００２２】
前記ネットワークを介してデータを受信したときに、前記Ｉ／Ｆ定義テーブルおよびファイル定義テーブルを参照して、当該データに関するジョブのＩ／Ｆ定義情報およびファイル定義情報を特定し、受信データ管理テーブルに、新規に採番されたキュー識別子を、受信したデータのデータ量に基づくデータ量対比加重を含む必要な情報とともに記憶し、かつ、キューテーブルに、前記データ量対比加重および処理タイプに応じた標準タイプ対比加重を含む必要な情報を記憶するデータ待ち合わせ手段、および、前記キューテーブルを参照して、起動すべきジョブを特定し、標準タイプ対比加重およびデータ量対比加重とを考慮して、実際の負荷に相当する換算ジョブ数を割り出し、当該換算ジョブ数に相当するジョブを実行すべきホストを、各ホストの最低同時実行ジョブ数および同時実行ジョブ最大数を考慮して特定し、前記ホストにジョブを実行させるジョブ実行制御手段として機能させることを特徴とする、ＥＡＩサーバにより読み取り可能なプログラムによっても達成される。
【００２３】
好ましい実施態様においては、前記ＥＡＩサーバを前記データ待ち合わせ手段として機能させる場合において、各ホストに関して、
最低同時実行本数枠＝最低同時実行ジョブ本数−実行中のジョブ数
を算出し、前記最低同時実行本数枠の最大のものに、前記ジョブを実行させるように、前記ＥＡＩサーバを動作させる。
【００２４】
別の好ましい実施態様においては、前記ＥＡＩサーバを前記ジョブ実行制御手段として機能させる場合において、各ホストに関して、当該ホストで実行中のジョブの標準タイプ対比加重の合計およびデータ量対比加重の合計の総和である実行中換算ジョブ数を算出し、同時実行ジョブ最大数−実行中換算ジョブ数に相当する実行可能換算ジョブ数が最大のものに、前記ジョブを実行させるように、前記ＥＡＩサーバを動作させる。
【００２５】
より好ましい実施態様においては、前記ＥＡＩサーバを前記ジョブ実行制御手段として機能させる場合において、前記換算ジョブ数＞実行可能換算ジョブ数である場合に、前記ホストにジョブを実行させるように、前記ＥＡＩサーバを動作させる。
【発明の効果】
【００２６】
本発明によれば、処理負荷、処理タイプ、ファイルの加工などが種々多様であった場合でも適切な処理を実行することができるＥＡＩサーバおよびそのプログラムを提供することが可能となる。
【発明を実施するための最良の形態】
【００２７】
以下、添付図面を参照して、本発明の実施の形態について説明する。図１は、本実施の形態にかかるＥＡＩサーバの概略を示すブロックダイヤグラムである。図１に示すように、本実施の形態にかかるＥＡＩサーバ１０は、ネットワークを介して、他のサーバやホストコンピュータと接続され、これらとのデータ授受を制御する入出力インタフェース（Ｉ／Ｆ）１２と、ＥＡＩサーバにおけるデータ待ち合わせを実行する待ち合わせ処理部１４と、データ加工処理の同時実行数を制御する実行制御部１６と、各種テーブルやデータを記憶する記憶装置１８とを有する。記憶装置２０には、後に詳述するシステム制限テーブル２０、処理タイプ別制限情報テーブル２２、Ｉ／Ｆ定義テーブル２４と、ファイル定義テーブル２６と、受信データ管理テーブル２８と、キューテーブル３０と、ノート定義テーブル３２とが保持される。また、記憶装置２０は、他のサーバやホストコンピュータからのデータを収容することができる。
【００２８】
このように構成されたＥＡＩサーバ１０における各テーブルについて以下に詳細に説明する。図２（ａ）はシステム制限情報テーブルの例を示す図である。システム制限情報テーブル２００は、キューをチェックする間隔を示す「キューチェック間隔」を含む。
【００２９】
図２（ｂ）は、処理タイプ別制限情報テーブルの例を示す図である。本実施の形態において、処理タイプ別制限情報２１０には、３つの処理タイプが設定され、それぞれのタイプについて、標準の処理タイプのジョブ何本分を換算するかを示す値が付加される。図２（ｂ）の例では、「処理タイプ１」のジョブについては、通常の処理タイプのジョブの「３」本分に換算され、「処理タイプ３」のジョブについては、通常の処理タイプのジョブの「０．５」本分に換算される。また、「処理タイプ２」のジョブが、通常の処理タイプのジョブに相当する。
【００３０】
また、図２（ｃ）に示すように、ノード定義テーブルは、各ホストにて同時に実行できる最大ジョブ数を示す「同時実行ジョブ（Ｊｏｂ）最大数」と、無制限に当該ホストを起動することができる最低のジョブ数を示す「最低同時実行ジョブ（Ｊｏｂ）数」とを含む。「同時実行ジョブ最大数」などは、ＥＡＩサーバのＣＰＵ数、メモリ量および平均的な負荷をもつジョブの実行数などに基づいて予め設定される。システム制限情報テーブル、処理タイプ別制限情報テーブル、および、ノード定義テーブルのレコードは事前に登録される。  図２（ｄ）に示すように、Ｉ／Ｆ定義テーブル２２０には、項目として、インタフェースを一意的に特定する「Ｉ／Ｆ識別子」、インタフェース名称を示す「Ｉ／Ｆ名称」、および、「優先度」および「処理タイプ」が設けられている。
【００３１】
図３（ａ）は、ファイル定義テーブルの例を示す図である。図３（ａ）に示すように、ファイル定義テーブル３００には、項目として、ファイルを一意的に特定する「ファイル識別子」、「Ｉ／Ｆ識別子」、「ファイル名称」、送受信を区分する「送受信区分」、ファイルの送信先を示す「送信先情報」、標準的なデータサイズの上限を示す「基準データ量」、および、基準データ量を超えた場合の追加加重を示す「データ量対比加重」が含まれる。Ｉ／Ｆ定義テーブルおよびファイル定義テーブルにより、１つの加工処理（Ｉ／Ｆ定義）にて使用されるデータ、生成されるデータ、および、生成されたデータの引渡し先を管理することができる。また、これらＩ／Ｆ定義テーブルおよびファイル定義テーブルのレコードは事前に登録される。
【００３２】
図３（ｂ）は、キューテーブルの例を示す図である。キューテーブル３１０は、キュー登録日およびキュー番号を示す「キュー識別子」、「Ｉ／Ｆ識別子」、当該キュー中のジョブの実行状態を示す「実行状態」、キューを実行するホストを示す「ホスト名」、「優先度」、「標準タイプ対比加重」、および、加工処理を実行するときのディレクトリを示す「基準Ｄｉｒ」を含む。キューテーブルにより、実際に処理するジョブの実行順序が管理される。
【００３３】
図３（ｃ）は、受信データ管理テーブルの例を示す図である。受信データ管理テーブルには、項目として、「キュー識別子」、「ファイル識別子」、「Ｉ／Ｆ識別子」、「データ受信状態」および「データ量対比加重」が含まれる。キューテーブルおよび受信データ管理テーブルのレコードは、処理実行時に動的に登録され或いは削除される。
【００３４】
上記構成のテーブルを備えたＥＡＩサーバにおけるデータ待ち合わせ処理について説明する。図４は、データ待ち合わせ処理を概略的に示すフローチャートである。
【００３５】
ＥＡＩサーバの入出力Ｉ／Ｆ１２がデータを受理すると、データ待ち合わせ処理部１４は、受信したデータのファイル名から、ファイル識別子（以下、「受信時抽出ファイル識別子」と称する）を抽出する（ステップ４０１）。
【００３６】
ここで、ファイル名の命名規則は、たとえば、（ファイル識別子＿受信日時＿受信処理プロセス番号.dat）       のように、ファイル識別子を含み、かつ、短時間（もしくは、同時）に同一ファイル識別子のデータを受信しても上書きされる危険のないように設定しておくのが望ましい。
【００３７】
次いで、データ待ち合わせ処理部１４は、キューテーブルにデータを配置するために、作業用ロックを「ロック状態」にする（ステップ４０２）。これにより、キューテーブルへのデータ配置が並列動作することが防止される。なお、「ロック状態」は処理終了の際に解除され、「ロック解除状態」となる。
【００３８】
次いで、データ待ち合わせ処理部１４は、受信時抽出ファイル識別子を使用して、Ｉ／Ｆ定義情報テーブルを検索し、Ｉ／Ｆ識別子、優先度、処理タイプなどを抽出する（ステップ４０３）。ここでは、たとえば、以下の検索条件が利用され得る。
【００３９】
検索条件：ファイル識別子＝受信時抽出ファイル識別子
AND（かつ）  送受信区分＝受信
なお、上記値が抽出できなかった場合は（ステップ４０４でノー(No)）、未登録ファイルの受信としてエラー処理を実行される（ステップ４０５）。
【００４０】
次いで、データ待ち合わせ処理部１４は、検索されたＩ／Ｆ識別子（以下、「検索Ｉ/Ｆ識別子」と称する。）を使用して受信データ管理テーブルを検索する（ステップ４０６）。たとえば、検索条件、取得順序、取得項目は以下のようなものとなる。
【００４１】
検索条件：I/F識別子＝検索I/F識別子  
AND  ファイル識別子＝受信時抽出ファイル識別子
AND  データ受信状態＝未受信
取得順序：キュー識別子
取得項目：キュー識別子（以下、「受信管理キュー識別子」と称する。）
ファイル識別子（以下、「受信管理ファイル識別子」と称する。）
処理基準ディレクトリ（以下、「検索処理基準ディレクトリ」と称する。）
【００４２】
なお、ここで抽出されるレコードは１件のみである。
【００４３】
検索の結果、レコードが見出された場合（受信待ちであった場合）には（ステップ４０７でイエス(Yes)）、待ち合わせ処理部１４は、受信データ管理テーブルを更新する（ステップ４０８）。データ更新条件、更新項目は以下のとおりである。
【００４４】
更新条件：キュー識別子＝受信データ管理キュー識別子
AND ファイル識別子＝受信管理ファイル識別子
更新項目：データ受信状態＝受信済み
【００４５】
なお、データ量対比加重について、受信したデータのI/F定義情報に基準データ量・データ量対比加重が登録されている場合は、受信したデータのサイズと基準データ量を比較し、              受信したデータ量が大きい場合は、受信管理テーブルのデータ量対比加重がセットされる。その一方、データ量が大きくない場合は、「０（ゼロ）」がセットされる。
【００４６】
また、データ待ち合わせ処理部１４は、受信したデータを検索処理基準ディレクトリに移動し（ステップ４０９）、キューテーブルを更新する（ステップ４１０）。更新条件は以下のとおりである。
【００４７】
更新条件：キュー識別子＝受信管理キュー識別子
【００４８】
なお、更新項目のうち、データ量対比加重については、受信管理テーブルのキュー識別子＝受信管理キュー識別子のレコードのデータ量対比加重の合計となる。
その一方、検索の結果、データが見出されなかった場合（つまり、受信待ちしていない場合）には（ステップ４０７でノー(No)）、図５に示すように、待ち合わせ処理部１４は、キュー識別子を採番するとともに、基準ディレクトリ「基準Dir」を生成する（ステップ５０１）。
【００４９】
基準ディレクトリの生成においては、処理日時、処理プログラムのプロセス番号等を使用し、一意性を持ったディレクトリ名が生成される。
【００５０】
次いで、データ待ち合わせ処理部１４は、受信データを、生成された基準ディレクトリに移動する（ステップ５０２）。また、データ待ち合わせ処理部１４は、受信管理テーブル検索Ｉ／Ｆ識別子を使用して、Ｉ／Ｆ定義情報を検索し（ステップ５０３）、そのＩ／Ｆ識別子配下にあるファイル識別子すべてについて、先に採番したキュー識別子を使用して受信データ管理テーブルに記憶する（ステップ５０４）。
【００５１】
このとき、データ受信状態は受信時抽出ファイル識別子のものは、受信済みとし、その他のファイル識別子は未受信として、受信データ管理テーブルに記憶するする。また、I/F定義情報に、「基準データ量・データ量対比加重」が登録されている場合に、
【００５２】
受信したデータのサイズ＞基準データ量
が満たされる場合は、受信管理テーブルのデータ量対比加重に、Ｉ／Ｆ定義情報のデータ量対比加重がセットされる。
【００５３】
次いで、データ待ち合わせ処理部１４は、キューテーブルに新規キュー情報を記憶する（ステップ５０５）。新規キュー情報のレコードには、以下の項目が含まれる。
キュー識別子：先に採番したキュー識別子
Ｉ／Ｆ識別子：検索Ｉ／Ｆ識別子
実行状態：実行待ち
実行ホスト名：未登録（ヌル：NULL）
優先度       ：Ｉ／Ｆ定義情報の検索時に取得した優先度
処理タイプ対比加重：Ｉ／Ｆ定義情報の検索時に取得した処理タイプを使用して処理タイプ別制限情報テーブルを検索して得られた標準タイプ対比加重
基準Dir：先に生成した基準Dir
【００５４】
データ量対比加重合計：上記受信データ管理テーブルに記憶した時のデータ量対比加重
このような、処理ロジックを使用する事により、同一ファイル識別子のデータが多数受信された場合でも、Ｉ／Ｆで使用するデータがＦＩＦＯ(First In First Out)で結合されて処理される。
【００５５】
たとえば、図５（ａ）および（ｂ）にそれぞれ示すように、処理タイプ別制限情報テーブルおよびノード定義テーブルのレコードに値が当てられているとする。他のシステムから「Ｒ０００１＿２００３０７０７１３５４＿１２３４５．ｄａｔ」というファイル名のデータを受理した場合を考える。この例では、ファイル名からファイル識別子を抽出すると、「Ｒ０００１」となる。また、Ｉ／Ｆ定義テーブル（図６（ｃ）参照）から、このファイル識別子は、「２：１のＩ／Ｆ」であることがわかる。
【００５６】
データ待ち合わせ処理部１４は、ファイル定義テーブル（図６（ｄ）参照）のレコードを参照して、すでにファイル定義テーブル中に存在するか否かを判断する。この例では、対応するレコードがファイル定義テーブルに存在している（符号６０１参照）。また、そのファイル識別子が、そのファイル識別子が受信データ管理テーブル（図７（ａ）参照）に、そのデータ受信状態が「未受信」の状態で存在しているか確認する。この例では、対応するレコードのデータ受信状態は「未受信」となっている（符号６０２参照）
【００５７】
次いで、その未受信データの一番古いキュー識別子が取得される。また、受信したファイルのサイズとファイル定義   テーブルの基準データ量とが比較され、基準データ量より大きい場合には、ファイル定義テーブルのデータ量対比加重が、受信データ管理テーブルにセットされる。次いで、      キューテーブルから基準ディレクトリ「基準Dir」が取得され、受信したデータが移動される。この後、キューのデータ量対比加重項目が再計算され、実行状態が変更される。図７（ｂ）は、キューテーブルの状態の一例を示す。ここでは、まだジョブを実行するホスト名が決定されず、したがって、その項目の値はヌル（NULL）となっている。
【００５８】
次に、本実施の形態にかかる実行制御部１６における処理について説明する。実行制御部１６におけるデータ加工処理の同時実行数の制御は、以下のように行われる。
ノード定義情報テーブルに登録された各ホストにおいて、最低同時実行ジョブ数に満たないものがあれば、無条件でそのホストにてジョブを起動するように構成される。そのときに、ホストのチェックは、同時実行ジョブ最大数の大きいものから小さいものに向かう順序で行われる。
【００５９】
また、キューから取り出された起動対象ジョブの換算ジョブ数が算出される。ここでは、そのジョブの処理タイプに課せられた標準タイプ対比加重と、受信データ量から算出したデータ量対比加重とを使用して換算ジョブ数が算出される。
【００６０】
また、キューテーブルを参照して、ホストごとの実行状態が算出される。ここでは、実行ジョブ数、実行換算ジョブ数、同時実行ジョブ最大数、および、実行可能換算ジョブ数が以下のように取得される。
【００６１】
実行ジョブ数：キューのレコード数
実行換算ジョブ数：「標準タイプ対比加重」の合計 ＋「データ量対比加重合計」の合計
同時実行ジョブ最大数：キューテーブルのホスト名をキーとして、ノード定義情報テーブルを検索して得られた同時実行ジョブ最大数
実行可能換算ジョブ数：「同時実行ジョブ最大数」−「実行換算ジョブ数」
なお、算出結果は、「実行可能換算ジョブ数」の多い物から取得される。
【００６２】
起動対象ジョブの換算ジョブ数よりも多い実行可能換算ジョブ数のホストにてジョブが起動されるように、実行制御部１６はホストにジョブの処理依頼を送信する。
【００６３】
図８は、実行処理部にて実行される処理を示すフローチャートである。実行制御部１６は、キューに実行待ちのものがあるかチェックする（ステップ８０１）。より詳細には、実行制御部１６は、キューテーブル中、「実行状態」が「実行待ち」であるようなレコードを、「優先度」・「キュー識別子」の順に検索し、先頭レコードの換算ジョブ数、つまり、「標準タイプ対比加重＋データ量対比加重合計」（以下、「WAITJOB」と称する。）を算出する。
【００６４】
実行待ちのものがなければ（ステップ８０１でノー(No)）、システム制限情報テーブルのキューチェック間隔で指定された時間だけスリープして、ステップ８０１に戻る。
実行待ちのものがある場合には（ステップ８０１でイエス(Yes)、実行制御部１６は、キューテーブルから所定の情報を取得して（ステップ８０２）、最低同時実行本数割れのホストを検索する（ステップ８０３）。より詳細には、キューテーブルに登録されている実行中のレコードから以下の情報がホスト別に取得される。
【００６５】
実行ジョブ総本数：キューテーブルの「実行状態」＝「実行中」のレコード数
同時実行ジョブ最大数：キューテーブルのホスト名をキーとしてノード定義情報テーブルを検索して得られた同時実行ジョブ最大数
最低同時実行本数：キューテーブルのホスト名をキーとしてノード定義情報テーブルを検索して得られた最低同時実行ジョブ数
最低同時実行本数枠：「最低同時実行本数」−「同時実行ジョブ総本数」
【００６６】
実行制御部１６は、算出結果のうち、「最低同時実行本数枠」、「同時実行ジョブ最大数」の多い物順で探索し、最初のレコードに含まれるホストを特定する。
【００６７】
なお、キューテーブルに実行中のジョブが登録されていないホストに関しては、
実行ジョブ総本数：ゼロ
最低同時実行本数：ノード定義情報テーブルの最低同時実行ジョブ数
最低同時実行本数枠：ノード定義情報テーブルの最低同時実行ジョブ数
として扱う。
【００６８】
実行制御部１６は、最低実行本数割れのホストがあるか否かを判断する（ステップ８０４）。ステップ８０４でイエス(Yes)と判断された場合には、ステップ８０１で見出されたキューのジョブを、ステップ８０３で特定されたホストで実行すべく依頼を送信する（ステップ８０５）。次いで、システム制限情報テーブルの「キューチェック間隔」で指定された時間だけスリープしてステップ８０１に戻る。
【００６９】
ステップ８０４でノー(No)と判断された場合には、実行制御部１６は、各ホストの実行可能換算ジョブ数を取得する（ステップ８０６）。ここでは、実行制御部１６は、キューテーブルから以下の情報をホスト別に算出し、実行可能換算ジョブ数の一番多いホストを特定する。
【００７０】
実行ジョブ総本数：キューテーブルの「実行状態」＝「実行中」のレコード数
実行中換算ジョブ数（以下、「JRUN」と称する）：キューテーブルの実行状態＝
実行中のレコードの標準タイプ対比加重の合計＋データ量対比加重合計の合計
同時実行ジョブ最大数：キューテーブルのホスト名をキーとしてノード定義情報テーブルを検索して得られた同時実行Job最大数（以下、「MAXRUN」と称する。）
実行可能換算ジョブ数（以下、「EXERUN」と称する。）：MAXRUN−JRUN
実行制御部１６は、上記算出結果に基づいて、MAXRUNの多い順にホストを特定する。
【００７１】
次いで、実行処理部１６はジョブ起動の可否を判断する（ステップ８０７）。ここでは、
EXERUN≧WAITJOB
である場合、処理枠があり、ジョブの起動が可能であると判断する。
【００７２】
処理枠なしと判断された場合（ステップ８０７でノー(No)）、実行制御部１６は、システム制限情報テーブルのキューチェック間隔で指定された時間だけスリープし、ステップ８０１に戻る。
【００７３】
その一方、処理枠ありと判断された場合、キューテーブル中、実行すべきジョブのキューの実行状態を実行中に変更し、ステップ８０６、８０７で特定されたホストにて、その上部を実行すべく依頼を送信する（ステップ８０５）。その後、ステム制限情報テーブルの「キューチェック間隔」で指定された時間だけスリープしてステップ８０１に戻る。
【００７４】
システム情報テーブル、処理タイプ別制限情報テーブル、キューテーブルおよび受信データテーブルに、それぞれ図９（ａ）〜（ｃ）ならびに図１０（ａ）および（ｂ）に示すようなデータが与えられていた場合を例にして、上記実行制御部１６の処理をより詳細に説明する。ここでは、実行されているジョブは存在しない。また、単純化の為、起動したジョブの順番に終了すると考える。
【００７５】
（１）「QUE=2003070100001」を検出したときのキューテーブルの状態を図１１（ａ）に示す。この状態で、実行制御部１６が換算ジョブ数を算出すると以下のようになる。
【００７６】
換算ジョブ数＝標準タイプ対比加重（＝３）＋データ量対比加重合計（＝０）＝３
【００７７】
また、最低同時実行本数割れのホストの検索は以下のようになる。
キューテーブルとノード定義情報テーブルとから探索した結果、
ホストＡ（HOST-A）については、
同時実行ジョブ総本数＝０
同時実行ジョブ最大数＝５
最低同時実行ジョブ本数＝２
最低同時実行本数枠＝２
となる。また、ホストＢ（HOST-B）については、
同時実行ジョブ総本数＝０
同時実行ジョブ最大数＝３
最低同時実行ジョブ本数＝１
最低同時実行本数枠＝１
となるため、ホストＡがヒットする。
【００７８】
ヒットしたノードの最低同時実行本数枠はゼロでないため、     キュー（2003070100001）の「実行状態」を「実行中」、かつ、「実行HOST名」=「HOST-A」と更新し、ホストＡ（HOST-A）にてジョブを起動する。ジョブ起動後のキューテーブルの状態を図１１（ｂ）に示す。
【００７９】
（２）QUE=2003070100002 検知時（終了したジョブなしとする。）
このときのキューテーブルの状態を図１２（ａ）に示す。実行制御部１６は、換算ジョブ数を算出する。
換算Job数＝標準タイプ対比加重（＝３）＋データ量対比加重合計（＝０）＝３
【００８０】
次いで、最低同時実行本数割れのソフトを検索すると以下のようになる。
キューテーブルとノード定義情報テーブルとから探索した結果、
ホストＡ（HOST-A）については、
同時実行ジョブ総本数＝１
同時実行ジョブ最大数＝５
最低同時実行ジョブ本数       ＝２
最低同時実行本数枠＝１
となる。また、ホストＢ（HOST-B）については、
同時実行ジョブ総本数＝０
同時実行ジョブ最大数＝３
最低同時実行ジョブ本数       ＝１
最低同時実行本数枠＝１
となる。その結果、ホストＡがヒットする。
【００８１】
ヒットしたノードの最低同時実行本数枠がゼロでないため、     キュー（2003070100002）の「実行状態」を「実行中」、「実行HOST命」=「HOST-A」と更新し、ホストＡ（HOST-A）にてジョブを起動する。ジョブ起動後のキューテーブルの状態を図１２（ｂ）に示す。
【００８２】
（３）QUE=2003070100003 検知時（終了したジョブなしとする。）
このときのキューテーブルの状態を図１３（ａ）に示す。実行制御部１６は、換算ジョブを算出する。
【００８３】
換算Job数＝標準タイプ対比加重（＝１）＋データ量対比加重合計（＝０）＝１
【００８４】
次いで、最低同時実行本数割れのホストを探索すると以下のようになる。
キューテーブルとノード定義情報テーブルとから探索した結果、
ホストＡ（HOST-A）については、
同時実行ジョブ総本数＝２
同時実行ジョブ最大数＝５
最低同時実行ジョブ本数       ＝２
最低同時実行本数枠＝０
となる。また、ホストＢ（HOST-B）については、
同時実行ジョブ総本数＝０
同時実行ジョブ最大数＝３
最低同時実行ジョブ本数＝１
最低同時実行本数枠＝１
となる。その結果、ホストＢ（HOST-B）がヒットする。
【００８５】
ヒットしたノードの最低同時実行本数枠がゼロでないため、     キュー（2003070100003）の「実行状態」を「実行中」、かつ、「実行HOST名」=「HOST-B」と更新し、ホストＢ（HOST-B）にてJobを起動する。図１３（ｂ）は、ジョブ起動後のキューテーブルを示す。
【００８６】
（４）QUE=2003070100004 検知時（終了したJOBなしとする。）
図１４は、検知時のキューテーブルの状態を示す図である。
換算ジョブ数を算出すると以下のとおりになる。
換算ジョブ数＝標準タイプ対比加重（＝３）＋データ量対比加重合計（＝１）＝４
【００８７】
最低同時実行本数割れのホストの探索においては、以下の値が取得される。
キューテーブルとノード定義情報テーブルとから探索した結果、
ホストＡ（HOST-A）については、
同時実行ジョブ総本数＝２
同時実行ジョブ最大数＝５
最低同時実行ジョブ本数       ＝２
最低同時実行本数枠＝０
となる。また、ホストＢ（HOST-B）については、
同時実行ジョブ総本数＝１
同時実行ジョブ最大数＝３
最低同時実行ジョブ本数＝１
最低同時実行本数枠＝０
となる。したがって、最低同時実行本数割れのホストはないと判断される。
【００８８】
このため、実行可能ジョブ数が以下のように取得される。
キューテーブルを参照すると、
ホストＡ（HOST-A）については、
実行ジョブ本数＝２
実行中換算ジョブ数＝６
同時ジョブ実行最大数＝５
実行可能ジョブ数＝５−６＝−１
ホストＢ（HOST-B）については、
実行ジョブ本数＝１
実行中換算ジョブ数＝１
同時ジョブ実行最大数＝３
実行可能ジョブ数＝３−１＝２
となる。したがって、ホストＢ（HOST-B）が、ジョブを実行する」ホストの候補となる。
【００８９】
しかしながら、先に干すとＢにおいては、先に算出された換算ジョブ数＝４であるため、実行不可と判定されジョブは起動されない。その結果、実行制御部１６はスリープとなる。
【００９０】
（５）QUE=2003070100001 終了後のチェック時（再度、QUE=2003070100004の起動確認を実施する。）
図１５（ａ）は、チェック時のキューテーブルを示す。
このときに、換算ジョブ数は以下のように算出される。
換算ジョブ数＝標準タイプ対比加重（＝３）＋データ量対比加重合計（＝１）＝４
【００９１】
最低同時実行本数割れのホストの検索は以下のとおりとなる。
キューテーブルとノード定義情報テーブルとから探索した結果、
ホストＡ（HOST-A）については、
同時実行ジョブ総本数＝１
同時実行ジョブ最大数＝５
最低同時実行ジョブ本数＝２
最低同時実行本数枠＝１
となる。また、ホストＢ（HOST-B）については、
同時実行ジョブ総本数＝１
同時実行ジョブ最大数＝３
最低同時実行ジョブ本数＝１
最低同時実行本数枠＝０
となる。その結果、ホストＡ（HOST-A）がヒットする。
【００９２】
ヒットしたノードの最低同時実行本数枠がゼロでないため、キュー（2003070100004）の「実行状態」を「実行中」、かつ、「実行HOST名」=「HOST-A」と更新し、ホストＡ（HOST-A）にてジョブを起動する。起動後のキューテーブルの状態を図１５（ｂ）に示す。
【００９３】
（６）QUE=2003070100005 検知時（新たに終了したジョブなしとする。）
図１６（ａ）は、チェック時のキューテーブルを示す。
換算ジョブ数は以下のように算出される。
【００９４】
換算ジョブ数＝標準タイプ対比加重（＝0.5）＋データ量対比加重合計（＝０）＝0.5
【００９５】
また、最低同時実行本数割れのホストは以下のように検索される。
キューテーブルとノード定義情報テーブルとから探索した結果、
ホストＡ（HOST-A）については、
同時実行ジョブ総本数＝２
同時実行ジョブ最大数＝５
最低同時実行ジョブ本数＝２
最低同時実行本数枠＝０
ホストＢ（HOST-B）については、
同時実行ジョブ総本数＝１
同時実行ジョブ最大数＝３
最低同時実行ジョブ本数＝１
最低同時実行本数枠＝０
となる。その結果、最低同時実行本数割れのホストは存在しないと判断される。
【００９６】
したがって、実行可能ジョブ数が以下のように、キューテーブルを参照して算出される。
【００９７】
ホストＡ（HOST-A）については、
実行ジョブ本数＝２
実行中換算ジョブ数＝７
同時ジョブ実行最大数＝５
実行可能ジョブ数＝５−７＝−２
ホストＢ（HOST-B）については、
実行ジョブ本数＝１
実行中換算ジョブ数＝１
同時ジョブ実行最大数＝３
実行可能ジョブ数＝３−１＝２
となる。したがって、ホストＢ（HOST-B）が、ジョブを実行するホストの候補となる。
【００９８】
ここで、先に換算された換算ジョブ数＝0.5であるため、ジョブをホストＢにて実行可と判定される。その結果、キュー（2003070100005）の「実行状態」を「実行中」、かつ、「実行HOST名」=「HOST-B」と更新し、ホストＢ（HOST-B）にてジョブを起動する。起動後のキューテーブルの状態を図１６（ｂ）に示す。
【００９９】
（７）QUE=2003070100006 検知時（新たに終了したジョブなしとする。）
図１７（ａ）は、チェック時のキューテーブルを示す。
換算ジョブ数は以下のように算出される。
【０１００】
換算ジョブ数＝標準タイプ対比加重（＝0.5）＋データ量対比加重合計（＝１）＝1.5
【０１０１】
また、最低同時実行本数割れのホストは以下のように検索される。
キューテーブルとノード定義情報テーブルとから探索した結果、
ホストＡ（HOST-A）については、
同時実行ジョブ総本数＝２
同時実行ジョブ最大数＝５
最低同時実行ジョブ本数＝２
最低同時実行本数枠＝０
ホストＢ（HOST-B）については、
同時実行ジョブ総本数＝２
同時実行ジョブ最大数＝３
最低同時実行ジョブ本数＝１
最低同時実行本数枠＝０
となる。したがって、最低同時実行本数割れのホストは存在しないと判断される。
【０１０２】
このため、実行可能ジョブ数が以下のように、キューテーブルを参照して算出される。
【０１０３】
ホストＡ（HOST-A）については、
実行ジョブ本数＝２
実行中換算ジョブ数＝６
同時ジョブ実行最大数＝５
実行可能ジョブ数＝５−７＝−２
ホストＢ（HOST-B）については、
実行ジョブ本数＝２
実行中換算ジョブ数＝1.5
同時ジョブ実行最大数＝３
実行可能ジョブ数＝３−1.5＝1.5
となる。したがって、ホストＢ（HOST-B）が、ジョブを実行するホストの候補となる。
【０１０４】
先に算出された換算ジョブ数＝1.5であるため、ジョブをホストＢにて実行可能と判断され、キュー（2003070100006）の「実行状態」を「実行中」、かつ、「実行HOST名」=「HOST-B」と更新し、ホストＢ（HOST-B）にてジョブを起動する。図１７（ｂ）はジョブ起動後のキューテーブルの状態を示す図である。
【０１０５】
本発明は、以上の実施の形態に限定されることなく、特許請求の範囲に記載された発明の範囲内で、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。
【図面の簡単な説明】
【０１０６】
【図１】図１は、本実施の形態にかかるＥＡＩサーバの概略を示すブロックダイヤグラムである。
【図２】図２（ａ）はシステム制限情報テーブルの例を示す図、図２（ｂ）は、処理タイプ別制限情報テーブルの例を示す図、図２（ｃ）は、ノード定義テーブルの例を示す図、図２（ｄ）は。Ｉ／Ｆ定義テーブルの例を示す図である。
【図３】図３（ａ）は、ファイル定義テーブルの例を示す図、図３（ｂ）は、キューテーブルの例を示す図、図３（ｃ）は、受信データ管理テーブルの例を示す図である。
【図４】図４は、本実施の形態にかかるデータ待ち合わせ処理を概略的に示すフローチャートである。
【図５】図５は、本実施の形態にかかるデータ待ち合わせ処理を概略的に示すフローチャートである。
【図６】図６は、本実施の形態にかかるデータ待ち合わせ処理の例を具体的に説明するための図である。
【図７】図７は、本実施の形態にかかるデータ待ち合わせ処理の例を具体的に説明するための図である。
【図８】図８は、本実施の形態にかかるキューの実行判断を示すフローチャートである。
【図９】図９は、本実施の形態にかかる実行制御部による処理の例を具体的に説明するための図である。
【図１０】図１０は、本実施の形態にかかる実行制御部による処理の例を具体的に説明するための図である。
【図１１】図１１は、本実施の形態にかかる実行制御部による処理の例を具体的に説明するための図である。
【図１２】図１２は、本実施の形態にかかる実行制御部による処理の例を具体的に説明するための図である。
【図１３】図１３は、本実施の形態にかかる実行制御部による処理の例を具体的に説明するための図である。
【図１４】図１４は、本実施の形態にかかる実行制御部による処理の例を具体的に説明するための図である。
【図１５】図１５は、本実施の形態にかかる実行制御部による処理の例を具体的に説明するための図である。
【図１６】図１６は、本実施の形態にかかる実行制御部による処理の例を具体的に説明するための図である。
【図１７】図１７は、本実施の形態にかかる実行制御部による処理の例を具体的に説明するための図である。
【符号の説明】
【０１０７】
１０      ＥＡＩサーバ
１２      入出力Ｉ／Ｆ
１４      データ待ち合わせ処理部
１６      実行制御部
１８      記憶装置
２０      システム制限情報テーブル
２２      処理タイプ別制限情報テーブル
２４      Ｉ／Ｆ定義テーブル
２６      ファイル定義テーブル
２８      受信データ管理テーブル
３０      キューテーブル
３２      ノード定義テーブル
【図１】
2005107824.tif 000003
【図２】
2005107824.tif 000004
【図３】
2005107824.tif 000005
【図４】
2005107824.tif 000006
【図５】
2005107824.tif 000007
【図６】
2005107824.tif 000008
【図７】
2005107824.tif 000009
【図８】
2005107824.tif 000010
【図９】
2005107824.tif 000011
【図１０】
2005107824.tif 000012
【図１１】
2005107824.tif 000013
【図１２】
2005107824.tif 000014
【図１３】
2005107824.tif 000015
【図１４】
2005107824.tif 000016
【図１５】
2005107824.tif 000017
【図１６】
2005107824.tif 000018
【図１７】
2005107824.tif 000019