| 【発明の名称】 |
センターカット処理方式 |
| 【発明者】 |
【氏名】浅野 郁久
|
| 【要約】 |
【課題】先の入力データファイルに、追加の入力データファイルがあっても、全体の処理時間の延長を極力抑制したセンターカット処理方式を提供する。
【解決手段】入力済みの複数の処理対象データに加え、新規に処理対象データを格納可能なファイルを複数備えてなる入力データファイル群格納手段4と、入力データファイル群格納手段中から入力データファイルを選択し、自己以外の他の処理管理手段による前記選択した入力データファイルの参照を禁止すると共に、該選択した入力データファイル以外の参照を許可する処理管理手段(APブローカ)3-1,3-2と、処理管理手段からの選択した入力データファイルの指定に対応して入力データファイル群格納手段中の入力データファイルを処理する処理実行手段(AP処理サーバ)6-1,6-2とを備えた。 |
【特許請求の範囲】
【請求項1】 入力済みの複数の処理対象データに加え、新規に処理対象データを格納可能なファイルを複数備えてなる入力データファイル群格納手段と、該入力データファイル群格納手段中から入力データファイルを選択し、自己以外の他の処理管理手段による前記選択した入力データファイルの参照を禁止すると共に、該選択した入力データファイル以外の参照を許可する処理管理手段と、該処理管理手段からの選択した入力データファイルの指定に対応して前記入力データファイル群格納手段中の入力データファイルを処理する処理実行手段とを備えたことを特徴とするセンターカット処理方式。 【請求項2】 前記処理管理手段は、前記入力データファイル群格納手段中の処理対象となる入力データファイルの選択を行う時点における、該入力ファイルデータ中で未処理件数最大の入力データファイルを選択し、該入力データファイル中の一回の要求で処理する件数を指定する手段を備え、前記処理実行手段は、前記処理管理手段からの未処理件数最大の入力データファイルおよび一回の処理要求件数の指定に対応して、前記入力データファイルを処理する手段を備えたことを特徴とする請求項1記載のセンターカット処理。 【請求項3】 前記センターカット処理方式を、電子商取引に適用することを特徴とする請求項1または請求項2記載のセンターカット処理方式。
|
【発明の詳細な説明】【0001】 【発明の属する技術分野】本発明は、センターカット処理方式に関し、特に先の入力データファイルに対して、新たな追加の入力データファイルを加えても、全体の処理時間が長くならないようにしたセンターカット処理方式に関する。 【0002】 【従来の技術】例えばバンキングシステムにおいて、一度に大量の入力データを処理する場合に、オンライン処理(オンライントランザクション処理)であれば随時発生する要求に対し発生順に処理を行っている(図7(A)参照)。これに対してセンターカット処理方式では、要求と要求に付随するデータを入力データファイルとして保存し、システム全体での負荷分散のためにオンラインでの処理量が少ない時間などに入力データの処理を行っている。ここに、センターカット処理方式とは、オンライントランザクション処理と同じトランザクションモニタ,アプリケーションを利用し、入力データとしてクライアントからの受信データではなく、ファイルデータを用いて、一度に大量のトランザクション処理を行う仕掛けをいう。 【0003】従来のセンターカット処理方式では、入力データファイル群に含まれる入力データファイルを未処理件数の多い順にソートを行い、ソート結果に従い処理対象を選択したり、或いは予め決められた処理計画に沿って処理を行っている(図7(B)参照)。 【0004】 【発明が解決しようとする課題】しかしながら、従来のセンターカット処理方式は、一度に大量の入力データを扱うためオンライン処理方式に比べ処理の効率は上がるものの、入力データファイル群に対し新たに入力データファイルを追加した場合、追加された入力データファイルの処理が、追加以前の入力データファイル群の処理終了後に行われていた(図8(A)参照)。そのため追加された入力データファイルに含まれるデータの件数分だけ処理時間が伸びてしまうという問題点があった(図8(B)参照)。また、予め決めた処理計画を再生成する必要があるという問題点があった。 【0005】そこで本発明の課題は、先の入力データファイルに、新たな追加の入力データファイルが加わった場合であっても、全体の処理時間の延長を極力抑制したセンターカット処理方式を提供することである。 【0006】 【課題を解決するための手段】前記課題を解決するために本発明は、入力済みの複数の処理対象データに加え、新規に処理対象データを格納可能なファイルを複数備えてなる入力データファイル群格納手段と、該入力データファイル群格納手段中から入力データファイルを選択し、自己以外の他の処理管理手段(APブローカ)による前記選択した入力データファイルの参照を禁止すると共に、該選択した入力データファイル以外の参照を許可する処理管理手段(APブローカ)と、該処理管理手段からの選択した入力データファイルの指定に対応して前記入力データファイル群格納手段中の入力データファイルを処理する処理実行手段(AP処理サーバ)とを備えたことを特徴とする。 【0007】このようにすれば、例えば図4に示すように、先の入力データファイルに対して追加の入力データファイルがあった場合に、先の入力データファイルと追加の入力データファイルとを平行処理することが可能となるので、入力データファイルのトータルの処理時間を短縮することが可能となる。 【0008】 【発明の実施の形態】(1)本発明の概要説明先ず、図3を参照しつつ本発明の概要を説明する。本発明は、複数のデータファイルの処理を行うセンターカットにおいて処理時間を短縮することを目的とする。 【0009】図1〜図3において、先の入力データファイル群に対して追加の入力データファイルがある場合を想定する(ステップS1)。第1,第2のAPブローカ3-1,3-2の何れかが第1,第2のAP処理サーバ6-1,6-2の何れかに対し処理を要求する際、入力データファイル群4より処理対象となる入力データファイルの選択を行う。この際、APブローカが処理対象を選択する際に、選択を行う時点で入力データファイル群から最も未処理件数の多い入力データファイルを選択し処理対象とする(ステップS2)。次いで処理対象とした入力データファイルへの参照を禁止すると共に(ステップS3)、選択した処理対象以外の入力データファイルの参照を許可しステップS1に戻る(ステップS4)。 【0010】AP処理サーバ6-1,6-2ではAPブローカ3-1,3-2からの一回の要求で入力データファイルに含まれる全ての未処理データを処理せず、要求の際に指定された件数分のデータを処理し(ステップS5)、処理終了をAPブローカに報告(応答)する(ステップS6)と共に、ステップSで禁止した参照を解除し(ステップS7)、ステップS1に戻る。再びAPブローカではAP処理サーバから処理完了の応答を受けると、入力データファイル群から、その時点で最も未処理件数の多い入力データファイルを選択し処理を行うようAP処理サーバに要求を行う(ステップS1〜S2)。 【0011】このようにして入力データファイル群に入力データファイル追加が行われた場合に、追加前の入力データファイル群の処理と平行して追加された入力データファイルの処理が行えるため、センターカットでの処理時間の短縮を行うことが可能となる(図4参照)。 【0012】(2)実施例の説明以下、本発明のセンターカット処理方式を図示の実施例に基づいて説明する。 (2‐1)実施例の構成図1を参照すると、本実施例のセンターカット処理システムSSは、ブローカ管理プロセス1、「処理管理手段」である第1,第2のAPブローカ3-1,3-2、「処理実行手段」である第1,第2のAP処理サーバ6-1,6-2、データ登録コマンド8と、動作情報ファイル2、入力データファイル群4、処理件数データファイル5、出力データファイル7から構成される。 【0013】ブローカ管理プロセス1は、APブローカ動作情報ファイル2のブローカ同時実行数(APブローカを同時に幾つ立ち上げるかを指定)に従い、第1,第2のAPブローカ3-1,3-2の起動を行う。即ち、ブローカ管理プロセス1のシステムの動作中にブローカ同時実行数が変更された場合に、値が増加した場合には増加分の第1,第2のAPブローカ3-1,3-2を起動し、値が減少した場合には減少分の第1,第2のAPブローカ3-1,3-2を停止する。動作情報ファイル2は、一回当処理件数2-1、第1,第2のAPブローカ3-1,3-2が同時に実行可能なブローカ同時実行数2-2を含む。ここに、一回当処理件数とは、第1,第2のAPブローカ3-1,3-2が第1,第2のAP処理サーバ6-1,6-2に対して入力データファイルの処理を要求した際に、第1,第2のAP処理サーバ6-1,6-2では入力データファイルの全てのデータを処理するのではなく、指示した件数分のデータだけ処理することを期待する。この「指示した件数」が「一回当処理件数」である。 【0014】入力データファイル群4は、入力データファイル4-a,4-b,4-c,4-dを含む。入力データファイルは図2に示す形式で、入力データファイルに含まれるデータ件数とデータを含む。処理件数データファイル5と出力データファイル群7は、入力データファイル群4の入力データファイル4-a,4-b,4-c,4-dに対応する件数データ5-a,5-b,5-c,5-dと、処理結果7-a,7-b,7-cをそれぞれ含む。 【0015】第1,第2のAPブローカ3-1,3-2は入力データファイル群4,処理件数データファイル5を監視し、未処理のデータを含むデータファイルの存在を調査する。未処理のデータを含むデータファイルを発見した場合、発見したデータファイルのうち最も未処理件数の多いファイルを一つ決定する。次いで動作情報ファイル2の一回当りの処理件数を取得し、第1,第2のAP処理サーバ6-1,6-2に対し未処理件数の多いファイルを一回当りの処理件数分だけ処理するよう要求する。第1,第2のAP処理サーバ6-1,6-2から処理完了の応答が返却された後、処理件数データファイルを更新し、入力データファイル群4,処理件数データファイル5の監視を行う。 【0016】第1,第2のAP処理サーバ6-1,6-2は第1,第2のAPブローカ3-1,3-2から要求されたデータを、要求された件数分の処理を行う。処理を開始する件数は処理件数データファイル5を参照し、得られた件数の次から行う。処理を完了後、結果を出力データファイルへ記録する。その後、第1,第2のAP処理サーバ6-1,6-2に対し要求を行った第1,第2のAPブローカに対し処理完了の応答を行う。データ登録コマンド8は、入力データファイル群4,処理件数データファイル5に対し、それぞれ新規データと対応する処理件数データを作成する。 【0017】(2‐2)実施例の動作次に、図1,2,5,6を参照しつつ本実施例の全体の動作について詳細に説明する。図5はAPブローカの動作フローチャートであり、図6はAP処理サーバの動作フローチャートである。 【0018】図5に示すように、まず、ブローカ管理プロセス1が動作情報ファイル2を参照する。動作情報ファイル2よりブローカ同時実行数2-2の示す数値’2’を取得する。ブローカ同時実行数2-2に従い第1,第2のAPブローカ3-1,3-2を起動する(ステップS11)。ブローカ管理プロセス1により起動された第1のAPブローカ3-1は、入力データファイル群4,処理件数データファイル5に対し、他のAPブローカ(この場合は第2のAPブローカ3-2)が参照しないように、これらのファイルに対してロックを行い、ロック完了後にファイルの参照を行う(排他的に参照を行う)(ステップS12,S13)。 【0019】第1のAPブローカ3-1は入力データファイル群4の入力データファイル4-a,4-b,4-c,4-dのデータ件数と処理件数データファイルの処理件数データ5-a,5-b,5-c,5-dを参照し(ステップS14)、「データ件数 - 処理件数」の演算により得られる未処理件数の最も多い入力データファイル4-cを選択する。例えば、「(入力データファイル4-aのデータ件数7168−処理件数データファイル5-aの処理件数3000=4168)」に対し、「(入力データファイル4-cのデータ件数5120−処理件数データファイル5-cの処理件数200=4920)」なので、未処理件数が最も多いのは、入力データファイル4-cである。 【0020】選択した入力データファイル4-cに対し排他ロックを行い第2のAPブローカ3-2による参照が行われないようにする(ステップS15)。入力データファイル4-cに対する排他ロックが完了後、入力データファイル群4,処理件数データファイル5に対するロックを解除する(ステップS16)。このロック解除の結果、入力データファイル4-cのみがロックされた状態で、ステップS11に戻りその他の入力データファイル4-a,4-b,4-dに対しては参照可能となる。従って、前記ステップS11〜S14の処理を繰り返し、入力データファイル4-cを除外した時点における最大未処理件数の入力データファイル4-aを選択することとなる。(段落番号0025で後述) 【0021】前記ステップS16に続いて動作情報ファイル2を参照し、一回当処理件数2-1で示される値'10' を取得する(ステップS17)。第1のAPブローカ3-1 はAP処理サーバ6-1 に対し、残り件数の最も多いデータ4-cを一回当処理件数2-1で示される値'10'件で処理するよう要求を行う(ステップS18)。第1のAPブローカ3-1 は第1のAP処理サーバ6-1に対する入力データファイル4-cの処理要求後、第1のAP処理サーバ 6-1より処理完了の応答を待つ(ステップS19、次に説明する図6のステップS36に示す「応答」を待つ)。 【0022】図6に示すように、第1のAPブローカ3-1より要求「残り件数の最も多いデータ4-cを一回当処理件数2-1で示される値'10'件で処理する」を受けた第1のAP処理サーバ6-1は、処理件数データファイル5 を参照する(ステップS31〜S33)。処理件数データファイル5より前記入力データ4-cに対応する処理件数5-cで示される値'200'を取得する(ステップS33)。次に処理件数5-cで示される値'200'の次の値'201'件目のデータを入力データ4-cより取得し処理を行う(ステップS34)。その後201件目から一回当処理件数2-1で示される値'10'件後の210件目データまで処理を行い、処理結果を出力データファイル7の処理結果7-cへ記録する(ステップS35)。記録終了後処理完了の応答を第1のAPブローカ3-1へと返却する(ステップS36)。 【0023】図5に示すように、第1のAPブローカ3-1は第1のAP処理サーバ6-1より処理完了の応答が返された後(ステップS19:YES)、処理件数データファイル5の処理件数5-cを値210に更新する(ステップS20)。更新後処理件数データファイル5のロックを解除し(ステップS21)、入力データファイル4-cに対する排他ロックを解除し(ステップS22)、再び第1のAPブローカ3-1は入力データファイル群4,処理件数データファイル5に対し排他的に参照を行う(ステップS12,S13)。 【0024】前記ステップS14において、未処理のデータがない場合は、処理件数データファイル5を解除し(ステップS23)、入力データファイル群4を解除し(ステップS24)、再び第1のAPブローカ3-1は入力データファイル群4,処理件数データファイル5に対し排他的に参照を行う(ステップS12,S13)。 【0025】第2のAPブローカ3-2も第1のAPブローカ3-1と同様に入力データファイル群4,処理件数データファイル5に対し排他的に参照を行う。このとき第1のAPブローカ3-1により入力データ4-cに対する排他ロックが行われている場合、第2のAPブローカ3-2は処理対象のデータ(最大未処理件数を持つデータ、段落番号0020で先述)として入力データ4-aを選択し、排他ロックを行う。排他ロック完了後、第2のAP処理サーバ6-2に対し入力データ4-aを行い、第2のAP処理サーバ6-2からの処理完了応答を待つ。 【0026】第2のAPブローカ3-2より入力データ4-aの処理要求を受けた第2のAP処理サーバ6-2は処理件数データファイルを参照し、処理件数5-aの示す値'3000'を取得する。入力データファイル4の入力データ4-aの3001件目のデータから3010件目までのデータを処理した後、処理結果を出力データファイル7の処理結果7-aに記録し、第2のAPブローカ3-2に処理完了応答を返す。第2のAPブローカ3-2は第2のAP処理サーバ6-2より処理完了の応答が返された後、処理件数データファイル5の処理件数5-aを値3010に更新する。更新後入力データファイル4-a に対する排他ロックを解除する。その後再び第1のAPブローカ3-1は入力データファイル群4,処理件数データファイル5に対し排他的に参照を行う。 【0027】データ登録コマンド8が実行されると、データ登録コマンド8は入力データファイル群4,処理件数データファイル5に対してそれぞれ入力データファイル4-dと4-d に対応する処理件数5-dを追加する。データ登録コマンド8による入力データファイル4-d,処理件数5-dの追加が行われた後、第1,第2のAPブローカ3-1,3-2は入力データファイル4-a,4-b,4-c、処理件数 5-a,5-b,5-cに加えそれぞれ入力データファイル4-d,処理件数5-dを処理対象として処理を続行する。 【0028】なお、本実施例によれば、例えば電子商取引におけるシステムにおいて、アプリケーションサーバでの障害対応や保守中に、クライントからの入力データがあった場合であっても、平行処理が可能なので、クライアントへの悪影響を最小限にすることが可能となる。 【0029】 【発明の効果】以上説明したように本発明によれば、センターカット処理において入力データファイル追加による処理時間の増加を必要最小限に押さえることである。その理由としては追加された入力データファイルの処理を現在処理中の入力データファイル群の処理後に行うのではなく、並行して処理を行うためである。
|
| 【出願人】 |
【識別番号】000004237 【氏名又は名称】日本電気株式会社
|
| 【出願日】 |
平成12年10月20日(2000.10.20) |
| 【代理人】 |
【識別番号】100093838 【弁理士】 【氏名又は名称】小橋川 洋二
|
| 【公開番号】 |
特開2002−132553(P2002−132553A) |
| 【公開日】 |
平成14年5月10日(2002.5.10) |
| 【出願番号】 |
特願2000−320326(P2000−320326) |
|