(57)【要約】【課題】  本発明は請求明細書作成バッチ処理における特定のディスクへの過負荷およびファイル形式の請求明細データのソート処理を削減する装置を提供することにある。【解決手段】  ジョブ振分サーバ１０のジョブ振分機能１１は、初期ロード実行電文８０を作成し、計算サーバ２０の初期ロード機能２１に送信することにより、初期ロード機能は、ＤＢサーバ４０にある請求明細データ、カード情報データをキャッシュサーバ３０上のメモリにロードする。次に、ジョブ振分機能１１は突合せ実行電文９０を作成し、計算サーバ２０の突合せ機能２２に送信することにより、突合合わせ機能２２は突合せ処理を行い、キャッシュサーバ３０上の請求明細データを更新する。【選択図】  図１
2012008670.tif 000002
【特許請求の範囲】
【請求項１】
それぞれが複数の項目を有する第1のデータおよび第2のデータを突合せするための突合せバッチ処理を複数の計算サーバに分散して処理させるジョブ処理システムであって、
前記第1のデータおよび前記第2のデータのそれぞれを保存する手段と、
前記第1のデータについて、当該第1のデータに含まれる項目を第1のキーとする第1の部分データを抽出する手段と、
前記第1のデータおよび前記第2のデータに共通する項目である第2のキーを用いて、前記第2の部分データから、前記第2のキーの内容が前記第1の部分データと共通する第2の部分データを特定する手段と、
前記第1の部分データおよび前記第2の部分データを含む突合せ処理依頼を、前記複数の計算サーバのいずれかに送信する手段とを有し、
前記突合せ処理依頼を受信した計算サーバは、前記第1の部分データおよび前記第2の部分データを突合せ処理を実行することを特徴とするジョブ処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、バッチ処理を複数の情報処理装置で分散して処理するための技術に関する。
【背景技術】
【０００２】
ＰＣを含む情報処理装置上で売上データや受注データなどのデータを集計処理する場合に、バッチ処理がおこなわれていることは一般的に知られている。
【０００３】
例えば、請求明細書データとそれに対応する金融カード情報データが別々のデータとして管理される場合、請求明細データの各顧客に対応するカード情報を金融カード情報から入れ込んで、二つのデータを一つのデータとして纏め上げ、一覧を作成するような場合に、データの突合せをＰＣ上のバッチ処理で行うようなものがある。
【０００４】
特許文献１では、複数の項目を持ったレコードを同じ項目のものをソートして、並べ替え、項目毎にデータをまとめ集計する旨について開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平１１−１８４８４３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
特許文献１のような従来型のバッチ処理では、ファイルを入出力とした一括処理によりディスクへ一時的に負荷が集中することがある。また、ファイルに対して処理を行う際には、事前にある項目でソート処理し、順処理を行っていくため、処理のたびにソート処理が発生し、処理時間の肥大傾向にある。
つまり、従来の方法においては、大量のデータの迅速な処理のためにディスク上にファイル形式の請求明細データを配置し処理を行っており、以下のような課題がある。
【０００７】
まず、請求明細書作成バッチ処理を実施するにはディスク上のファイルを読み出す必要がある。その際、特定のディスクへの負荷が大きく処理に遅延が発生するため、特定のディスクにおいて負荷を軽減することが可能な処理方式にする必要がある。
【０００８】
また、読み込んだ請求明細データに対し順処理を行うため、個人契約番号でソートしファイル出力する必要がある。その際、ソート処理は請求明細書作成バッチ処理における処理時間において大部分を占めており、処理時間の肥大化の要因となっている。かつファイル出力の際においては特定のディスクへの負荷が大きく処理に遅延が発生するため、特定のディスクにおいて負荷が軽減することが可能な処理をする必要がある。
【０００９】
本発明は、明細書作成バッチ処理において、特定のディスクへの負荷を軽減、およびソート処理の削減する機能を提供するものである。
【課題を解決するための手段】
【００１０】
上記課題を解決するために本発明では、第1のデータの項目を単位にすなわち、第1のキーとして突合せ処理を実行するものであって、第1のキーにより第1のデータから抽出された第1の部分データと、この第1の部分データに対応する第2の部分データの突合せ処理を、複数の装置(サーバ)で分散して実現する。ここで、第2の部分データについては、突合せ対象である第2のデータから抽出するものであって、第1のデータと第2のデータに共通する項目を第2のキーとして、この第2のキーの内容が共通する部分データ同士をまとめることで突合せ処理を行う。。また、本発明での一態様として、第1のデータと第2のデータを、キャッシュサーバの如き装置が有するメモリのような一時記憶装置に格納して、その後各部分データを突合せ処理を実行する各計算サーバに展開するよう構成してもよい。
【００１１】
なお、本発明の第1および第2のデータとしては、請求明細データおよびカード情報データが含まれる。また、本発明での「突合せ処理」とは、複数のデータをまとめることを示す。
【発明の効果】
【００１２】
本発明によれば、第1のキーおよび第2のキーを用いることで、第1および第2の部分データの対応付けが容易に可能になり、ソート処理を削減でき、高速な処理が可能である。
【図面の簡単な説明】
【００１３】
【図１】本発明の実施の形態を示すシステム構成ブロック図。
【図２】本発明の実施の形態における機能とテーブルの関連図。
【図３】図１における初期ロード処理の手順を示すフローチャート。
【図４】図１における突合せ処理の手順を示すフローチャート。
【図５】各テーブル、キャッシュの構成図。
【図６】各データの構成図。
【発明を実施するための形態】
【００１４】
以下、本発明の実施の形態について、図面を用いて詳細に説明する。
まず、各図面の概要を説明する。
図１は、本発明の実施の形態に示すシステム構成ブロック図である。
図２は、各機能とテーブル、キャッシュの関連図である。
図３は、初期ロード処理のフローを詳細に説明した概念図である。
図４は、突合せ処理のフローを詳細に説明した概念図である。
図５は、各テーブル、キャッシュの構成図で、請求明細テーブルは、個人を識別する個人契約番号と、その個人の持つカードを識別する内部カード番号と、請求金額、そのカード情報（クレジットカードなら引き落とし先の口座番号や、ポイント情報等のカードに関する情報）、明細情報（金融カードを利用した明細）等を記憶し、カード情報テーブルは、カードを識別する内部カード番号と、そのカード情報（（クレジットカードなら引き落とし先の口座番号や、ポイント情報等のカードに関する情報）が記憶される。請求明細キャッシュ、カード情報キャッシュとは、請求明細テーブルやカード情報テーブルの情報の項目のどれかをキーとしてその他の項目を値として、キャッシュ上で管理されるデータのことをいう。
図６は、各データの構成図で、初期ロード実行電文とは、後述する初期ロードの処理の開始を依頼するトリガーとなる情報であるジョブ実行キーをもつ。このジョブ実行キーの値はトリガーと解釈される情報であれば何でもよく必ずしも１に限定されるものではない。また、突合せ実行電文とは、後述する突合せ処理の開始を依頼するトリガーとなる情報であるジョブ実行キーと、どのデータの突合せ処理を行うかを指定する為のキーをもつ、図６では個人明細番号をキーとしている。突合せ実行電文のジョブ実行キーの値もトリガーと解釈される情報であれば何でもよく必ずしも２に限定されるものではない。
【００１５】
次に、各装置と各機能および各テーブルとの対応関係について、図１と図２を用いて説明する。
【００１６】
図１において、本発明の実施の形態に示すシステム構成ブロック図を示す。各装置はネットワークを介して互いに接続されている。また、各装置は、メモリ、ハードディスクを含む記憶部、CPUなどの処理部を有し、記憶部に格納されたプログラムモジュールに従って、処理部が情報処理を実行するものである。ジョブ振分サーバ１０が請求明細書作成処理を起動し、計算サーバ２０へ処理要求が送信される。計算サーバ２０は、ジョブ振分サーバ１０からの処理要求に対し、請求明細書作成処理を行う。ジョブ振分サーバ１０の処理部は、プログラムモジュールのひとつであるジョブ振分機能１１に従い処理を実行する。計算サーバ２０の処理部は、プログラムモジュールである初期ロード機能２１、突合せ機能２２に従い処理を実行する。キャッシュサーバ３０の処理部は、プログラムモジュールであるキャッシング機能３１に従い処理を実行する。また、前提としてDBサーバ４０は、事前に営業店端末５０より送信された請求明細データおよびカード情報データを請求明細テーブルとカード情報テーブルとそれぞれに保持しており、本データが処理対象となる。
【００１７】
図２において、初期ロード機能２１、突合せ機能２２は、それぞれ情報を格納するテーブルおよびキャッシュと対応付けられており、各機能によって各テーブルおよびキャッシュが更新される。初期ロード機能２１は、請求明細テーブル３００・カード情報テーブル３０１・請求明細キャッシュ３０２・カード情報キャッシュ３０３と対応付けられており、初期ロード機能２１によって、請求明細キャッシュ３０２・カード情報キャッシュ３０３が更新される。突合せ機能２２は、請求明細キャッシュ３０２・カード情報キャッシュ３０３と対応付けられている。
【００１８】
次に、各機能の内訳について、図１および図２を用いて説明する。なお以降、各機能で実行する内容は、プログラムで実装される各機能を、装置が有する上述のＣＰＵの如き処理部がそのプログラムに従って実行することを示す。
【００１９】
図１において、ジョブ振分サーバ１０はジョブ振分機能１１を有し、初期ロード実行電文８０を作成し、計算サーバ２０の初期ロード機能２１へ送信する。
【００２０】
計算サーバ２０は初期ロード機能２１を有し、ジョブ振分機能１１より受信した初期ロード実行電文８０を契機に初期ロード処理を実行し、ジョブ振分機能１１へ通知電文を送信する。また、計算サーバ２０は突合せ機能２２を有し、ジョブ振分機能１１より受信した突合せ実行電文９０を契機に突合せ処理を実行し、ジョブ振分機能１１へ通知電文を送信する。キャッシュサーバ３０はキャッシング機能３１を有し、初期ロード機能２１および突合せ機能２２より受信した請求明細データおよびカード情報データをメモリ上に格納、また取得要求に応じて送信する。
【００２１】
以下、本実施の形態の処理内容について図３および図４のフローチャートに沿って説明する。
【００２２】
本発明における処理手順は、初期ロード処理と、突合せ処理に分けられる。初期ロード処理は、送信された初期ロード実行電文８０に対し、初期ロードを実施し処理結果の通知を行う処理であり、DBサーバ４０から請求明細データ取得、キャッシュサーバ３０へ格納するまでの処理である。突合せ処理は、送信された突合せ実行電文９０に対し、突合せ処理を実施し処理結果の通知を行う処理であり、キャッシュサーバ３０から請求明細データおよびカード情報データの取得、請求明細データの更新、請求明細データを請求金額に応じてファイル出力するまでの処理である。
【００２３】
＜初期ロード処理＞
まず、初期ロード処理について図３のフローに沿って説明する。初期ロード処理は、ジョブ振分サーバ１０から送信される、ＤＢサーバ４０にある請求明細データとカード情報データをキャッシュサーバ３０上のキャッシュへの呼び出しを依頼する初期ロード実行電文８０が作成し、計算サーバ２０の初期ロード機能へ送信する。この初期ロード実行電文８０を受信した計算サーバ２０の初期ロード機能は初期ロードを開始する。以下、順を追って詳しく説明する。
【００２４】
まず、ステップ１００において、ジョブ振分機能１１において図６に示す初期ロード実行電文８０を作成し、計算サーバ２０の初期ロード機能２１に送信する。初期ロード実行電文８０は、ジョブ振分機能１１から初期ロード機能２１に送信することで、実行のトリガとなる電文である。初期ロード実行電文８０には、ジョブ実行キーである1を付加し作成する。初期ロード実行電文８０とは初期ロードの開始を初期ロード機能２１に依頼するもので、本実施の形態ではジョブ実行キーである１をトリガーとして処理を始めるようしたが、loadのような文字列であるコマンドでもよいし、違う数字でもよく、処理の開始を決定できる情報をいう。
【００２５】
ステップ１０１において、初期ロード機能２１はジョブ振分機能１１より初期ロード実行電文８０を受信する。
【００２６】
ステップ１０２において、初期ロード機能２１は請求明細テーブル６０の請求明細データに対する取得依頼をDBサーバ４０へ送信する。
【００２７】
ステップ１０３において、DBサーバ４０は初期ロード機能２１より請求明細テーブル６０の請求明細データに対する取得依頼を受信する。この場合、請求明細データの全てのデータを取得するが、その一部を取得することとしてもよい。
【００２８】
ステップ１０４において、DBサーバ４０は請求明細テーブル６０の請求明細データを初期ロード機能２１へ送信する。本例では、図５における請求明細テーブルの個人契約番号001、内部カード番号101、請求金額1000、カード情報801、明細内容aaaの請求明細データ、個人契約番号001、内部カード番号201、請求金額0、カード情報901、明細内容bbbの請求明細データ、個人契約番号002、内部カード番号102、請求金額2000、カード情報802、明細内容cccの請求明細データをDBより取得し、初期ロード機能２１へ送信する。
【００２９】
ステップ１０５において、初期ロード機能２１はDBサーバ４０より請求明細テーブル６０の請求明細データを受信する。受信した請求明細データは、計算サーバ２０のメモリ上に格納する。本例では、図５における請求明細テーブル６０の個人契約番号001、内部カード番号101、請求金額1000、カード情報801、明細内容aaaの請求明細データ、個人契約番号001、内部カード番号201、請求金額0、カード情報901、明細内容bbbの請求明細データ、個人契約番号002、内部カード番号102、請求金額2000、カード情報802、明細内容cccの請求明細データをメモリ上に格納する。
【００３０】
ステップ１０６において、初期ロード機能２１は計算サーバ２０のメモリ上より格納されている請求明細データを取得し、キャッシング機能３１へ送信する。また、この請求明細データは計算サーバに一度呼び出されてからではなく、直接キャッシュ機能へ送信されることとしてもよい。請求明細データの全てのデータを取得するが、その一部を取得することとしてもよい。
【００３１】
送信の際には、個人契約番号をキー、他の項目を値とし、キーと値の組み合わせで格納する。
【００３２】
取得要求の際には個人契約番号を指定することで、個人契約番号に紐付く値をキャッシング機能３１へ送信する。そのことで、個人契約番号単位でのデータアクセスを実現する。また、送信後には計算サーバ２０のメモリ上から、請求明細データを削除する。本例では、図５における請求明細テーブル６０の個人契約番号001、内部カード番号101、請求金額1000、カード情報801、明細内容aaaの請求明細データ、個人契約番号001、内部カード番号201、請求金額0、カード情報901、明細内容bbbの請求明細データ、個人契約番号002、内部カード番号102、請求金額2000、カード情報802、明細内容cccの請求明細データを計算サーバ２０のメモリ上より取得する。取得した請求明細データは、図５における請求明細キャッシュ６１の形式で送信し、キーとして個人契約番号を指定し、値として内部カード番号、請求金額、カード情報、明細内容を指定する。(図５における請求明細テーブルの個人契約番号001をキーとし、内部カード番号101、請求金額1000、カード情報801、明細内容aaaからなる値と、内部カード番号201、請求金額0、カード情報901、明細内容bbbからなる値を送信する。また、個人契約番号002をキーとし、内部カード番号102、請求金額2000、カード情報802、明細内容cccからなる値を送信する。)
ステップ１０７において、キャッシング機能３１は初期ロード機能２１より請求明細データを受信する。本例では、図５の請求明細キャッシュ６１の形式で請求明細データを受信する。
【００３３】
ステップ１０８において、キャッシング機能３１は請求明細データをキャッシュサーバ３０内のメモリ上へ格納し、初期ロード機能２１へ完了通知を送信する。本例では、図５の請求明細キャッシュ６１の形式で請求明細データをメモリ上に格納する。(図５ににおける請求明細キャッシュの個人契約番号001をキーとし、内部カード番号101、請求金額1000、カード情報801、明細内容aaaからなる値と、内部カード番号201、請求金額0、カード情報901、明細内容bbbからなる値をメモリ上へ格納する。また、個人契約番号002をキーとし、内部カード番号102、請求金額2000、カード情報802、明細内容cccからなる値をメモリ上へ格納する。) このキャッシュサーバ上のメモリはキャッシュサーバ単体のメモリだけでなく、複数のキャッシュサーバのメモリからなるキャッシュ空間であっても良い。
【００３４】
ステップ１０９において、初期ロード機能２１はキャッシング機能３１より完了通知を受信する。
【００３５】
ステップ１１０において、初期ロード機能２１はカード情報テーブル７０のカード情報データに対する取得依頼をDBサーバ４０へ送信する。この場合、カード情報データの全てのデータを取得するが、その一部を取得することとしてもよい。
【００３６】
ステップ１１１において、DBサーバ４０は初期ロード機能２１よりカード情報テーブル７０のカード情報データに対する取得依頼を受信する。ステップ１１２において、DBサーバ４０はカード情報テーブル７０のカード情報データを初期ロード機能２１へ送信する。本例では、図５におけるカード情報テーブルの内部カード番号101、カード情報AAAからなるデータ、内部カード番号201、カード情報BBBからなるデータ、内部カード番号102、カード情報CCCからなるデータをDBより取得し、初期ロード機能２１へ送信する。
【００３７】
ステップ１１３において、初期ロード機能２１はDBサーバ４０よりカード情報テーブル７０のカード情報データを受信する。受信したカード情報データは、計算サーバ２０のメモリ上に一時的に格納する。本例では、図５におけるカード情報テーブルの内部カード番号101、カード情報AAAからなるデータ、内部カード番号201、カード情報BBBからなるデータ、内部カード番号102、カード情報CCCからなるデータをメモリ上に格納する。
【００３８】
ステップ１１４において、計算サーバ２０のメモリ上より格納されているカード情報データを取得し、初期ロード機能２１はキャッシング機能３１へカード情報データを送信する。送信の際には、内部カード番号をキー、カード情報を値とし、キーと値の組み合わせで格納する。取得要求の際には内部カード番号を指定することで、内部カード番号に紐付く値をキャッシング機能３１送信する。また、このカード情報データは計算サーバに一度呼び出されてからではなく、直接キャッシュ機能へ送信されることとしてもよい。
【００３９】
そのことで、内部カード番号単位でのデータアクセスを実現する。また、送信後には計算サーバ２０のメモリ上から、カード情報データを削除する。本例では、図５におけるカード情報テーブル７０の内部カード番号101、カード情報AAAからなるデータ、内部カード番号201、カード情報BBBからなるデータ、内部カード番号102、カード情報CCCからなるデータを計算サーバ２０のメモリ上より取得する。取得したカード情報データは、図５におけるカード情報キャッシュ７１の形式で送信し、キーとして内部カード番号を指定し、値としてカード情報を指定する。(図５ににおけるカード情報テーブルの内部カード番号101をキーとし、カード情報AAAを値として送信する。内部カード番号201をキーとし、カード情報BBBを値として送信する。内部カード番号102をキーとし、カード情報CCCを値として送信する。)
ステップ１１５において、キャッシング機能３１は初期ロード機能２１よりカード情報データを受信する。
【００４０】
ステップ１１６において、キャッシング機能３１はカード情報データをキャッシュサーバ４０内のメモリ上へ格納し、初期ロード機能２１へ完了通知を送信する。本例では、図５のカード情報キャッシュ７１の形式でカード情報データをメモリ上に格納する。(図５ににおけるカード情報キャッシュの内部カード番号101をキーとし、カード情報AAAを値としてメモリ上へ格納する。内部カード番号201をキーとし、カード情報BBBを値としてメモリ上へ格納する。内部カード番号102をキーとし、カード情報CCCを値としてメモリ上へ格納する。)
ステップ１１７において、初期ロード機能２１はキャッシング機能３１より完了通知を受信する。
【００４１】
ステップ１１８において、初期ロード機能２１はジョブ振分機能１１へ完了通知を送信する。
【００４２】
ステップ１１９において、ジョブ振分機能１１は初期ロード機能２１より完了通知を受信する。
以上が初期ロード機能の詳細である。
【００４３】
＜突き合わせ処理＞
次に突合せ処理について以下に示す。突合せ処理は、ジョブ振分サーバ１０から送信される、突合せの処理依頼である突合せ実行電文９０を計算サーバ２０の突合せ機能２２が受信するたびに、計算サーバ２０は突合せ処理を個人契約番号ごとに実行する。
【００４４】
この場合、突合せ実行電文９０は、個人契約番号ごとに作成されるが、この個人契約番号は複数選ばれ、２つや３つ毎のセットとして、各計算サーバ２０の突合せ機能２２へ送信されることとしてもよい。
【００４５】
また、計算サーバ２０は一つの場合だけではなく、複数あり、そのそれぞれの計算サーバが個人契約番号ごとの突合せ実行電文９０を受信し、そのそれれぞれの計算サーバ２０が突合せ処理を個人契約番号ごとに実行するとしてもよい。
【００４６】
具体的な処理を図４のフローに従って以下に説明する。
【００４７】
まず、ジョブ振分サーバ１０は、ＤＢサーバ４０にある請求明細テーブル６０を読み込み、請求明細テーブルから個人契約番号を全て抽出し、その各個人契約番号と、その各個人契約番号について突合せ処理が完了済みか、未完了かを管理するフラグ情報を紐づけて管理する。
【００４８】
ステップ２０１において、突合せ処理が終了していない（完了フラグがたっていない）個人契約番号を選びだして、ジョブ振分機能１１において図６に示す突合せ実行電文９０を作成し、各計算サーバの突合せ機能２２に送信する。突合せ実行電文９０は、ジョブ振分機能１１から突合せ機能２２に送信することで、実行のトリガとなる電文である。
【００４９】
具体的には、請求明細テーブルから個人契約番号００１と００２を抽出して、個人契約番号００１の突合せ実行電文９０と、個人契約番号００２の突合せ実行電文９０を作成して、そのそれぞれを各計算サーバ２０へ送信する。図６では個人契約番号００１の場合を示している。
【００５０】
突合せ実行電文９０には、先に述べた個人契約番号とジョブ実行キーが付加される。ジョブ実行キーとは、突合せ機能２２が突合せ実行電文９０を受信した際に、突合せ処理を開始するきっかけとなるトリガー情報である。図６ではジョブ実行キーを２としたが、これは任意に決めればよいもので、文字列によるコマンドのようなものでもよい。
【００５１】
突合せ機能２２はこの突合せ実行電文９０を受け取ることで、指定された個人契約番号に関する突合せ処理を始める。本例では、ジョブ実行キーである2と個人契約番号である001を組み合わせ突合せ実行電文９０を作成する。
【００５２】
ステップ２０２において、突合せ機能２２はジョブ振分機能１１より突合せ実行電文９０を受信する。
【００５３】
ステップ２０３において、突合せ機能２２はキャッシング機能３１へ請求明細キャッシュ６１から1個人契約番号分の請求明細データの取得要求を送信する。本例では、受信した突合せ実行電文９０より個人契約番号である001を取得し、個人契約番号001に対応する請求明細データの取得要求を送信する。
【００５４】
ステップ２０４において、キャッシング機能３１は突合せ機能２２より請求明細キャッシュ６１から1個人契約番号分の請求明細データの取得要求を受信する。本例では、個人契約番号001に対する請求明細データの取得要求を受信する。
【００５５】
ステップ２０５において、キャッシング機能３１は突合せ機能２２へ請求明細キャッシュ６１から1個人契約番号分の請求明細データをキャッシュサーバ３０のメモリ上から取得し送信する。本例では、個人契約番号001に対応する請求明細データである内部カード番号101の値および内部カード番号201の値をメモリ上より取得し送信する。図５における請求明細キャッシュ６１の内部カード番号101に対応する値である、請求金額1000、カード情報801、明細内容aaaおよび、内部カード番号201に対応する値である、請求金額0、カード情報901、明細内容bbbをキャッシュサーバ３０のメモリ上より取得し突合せ機能２２へ送信する。
【００５６】
ステップ２０６において、突合せ機能２２はキャッシング機能３１より請求明細データを受信する。受信した請求明細データは、計算サーバ２０のメモリ上へ格納する。本例では、個人契約番号001に対応する請求明細データである内部カード番号101の値および内部カード番号201の値を受信し、計算サーバ２０のメモリ上へ格納する。図５における請求明細キャッシュ６１の内部カード番号101に対応する値である、請求金額1000、カード情報801、明細内容aaaおよび、内部カード番号201に対応する値である、請求金額0、カード情報901、明細内容bbbをキャッシング機能２１より受信し、計算サーバ２０のメモリ上へ格納する。
【００５７】
ステップ２０７において、突合せ機能２２は受信した請求明細データから内部カード番号を計算サーバ２０のメモリ上より取得する。この場合、キャッシュサーバ３０上のメモリ上の請求明細データから直接取得することとしてもよい。本例では、受信した請求明細データから内部カード番号101と内部カード番号201を計算サーバ２０のメモリ上より取得する。
【００５８】
ステップ２０８において、突合せ機能２２はキャッシング機能３１へカード情報キャッシュ７１からカード情報データの取得要求を送信する。本例では、内部カード番号101と内部カード番号201に対応するカード情報データの取得要求を送信する。
【００５９】
ステップ２０９において、キャッシング機能３１は突合せ機能２２よりカード情報キャッシュ７１のカード情報データの取得要求を受信する。
【００６０】
ステップ２１０において、キャッシング機能３１は突合せ機能２２へカード情報キャッシュ７１から受信した内部カード番号に対応するカード情報データをキャッシュサーバ３０のメモリ上より取得し送信する。本例では、内部カード番号101と内部カード番号201に対応するカード情報AAA、BBBをキャッシュサーバ３０のメモリ上より取得し送信する。
【００６１】
ステップ２１１において、突合せ機能２２はキャッシング機能３１よりカード情報データを受信し、計算サーバ２０のメモリ上へ格納する。本例では、内部カード番号101と内部カード番号201に対応するカード情報であるAAA、BBBを受信し、計算サーバ２０のメモリ上へ格納する。
【００６２】
ステップ２１２において、突合せ機能２２は計算サーバ２０のメモリ上からカード情報を取得し、請求明細データを更新する。本例では、計算サーバ２０のメモリ上から内部カード番号101に対応するカード情報AAAおよび内部カード番号201に対応するカード情報BBBを取得し、請求明細データの内部カード番号101に対応する請求明細データのカード情報をAAAへ、内部カード番号201に対応する請求明細データのカード情報をBBBへ更新する。
【００６３】
ステップ２１３において、突合せ機能２２は請求明細データの請求金額をチェックし、金額が0の場合は、ステップ２１４において、請求明細除外ファイルに当該請求明細データを出力する。そうでない場合には、ステップ２１５において、請求明細ファイルに出力する。本例では、内部カード番号101に対応する請求明細データは、請求金額が1000であるため、ステップ２１５において請求明細ファイルへ出力する。(出力内容としては、個人契約番号001、内部カード番号101、請求金額1000、カード情報AAA、明細内容aaaを請求明細ファイルへ出力する。)内部カード番号201に対応する請求明細データは請求金額が0であるため、ステップ２１４において請求明細除外ファイルへ出力する。出力内容としては、個人契約番号001、内部カード番号201、請求金額0、カード情報BBB、明細内容bbbを請求明細除外ファイルへ出力する。
【００６４】
ステップ２１６において、突合せ機能２２はジョブ振分機能１１は完了通知を送信する。完了通知は突合せ処理が完了した突合せ実行電文９０の個人契約番号を付加し送信する。本例では、個人契約番号001を付加し送信する。
【００６５】
ステップ２１７において、ジョブ振分機能１１は突合せ機能２２より完了通知を受信する。完了通知を受信したジョブ振分機能１１は対応する個人契約番号のフラグを完了済みに更新する。
以上が突合せ機能の詳細である。
【符号の説明】
【００６６】
１０…ジョブ振分サーバ、１１…ジョブ振分機能、２０…計算サーバ、２１…初期ロード機能、２２…突合せ機能、３０…キャッシュサーバ、３１…キャッシング機能、４０…ＤＢサーバ、６０…請求明細テーブル、６１…請求明細キャッシュ、７０…カード情報テーブル、７１…カード情報キャッシュ
【図１】
2012008670.tif 000003
【図２】
2012008670.tif 000004
【図３】
2012008670.tif 000005
【図４】
2012008670.tif 000006
【図５】
2012008670.tif 000007
【図６】
2012008670.tif 000008