(57)【要約】【課題】複数のシステムの間におけるデータ送信をするに際し、データ蓄積・取り出しの際の障害等に起因するデータ消失が発生しても、データ消失から短時間に容易に回復させることができるデータ転送システムを提供すること。【解決手段】中継サーバ２００にメッセージの履歴バックアップ手段４４０を設け、障害等に起因するデータ消失が発生したときにこの履歴バックアップ手段４４０に格納されたメッセージを探索し、再送することを可能とする制御手段４８０を設けた。【選択図】図１
2006309503.tif 000002
【特許請求の範囲】
【請求項１】
第１のシステムコンピュータ１００と中継サーバ２００と第２のシステムコンピュータ３００を備えたデータ転送システムであって、
（１）前記第１のシステムコンピュータ１００は、第１のアプリケーション１１０と、該第１のアプリケーション１１０のデータを格納する業務データベース１２０と、該業務データベース１２０から、前記第２のシステムコンピュータ３００へ送信するデータを前記中継サーバ２００へ送信するバックエンドサーバ１３０とを備え、
（２）前記中継サーバ２００は、前記バックエンドサーバ１３０からのデータを受信する第１の中継用送受信手段４１０と、該第１の中継用送受信手段４１０が受信したデータを一時的に蓄積する第１のバッファ４２０と、前記第１のバッファ４２０に蓄積されたデータを前記第２のシステムコンピュータ３００で取り扱い可能なフォーマットに変換するデータ変換手段４３０と、前記データ変換手段４３０により変換される前または変換された後のデータおよび該データ毎に送信先のコンピュータが特定可能な送信先情報を蓄積する履歴バックアップ手段４４０と、前記データ変換手段４３０で得られた変換後のデータを直接または前記履歴バックアップ手段４４０を経由して得たデータを一時的に蓄積する第２のバッファ４６０と、前記第２のバッファ４６０に蓄積されたデータを前記第２のシステムコンピュータ３００に送信する第２の中継用送受信手段４７０を備え、
（３）前記第２のシステムコンピュータ３００は、前記第２の中継用送受信手段４７０からデータを受信し格納処理するフロントエンドサーバ３０５と、該フロントエンドサーバ３０５で受信したデータを格納する基幹データベース３１０と、該基幹データベースに蓄積されたデータを利用する基幹アプリケーション３２０を備えたデータ転送システム、
であって、
さらに、前記第２のシステムコンピュータ３００の内部で障害が発生し、データ消失した場合において、前記履歴バックアップ手段４４０に蓄積されている送信済みデータを前記第２のシステムコンピュータ３００へ再送するべく、前記履歴バックアップ手段４４０を制御する制御手段４８０を備えていることを特徴とするデータ転送システム。
【請求項２】
前記履歴バックアップ手段４４０は、送信した個々のデータ毎に、送信元のコンピュータが特定可能な送信元情報、送信時刻に関する情報を記憶するものである請求項１に記載のデータ転送システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ転送システムに関する。
【背景技術】
【０００２】
企業の業務処理システムの構築において、アプリケーションサーバを配置してシステムを構築するのが一般的である。１つの業務処理の実行に際し、１台のサーバへの入力データを起点にして、数台のサーバを経由させて所望の結果を得ることが少なくない。
【０００３】
特に、全く新しい業務をシステム化する場合に、その業務に関連する既存のシステムが存在するときに、そのシステムをあわせて全体を一新するよりも、既存のシステムを残して新しく発生した業務に関する最小限の部分を新規に開発し、これらの間でデータの交換を可能にするのが、コスト削減、開発期間の短縮、既存システムとの整合性向上の面から、実用的である。また、上記のような新しい業務に関するパッケージソフトが市販されている場合には、そのパッケージソフトと上記既存のシステムとの間でデータの交換をする必要があるが、この場合、えてしてパッケージソフトと既存のシステムのプラットフォームが異なるため、データ交換のための種々の工夫を要する場合がある。このように異なるプラットフォームのシステムの間でデータを交換する場合の例として、電子商取引のためにインターネットからのアクセスを受け付けるウェブサーバと、既存の会計処理、購買処理等をおこなうホストシステム（以下基幹システム）へ処理を連動させる場合があげられる。
このような、異なるプラットフォームの２つのシステムの間でのデータの交換を効率的に行う技術として、特許文献１に開示されたメッセージ転送技術がある。
【０００４】
この技術の概略について図２および３を用いて説明する。図２は、従来のデータ転送システムのブロックダイアグラムである。このシステムは、第１のシステムコンピュータ１００、第２のシステムコンピュータ３００およびこれらの間のデータの交換を中継する中継サーバ２００を主要な要素としている。
【０００５】
第１のシステムコンピュータ１００は、電子商取引のフロントエンドとして利用されるウェブアプリケーション１１０およびこのアプリケーションのデータを格納し管理する業務データベース１２０および業務データベース１２０のデータを第２のシステムコンピュータ３００へ転送するためのバックエンドサーバ１３０を備えている。また、第２のシステムコンピュータ３００は、第１のシステムコンピュータ１００から受信したデータを格納し管理する基幹データベース３１０および、前記中継サーバ２００から受け取ったデータを受信する機能と、受信したデータを基幹データベース３１０へ正常に格納されたか否かのデータ状態情報を認知する機能と、該データ状態情報を中継サーバ２００へ送信する機能を併せもつフロントエンドサーバ３０５と、基幹データベース３１０に格納されたデータを利用する基幹アプリケーション３２０を備え、さらに該フロントエンドサーバ３０５が認知した基幹データベース３１０のデータ状態情報および、第２のアプリケーションによって更新処理された基幹データベース３１０のデータを中継サーバ２００へ送信するための通信ポートを併せもっている。図３は、前記中継サーバ２００の詳細な構成を示すブロックダイアグラムである。前記中継サーバ２００は、バックエンドサーバ１３０からのデータを受信する第１の中継用送受信手段４１０、この第１の中継用送受信手段４１０が受信したデータを一時的に蓄積する第１のバッファ４２０、この第１のバッファ４２０のデータを基幹データベース３１０が読み取れるように文字コードの変換やフォーマット変換を行うデータ変換手段４３０、このデータ変換手段４３０が変換したデータを一時的に蓄積する第２のバッファ４６０、第２のバッファ４６０から順次データを取り出して第２のシステムコンピュータ３００に送信する第２の中継用送受信手段４７０を主要な構成要素としている。
【０００６】
図２および図３は、第１のシステムコンピュータ１００から第２のシステムコンピュータ３００へのデータの転送に関する部分のみ図示しているが、逆方向のデータの転送についても図示しない同様の仕組みが備えられている。
【０００７】
このデータ転送システムが第１のシステムコンピュータ１００から第２のシステムコンピュータ３００へのデータを転送する際の動作は、概略次の通りである。
【０００８】
電子商取引において顧客が入力した発注データ等は、ウェブアプリケーション１１０が受け取って業務データベース１２０のデータを更新する。バックエンドサーバ１３０は、所定のタイミングで業務データベース１２０のデータの更新を監視しており、データの更新を発見した場合には、そのデータを前記中継サーバ２００に送信する。このとき、更新されたデータを比較的小さな単位であるメッセージに分解して送信するのである。前記中継サーバ２００の第１の中継用送受信手段４１０は、バックエンドサーバ１３０から受信したデータをメッセージ毎に第１のバッファ４２０に先入れ先出しのルールに従って一時的に蓄積する。第１のバッファ４２０に蓄積されれば、バックエンドサーバ１３０内のバッファに格納されているデータは削除される。第１のバッファ４２０のデータは逐次データ変換手段４３０が各メッセージを読み出して、所定の文字コード変換やフォーマット変換を行うことで基幹データベース３１０で取り扱える形式に変換し、その結果を第２のバッファ４６０に一時的に蓄積する。
【０００９】
第２のバッファ４６０に蓄積されているメッセージは第２の中継用送受信手段４７０が逐次読み出して、第２のシステムコンピュータ３００の基幹データベース３１０に送信する。基幹データベース３１０は、メッセージ毎にデータを受信し、メッセージを元の更新されたデータへと再構築する。こうして、基幹データベース３１０に格納されたデータは、基幹アプリケーション３２０で利用可能になる。
【００１０】
このようにして、データの文字コード体系やフォーマットが異なるデータを扱う２つのシステムコンピュータの間でデータの交換が可能になる。
【００１１】
このようなデータの転送システムにおいては、基本的に第１のバッファ４２０や第２のバッファ４６０のデータはひとたび次のステップへの送信ができれば、送信元のデータは廃棄される。すなわち、第１のバッファから第２のバッファへデータ転送されると、第１のデータ管理手段４５５によって第１のバッファの該データは廃棄される。また、第２のバッファから転送されるデータが第２のシステムコンピュータ３００の基幹データベース３１０に受け入れられたか否かをフロントエンドサーバ３０５が検出して、受け取られたと判断されれば、データ受理の通知を該フロントエンドサーバ３０５から第２の中継用送受信手段４７０を経由して第２のデータ管理手段４５０へ伝達され、該データ管理手段４５０によって基幹データベースに格納済みの第２のバッファ４６０のデータは破棄される。
【００１２】
一方、第２のシステムコンピュータ３００の基幹データベース３１０に格納されたデータが何らかの障害により消失した場合には、旧来の既存システムを含む第１のシステムコンピュータ１００で再送用データの作成のために多大な処理時間をかけて再送するか、もしくは再作成が困難であり再送信が不可能であった。
【特許文献１】特許第２９３３０９５号公報
【発明の開示】
【発明が解決しようとする課題】
【００１３】
上記の通り、従来のデータ転送システムにおいては、障害発生時のデータ再送処理はオペレータによるデータの修復作業を要し、障害からの復帰に、たとえば、１日程度といった長時間を要するという問題があった。
【００１４】
本発明の目的は、上記のような複数のシステムの間におけるデータの転送を行うに際し、障害発生時でも、障害からの復帰が容易なデータ転送システムを提供することにある。
【課題を解決するための手段】
【００１５】
上記課題を解決するために、本発明によれば、第１のシステムコンピュータ１００と中継サーバ２００と第２のシステムコンピュータ３００を備えたデータ転送システムであって、
（１）前記第１のシステムコンピュータ１００は、第１のアプリケーション１１０と、該第１のアプリケーション１１０のデータを格納する業務データベース１２０と、該業務データベース１２０から、前記第２のシステムコンピュータ３００へ送信するデータを前記中継サーバ２００へ送信するバックエンドサーバ１３０とを備え、
（２）前記中継サーバ２００は、前記バックエンドサーバ１３０からのデータを受信する第１の中継用送受信手段４１０と、該第１の中継用送受信手段４１０が受信したデータを一時的に蓄積する第１のバッファ４２０と、前記第１のバッファ４２０に蓄積されたデータを前記第２のシステムコンピュータ３００で取り扱い可能なフォーマットに変換するデータ変換手段４３０と、前記データ変換手段４３０により変換される前または変換された後のデータおよび該データ毎に送信先のコンピュータが特定可能な送信先情報を蓄積する履歴バックアップ手段４４０と、前記データ変換手段４３０で得られた変換後のデータを直接または前記履歴バックアップ手段４４０を経由して得たデータを一時的に蓄積する第２のバッファ４６０と、前記第２のバッファ４６０に蓄積されたデータを前記第２のシステムコンピュータ３００に送信する第２の中継用送受信手段４７０を備え、
（３）前記第２のシステムコンピュータ３００は、前記第２の中継用送受信手段４７０からデータを受信し格納処理するフロントエンドサーバ３０５と、該フロントエンドサーバ３０５で受信したデータを格納する基幹データベース３１０と、該基幹データベースに蓄積されたデータを利用する基幹アプリケーション３２０を備えたデータ転送システム、
であって、
さらに、前記第２のシステムコンピュータ３００の内部で障害が発生し、データ消失した場合において、前記履歴バックアップ手段４４０に蓄積されている送信済みデータを前記第２のシステムコンピュータ３００へ再送するべく、前記履歴バックアップ手段４４０を制御する制御手段４８０を備えていることを特徴とするデータ転送システムが提供される。
【発明の効果】
【００１６】
上記のような複数のシステムの間におけるデータの転送を行うに際し、障害発生時でも、障害から短時間で容易に復帰させることができる。
【発明を実施するための最良の形態】
【００１７】
以下、本発明の好ましい実施形態を図面を用いて説明する。図１は、本実施形態の中継サーバ２００の詳細構成を示すブロックダイアグラムであり、図３に対応するものである。
なお、本実施形態は、データ変換手段４３０の出力するメッセージを履歴として蓄積してゆく履歴バックアップ手段４４０および障害発生時にオペレータからの指示を受けて履歴バックアップ手段４４０に蓄積されたメッセージのうち、障害が発生した通信に含まれるメッセージを選択して再送するために履歴バックアップ手段４４０や第２のバッファ４６０や第２の中継用送受信手段４７０を動作させる制御手段４８０を備えている点を除いて、図２および図３に示した従来の技術と同じである。したがって、図３に対応する図面およびこれに関する説明を省略する。また、図２および図３に対応する手段が存在する場合には、同じ符号を付して説明を省略する。
【００１８】
履歴バックアップ手段４４０には、データ変換手段４３０の出力するメッセージが履歴として蓄積されており、第１のバッファ４２０や第２のバッファ４６０のデータと異なり、所定の期間が経過するまではいつでも読み出し可能にインデックスを付されて保存されている。具体的には、履歴バックアップ手段４４０には、各メッセージ毎に、送信元のコンピュータのＩＤ、送信元のコンピュータでそのメッセージを送信したアプリケーションのＩＤ、送信先のコンピュータのＩＤ、送信時刻、送信先のアプリケーションのＩＤ、データの種類、データの発生順（例えばシーケンス番号順）の情報とあわせて保存されている。
【００１９】
第２のシステムコンピュータ３００の内部で発生したデータ消失を第１のオペレータが検出すると、第１のオペレータが障害の発生の事実およびその発生時刻等の障害情報を中継サーバ２００を監視する第２のオペレータに伝達し、第２のオペレータは、制御手段４８０を起動し、履歴バックアップ手段４４０に格納されているメッセージのうち、障害の発生時刻近傍の送信時刻を有するデータを検索する。検索されたデータを送信先コンピュータごと、送信元コンピュータおよびアプリケーションごとに集め、これらをもう一度送信先のコンピュータに送信するよう制御手段４８０に指示を出す。制御手段４８０は、指示の通り、または自動的に上記のようなデータの再送処理をするべく履歴バックアップ手段４４０からメッセージを読み出し、第２のバッファ４６０へ再度送信する。
【００２０】
この仕組みにより、きわめて早期に障害からの復帰が可能となるのである。
【００２１】
本実施形態においては、履歴バックアップ手段４４０は、データ変換手段４３０による文字コードやフォーマットの変換後のデータを格納するようにしたが、データ変換手段４３０による変換前のデータを格納するようにしてもよい。また、履歴バックアップ手段４４０は、中継サーバ２００が中継した個々のデータに加え、送信時刻および送信元コンピュータの情報および送信先コンピュータの情報を個々のデータ毎に保存するよう構成し、障害発生時の前後のデータの特定を容易にすることができるよう構成したが、送信先のコンピュータに関する情報（例えばコンピュータのＩＤ）を特定できるように構成すれば障害発生時におけるデータの再送は可能なので、本発明の目的を達成することができる。また、上記の例ではデータ変換手段４３０で変換されたデータは履歴バックアップ手段４４０を経由して第２のバッファ４６０に送られるよう構成したが、履歴バックアップ手段４４０への送信と並行してデータ変換手段４３０から直接第２のバッファ４６０に送られるようにしておき、障害からの復帰時には履歴バックアップ手段４４０から第２のバッファ４６０に送られるように構成してもよい。
【００２２】
また、図１や２においては、第１のシステムコンピュータ１００と第２のシステムコンピュータ３００がそれぞれ１個ずつ描かれているが、実際には、上記実施形態においては、それぞれ多数の第１のシステムコンピュータ１００と第２のシステムコンピュータ３００が１個または複数の中継サーバ２００に接続されている。そのため、少なくとも送信先のコンピュータに関する情報が履歴バックアップ手段４４０に格納されており、好ましくは、送信元のコンピュータに関する情報があわせて個々のデータ毎に保存されているのである。
【００２３】
本実施形態における第１の中継用送受信手段４１０および第２の中継用送受信手段４７０は、たとえば、中継サーバ２００の通信ポートおよびそのドライバソフトウェア等（これらを実際に動作させる中継サーバ２００の図示しないメモリおよび中央演算装置を含む。「ソフトウェア」については、以下同様）により構成されている。また、第１のバッファ４２０、第２のバッファ４６０、履歴バックアップ手段４４０はいずれも中継サーバ２００の外部記憶装置である磁気ディスク等に記憶領域を有し、この記憶領域と中継サーバ２００のオペレーティングシステム等のシステムソフトウェアやアプリケーションソフトウェアとの間のデータのやり取りを制御するソフトウェアにより構成されている。また、データ変換手段４３０は、データ変換用のソフトウェアにより構成されている。第１のデータ管理手段４５５は、第１のバッファから履歴バックアップ手段４４０および第２のバッファへデータ転送されたという通知をデータ変換手段４３０から受けて第１のバッファのデータを廃棄する制御ソフトウェアにより構成されている。さらに、第２のデータ管理手段４５０は、第２のシステムコンピュータのフロントエンドサーバ３０５から受けたデータの基幹データベース３１０への書き込みの成否に関する情報を受けて、該第２のバッファ４６０の該データを削除し、また第２のアプリケーションによって基幹データベース３１０へ更新が実行された場合に、更新されたデータを第２のバッファ４６０へ書き込むソフトウェアにより構成されている。
【図面の簡単な説明】
【００２４】
【図１】本発明の一実施形態における中継サーバの構成を示すブロックダイアグラムである。
【図２】従来のデータ転送システムの構成を示すブロックダイアグラムである。
【図３】従来の中継サーバの構成を示すブロックダイアグラムである。
【符号の説明】
【００２５】
１００：第１のシステムコンピュータ
１１０：ウェブアプリケーション（第１のアプリケーション）
１２０：業務データベース
１３０：バックエンドサーバ
２００：中継サーバ
３００：第２のシステムコンピュータ
３０５：フロントエンドサーバ
３１０：基幹データベース
３２０：基幹アプリケーション（第２のアプリケーション）
４１０：第１の中継用送受信手段
４２０：第１のバッファ
４３０：データ変換手段
４４０：履歴バックアップ手段
４５５：第１のデータ管理手段
４５０：第２のデータ管理手段
４６０：第２のバッファ
４７０：第２の中継用送受信手段
【図１】
2006309503.tif 000003
【図２】
2006309503.tif 000004
【図３】
2006309503.tif 000005