(57)【要約】【課題】  実行オンラインシステムの障害発生時に待機オンラインシステムへの切り替えを高速に行うことが可能な技術を提供する。【解決手段】  実行オンラインシステムで障害が発生した場合に業務処理を待機オンラインシステムに切り替えて続行するオンラインシステム回復方法において、実行オンラインシステムで行われた参照処理の履歴を示す参照履歴と更新処理の履歴を示す更新履歴とを表すログ情報を待機オンラインシステムに転送するステップと、前記転送されたログ情報に従って、待機オンラインシステム内の入出力バッファの内容を実行オンラインシステム内の入出力バッファの内容に一致させる追跡処理を実施するステップと、業務処理を実行中の実行オンラインシステムの稼動状態を監視し、実行オンラインシステムの障害を検知した場合に、前記追跡処理の行われた入出力バッファを用いて前記業務処理を待機オンラインシステムで続行させるステップとを有するものである。【選択図】        図１
2007018534.tif 000002
【特許請求の範囲】
【請求項１】
実行オンラインシステムで障害が発生した場合に業務処理を待機オンラインシステムに切り替えて続行するオンラインシステム回復方法において、
実行オンラインシステムで行われた参照処理の履歴を示す参照履歴と更新処理の履歴を示す更新履歴とを表すログ情報を待機オンラインシステムに転送するステップと、前記転送されたログ情報に従って、待機オンラインシステム内の入出力バッファの内容を実行オンラインシステム内の入出力バッファの内容に一致させる追跡処理を実施するステップと、
業務処理を実行中の実行オンラインシステムの稼動状態を監視し、実行オンラインシステムの障害を検知した場合に、前記追跡処理の行われた入出力バッファを用いて前記業務処理を待機オンラインシステムで続行させるステップとを有することを特徴とするオンラインシステム回復方法。
【請求項２】
前記ログ情報として待機オンラインシステムに転送される参照履歴は、実行オンラインシステムの入出力バッファに存在していないデータへの参照処理の履歴を示すものであることを特徴とする請求項１に記載されたオンラインシステム回復方法。
【請求項３】
実行オンラインシステム及び待機オンラインシステムで共用される記憶装置に前記ログ情報を出力するステップと、前記追跡処理の行われたログ情報と実行オンラインシステムから転送されたログ情報とが連続していない場合に、その間のログ情報を前記記憶装置から読み出し、その読み出したログ情報及び前記転送されたログ情報に従って、待機オンラインシステム内の入出力バッファの内容を実行オンラインシステム内の入出力バッファの内容に一致させるステップとを有することを特徴とする請求項１または請求項２のいずれかに記載されたオンラインシステム回復方法。
【請求項４】
実行オンラインシステムで障害が発生した場合に業務処理を待機オンラインシステムに切り替えて続行するオンライン処理システムにおいて、
実行オンラインシステムで行われた参照処理の履歴を示す参照履歴と更新処理の履歴を示す更新履歴とを表すログ情報を待機オンラインシステムに転送するログ転送処理部と、前記転送されたログ情報に従って、待機オンラインシステム内の入出力バッファの内容を実行オンラインシステム内の入出力バッファの内容に一致させる追跡処理を実施する追跡処理部と、
業務処理を実行中の実行オンラインシステムの稼動状態を監視し、実行オンラインシステムの障害を検知した場合に、前記追跡処理の行われた入出力バッファを用いて前記業務処理を待機オンラインシステムで続行させるモニタ処理部とを備えることを特徴とするオンライン処理システム。
【請求項５】
実行オンラインシステムで障害が発生した場合に業務処理を待機オンラインシステムに切り替えて続行するオンライン処理システムとしてコンピュータを機能させる為のプログラムを記録したコンピュータ読み取り可能な記録媒体において、
実行オンラインシステムで行われた参照処理の履歴を示す参照履歴と更新処理の履歴を示す更新履歴とを表すログ情報を待機オンラインシステムに転送するログ転送処理部と、前記転送されたログ情報に従って、待機オンラインシステム内の入出力バッファの内容を実行オンラインシステム内の入出力バッファの内容に一致させる追跡処理を実施する追跡処理部と、
業務処理を実行中の実行オンラインシステムの稼動状態を監視し、実行オンラインシステムの障害を検知した場合に、前記追跡処理の行われた入出力バッファを用いて前記業務処理を待機オンラインシステムで続行させるモニタ処理部としてコンピュータを機能させる為のプログラムを記録したことを特徴とする記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はシステム停止に伴なう高速な回復処理を必要とするオンライン処理システムに関し、特に多量の更新トランザクションが発生するオンラインデータベースシステム等のオンライン処理システムに適用して有効な技術に関するものである。
【背景技術】
【０００２】
従来の一般的なオンラインシステムの回復方法では、実行オンラインシステムが障害によって停止した場合の回復処理の為に、システムの回復に必要な履歴情報であるログ情報を実行オンラインシステムで外部記憶装置上のログファイルに記憶し、実行オンラインシステムに障害が発生すると、待機オンラインシステムがそのログ情報を読み出してシステムの回復に必要な処理を実行していた。
【０００３】
この高速化の技術として、例えば、特開昭６２−５７０３０号公報に記載のものが知られており、その概要は、ホストコンピュータ間で共用する外部記憶装置上のログ情報を、障害の発生前から待機オンラインシステムで読み込み、待機オンラインシステムが実行オンラインシステムの停止以前にその処理を追跡することによって障害が発生した場合のログ情報の読み込み量を減らすものである。
【０００４】
また、特開平２−７７９４３号公報に記載の様に、ログ情報を実行オンラインシステムでホストコンピュータ間で共用する外部記憶装置上のログファイルに記憶すると共に、ホストコンピュータ間で共用する拡張記憶装置にも同時に記憶し、実行オンラインシステムに障害が発生した後の待機オンラインシステムでのシステム回復処理においては、この拡張記憶装置からログ情報を読み込むことで、外部記憶装置からのログ情報の読み込みを無くす方法が知られている。
【０００５】
更に、特開平１０−４９４１８号公報に記載の様に、実行オンラインシステムのログ情報を通信により待機オンラインシステムに転送して、障害による切り替えが発生する前に待機オンラインシステムで追跡処理を実施することにより、障害が発生した後の回復を高速化する方法が知られている。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、特開昭６２−５７０３０号公報に記載の技術は、障害による待機オンラインシステムへの切り替えが発生した後に、チェックポイント以降のログ情報を外部記憶装置上のログファイルから入力する必要があり、チェックポイントの間隔によっては膨大なログ情報を読み込むことになって高速なシステム回復の実現を妨げる大きな要因となっていた。一方、障害による切り替えが発生した後の読み込むログ情報の量を減らす為にチェックポイントの間隔を狭めると、実行オンラインシステムでのオーバヘッドを高めてしまう問題がある。
【０００７】
また、特開平２−７７９４３号公報に記載の技術は、ログ情報の読み込みは高速化しているものの、特開昭６２−５７０３０号公報に記載の技術と同様に、障害による待機オンラインシステムへの切り替えが発生した後に、チェックポイント以降のログ情報を読み込む必要があり、チェックポイントの間隔によっては膨大なログ情報を読み込むことになって高速なシステム回復の実現を妨げる大きな要因となっていた。一方、障害による切り替えが発生した後の読み込むログ情報の量を減らす為にチェックポイントの間隔を狭めると、実行オンラインシステムでのオーバヘッドを高めてしまう問題がある。
【０００８】
また、特開平１０−４９４１８号公報に記載の技術は、実行オンラインシステムのログ情報を通信により待機オンラインシステムへ転送して、障害による切り替えが発生する前に待機オンラインシステムでの追跡処理を実施しているが、更新履歴のログ情報のみを用いて追跡処理を行っている為、実行オンラインシステムで行われたインデクスへの参照等の参照処理の結果が待機オンラインシステムのメモリ上に反映されておらず、障害による切り替えが発生した場合にインデクス検索等の参照処理の効率が低下するという問題がある。更にログファイルやデータベース等の外部記憶装置を共用していない為、外部記憶装置が２倍必要となるという問題があり、また待機オンラインシステム側での障害等により一旦冗長構成が崩れると、冗長構成に戻す際の整合化の為にトランザクションの実行を一時中断する必要がある為、２４時間３６５日連続運転が実現できないという問題がある。
【０００９】
本発明の目的は上記問題を解決し、実行オンラインシステムの障害発生時に待機オンラインシステムへの切り替えを高速に行うことが可能な技術を提供することにある。
【００１０】
本発明の他の目的は待機オンラインシステム内の入出力バッファの内容を実行オンラインシステム内の入出力バッファの内容に一致させる為のログ情報の転送負荷を軽減することが可能な技術を提供することにある。
【００１１】
本発明の他の目的は待機オンラインシステムが障害や保守の後に再稼働した場合に、実行オンラインシステムでの業務処理の実行に影響を与えることなくホットスタンバイ状態の再確立を行うことが可能な技術を提供することにある。
【課題を解決するための手段】
【００１２】
本発明は、実行オンラインシステムで障害が発生した場合に業務処理を待機オンラインシステムに切り替えて続行するオンライン処理システムにおいて、実行オンラインシステムで障害が発生した場合に、実行オンラインシステムの入出力バッファの内容に予め一致させておいた待機オンラインシステムの入出力バッファを用いて待機オンラインシステムで業務処理を続行させるものである。
【００１３】
本発明では、実行オンラインシステムの稼働中に実行オンラインシステムで行われた参照処理の履歴を示す参照履歴と更新処理の履歴を示す更新履歴とを表すログ情報を待機オンラインシステムに転送し、前記ログ情報を受け取った待機オンラインシステムでは、その転送されたログ情報に従って、実行オンラインシステムの入出力バッファで行われた参照処理及び更新処理に相当する処理を待機オンラインシステムの入出力バッファに対して行い、待機オンラインシステム内の入出力バッファの内容を実行オンラインシステム内の入出力バッファの内容に一致させる追跡処理を実施する。
【００１４】
また、業務処理を実行中の実行オンラインシステムの稼動状態を監視し、実行オンラインシステムの障害を検知した場合には、前記追跡処理の行われた入出力バッファを用いて前記業務処理を待機オンラインシステムで続行させる。
【００１５】
前記の様に本発明によれば、障害による待機オンラインシステムへの切り替えが発生した後の外部記憶装置上のログファイルからのログ情報の入力を無くしつつ、実行オンラインシステムでのオーバヘッドが少ないオンラインシステムの回復方法を実現することができる。
【００１６】
以上の様に本発明のオンライン処理システムによれば、実行オンラインシステムで障害が発生した場合に、実行オンラインシステムの入出力バッファの内容に予め一致させておいた待機オンラインシステムの入出力バッファを用いて待機オンラインシステムで業務処理を続行させるので、実行オンラインシステムの障害発生時に待機オンラインシステムへの切り替えを高速に行うことが可能である。
【発明の効果】
【００１７】
本発明によれば実行オンラインシステムで障害が発生した場合に、実行オンラインシステムの入出力バッファの内容に予め一致させておいた待機オンラインシステムの入出力バッファを用いて待機オンラインシステムで業務処理を続行させるので、実行オンラインシステムの障害発生時に待機オンラインシステムへの切り替えを高速に行うことが可能である。
【発明を実施するための最良の形態】
【００１８】
以下に実行オンラインシステムで障害が発生した場合に業務処理を待機オンラインシステムに切り替えて続行する一実施形態のオンライン処理システムについて説明する。
【００１９】
図１は本実施形態のオンライン処理システムの概略構成を示す図である。図１に示す様に本実施形態のホストコンピュータ１０は、モニタ処理部１１と、ログ出力処理部１５と、ログ転送処理部１６とを有している。
【００２０】
モニタ処理部１１は、モニタ処理部２１との間で相互監視の為の制御電文を交換し合うことにより相手システムの稼働状態を監視する処理部である。ログ出力処理部１５は、ログＩ／Ｏバッファ１４に格納されているログ情報を実行オンラインシステム１２及び待機オンラインシステム２２で共用される記憶装置に出力する処理部である。
【００２１】
ログ転送処理部１６は、実行オンラインシステム１２で行われた参照処理の履歴を示す参照履歴と更新処理の履歴を示す更新履歴とを表すログ情報を待機オンラインシステム２２に転送する処理部である。
【００２２】
ホストコンピュータ１０をモニタ処理部１１、ログ出力処理部１５及びログ転送処理部１６として機能させる為のプログラムは、ＣＤ−ＲＯＭ等の記録媒体に記録され磁気ディスク等に格納された後、メモリにロードされて実行されるものとする。なお前記プログラムを記録する記録媒体はＣＤ−ＲＯＭ以外の他の記録媒体でも良い。
【００２３】
ホストコンピュータ２０は、モニタ処理部２１と、追跡処理部２７とを有している。モニタ処理部２１は、モニタ処理部１１との間で相互監視の為の制御電文を交換し合うことにより、業務処理を実行中の実行オンラインシステム１２の稼動状態を監視し、実行オンラインシステム１２の障害を検知した場合に、追跡処理の行われたデータベースＩ／Ｏバッファ２３を用いて前記業務処理を待機オンラインシステム２２で続行させる処理部である。
【００２４】
追跡処理部２７は、前記転送されたログ情報に従って、待機オンラインシステム２２内のデータベースＩ／Ｏバッファ２３の内容を実行オンラインシステム１２内のデータベースＩ／Ｏバッファ１３の内容に一致させる追跡処理を実施する処理部である。
【００２５】
ホストコンピュータ２０をモニタ処理部２１及び追跡処理部２７として機能させる為のプログラムは、ＣＤ−ＲＯＭ等の記録媒体に記録され磁気ディスク等に格納された後、メモリにロードされて実行されるものとする。なお前記プログラムを記録する記録媒体はＣＤ−ＲＯＭ以外の他の記録媒体でも良い。
【００２６】
本実施形態のオンライン処理システムは、実行オンライン側のホストコンピュータ１０と、実行オンライン側のモニタ処理部１１と、実行オンライン側の実行オンラインシステム１２（例えばデータベース管理システム）と、待機オンライン側のホストコンピュータ２０と、待機オンライン側のモニタ処理部２１と、待機オンライン側の待機オンラインシステム２２（例えばデータベース管理システム）とを有している。
【００２７】
また、実行オンライン側の実行オンラインシステム１２と待機オンライン側の待機オンラインシステム２２とで共用する不揮発な記憶装置（一般には磁気ディスク装置）上にはログ情報３１を格納するログファイル３０やデータベース４０を有している。
【００２８】
更に、本実施形態のオンライン処理システムは、実行オンラインシステム１２がデータベース４０とのレコードの入出力に使用するデータベースＩ／Ｏバッファ１３と、実行オンラインシステム１２がログファイル３０とのログ情報の入出力に使用するログＩ／Ｏバッファ１４と、待機オンラインシステム２２がデータベース４０とのレコードの入出力に使用するデータベースＩ／Ｏバッファ２３と、待機オンラインシステム２２がログファイル３０とのログ情報の入出力に使用するログＩ／Ｏバッファ２４とを有している。
【００２９】
また、実行オンラインシステム１２がログＩ／Ｏバッファ１４に格納されているログ情報をログファイル３０に出力するログ出力処理部１５と、実行オンラインシステム１２がログＩ／Ｏバッファ１４に格納されているログ情報を待機オンラインシステム２２のログ情報受信バッファ２５に転送するログ転送処理部１６と、転送されたログ情報に従って、実行オンラインシステム１２での業務処理と並行して待機システムでの追跡処理を実施する追跡処理部２７と、モニタ処理部１１とモニタ処理部２１間で相互監視の為の制御電文（Ａｌｉｖｅ電文）を交換しあう為の通信媒体５０と、実行オンラインシステム１２から待機オンラインシステム２２へのログ情報の転送の為の通信媒体５１と、待機オンラインシステム２２でログファイル３０上のログ情報３１を入力する為のログＩ／Ｏバッファ２４とを有している。
【００３０】
ここで、通信媒体５０と通信媒体５１は物理的に一つでも良いが、ログ情報の転送トラフィックが高くなった場合の制御信号の電送遅延による誤動作を防ぐ為に、本実施形態では別々の通信媒体としている。
【００３１】
更に、データベースＩ／Ｏバッファ１３、ログＩ／Ｏバッファ１４、データベースＩ／Ｏバッファ２３、ログＩ／Ｏバッファ２４やログ情報受信バッファ２５は、それぞれ一つであっても良いが、性能・信頼性を確保する為に、それぞれ複数面のバッファを持ってバッファリングを行う。
【００３２】
また図１では実行オンラインシステム１２にログ出力処理部１５及びログ転送処理部１６を示し、待機オンラインシステム２２には追跡処理部２７を示しているが、実行オンラインシステム１２と待機オンラインシステム２２とでは、実装している機能に違いはなく、実行系になるか待機系になるかによって振る舞いが変わるだけであるものとする。
【００３３】
よって、ホストコンピュータ１０で障害が発生してトランザクションの実行権がホストコンピュータ２０に切り替わり、待機オンラインシステム２２がトランザクションサービスを開始したら、待機オンラインシステム２２が実行系になり、ホストコンピュータ１０の障害復旧後は、実行オンラインシステム１２が待機系になる。
【００３４】
図２は本実施形態の実行オンラインシステム１２及び待機オンラインシステム２２の処理手順を示すフローチャートである。図２に示す様に本実施形態の実行オンラインシステム１２は、起動されるとまず初期設定処理を行う（ステップ１２２）。
【００３５】
この初期設定処理では、処理プログラムのロード、各種の定義情報や実行パラメタの取り込み、仮想記憶上の制御テーブルの作成、データベースのオープン、トランザクション実行空間（実行プロセスとも呼ぶ）の起動等を行い、更に、ログファイルの終端にあるログ情報の検出・記憶を行う。ここでは、更に待機オンラインシステム２２とのログ情報転送に関わるバッファの確保・ページ固定・バッファの位置情報の交換等を行う。オンラインシステムでは、この他に端末との通信セッションの確立や切り替え準備等も行われるが、本実施形態の範囲外である為、図１及び図２には示されていない。
【００３６】
一方、待機オンラインシステム２２でも、待機システムとしての同様な初期設定を行う（ステップ２２２）。この時点で、モニタ処理部１１とモニタ処理部２１による相互監視状態が開始される。
【００３７】
相互監視状態が開始されると、実行オンラインシステム１２では業務トランザクションの処理を行う（ステップ１２３）。
【００３８】
参照処理または更新処理を行う業務トランザクションで取得されたログ情報１２４が待機オンラインシステム２２に転送されると、待機オンラインシステム２２では、ログ情報１２４に従ってメモリ中でトランザクション状態やデータベースのレコードの参照及び更新状態を追跡する（ステップ２２３）。このとき、ログファイル３０やデータベース４０は実行オンラインシステム１２から更新される為、待機オンラインシステム２２では、これらの外部記憶装置への書き込みは行わずに、データベースのインデクスの参照状態やレコードの更新状態の追跡さえも、メモリ中のデータベースＩ／Ｏバッファ２３上でだけ実施する。
【００３９】
実行オンラインシステム１２に障害が発生すると（ステップ１２５）、モニタ処理部１１またはモニタ処理部２１が障害を検知して、業務トランザクションの実行権を待機オンラインシステム２２に切り替える（ステップ１２６）。
【００４０】
実行オンラインシステム１２だけの障害に留まっている場合は、モニタ処理部１１が障害を検知してモニタ処理部２１に通知する。ホストコンピュータ１０全体に障害が及んでモニタ処理部１１さえ正常に稼動できない場合は、モニタ処理部１１からモニタ処理部２１への制御電文（Ａｌｉｖｅ電文）が途切れる為、モニタ処理部２１が自発的に相手システムである実行オンラインシステム１２の障害を検知する。
【００４１】
待機オンラインシステム２２への切り替えが発生すると、未処理のログ情報１２４の追跡の完了を待ち合わせた後（ステップ２２４）、新たな業務トランザクションのサービスを開始する（ステップ２２５）と共に、並行して未完了トランザクションのロールバック（後退復帰）を行う（ステップ２２６）。
【００４２】
図３は本実施形態の業務トランザクション処理の処理手順を示すフローチャートである。図３を用いて、図２のステップ１２３の業務トランザクション処理を説明する。
【００４３】
トランザクションが開始されると、トランザクションの開始を示すログをログＩ／Ｏバッファ１４にバッファリングする（ステップ１２３１）。次に、データベースＩ／Ｏバッファ１３上でレコードの参照や更新を行う（ステップ１２３２）と共に、レコードの参照ログや更新ログをログＩ／Ｏバッファ１４にバッファリングする（ステップ１２３３）。一つのトランザクションでのデータベースレコードの参照や更新が完了すると、トランザクション終了ログをログＩ／Ｏバッファ１４にバッファリングし（ステップ１２３４）、ログファイル３０へ未出力のログ情報を強制的に出力する（ステップ１２３５）。
【００４４】
ここで、ステップ１２３２において、データベースＩ／Ｏバッファ１３に存在していないデータへの参照が行われた場合に、ステップ１２３３でその参照ログをログＩ／Ｏバッファ１４にバッファリングするものとし、ログ情報の出力や転送に必要な負荷を軽減させても良い。
【００４５】
図４は本実施形態のログ情報のバッファリング処理の処理手順を示すフローチャートである。図４を用いて、図３のステップ１２３１、ステップ１２３３及びステップ１２３４のログ情報のバッファリング処理を説明する。
【００４６】
まず、現在のバッファリング先となっているログＩ／Ｏバッファに空きがあるか調べる（ステップ１２３１１）。空きがあれば、該ログＩ／Ｏバッファにログ情報を格納する（ステップ１２３１５）。
【００４７】
空きがなければ、他のログＩ／Ｏバッファに空きがあるか調べる（ステップ１２３１２）。ここで、空きが見つかれば、そのログＩ／Ｏバッファを新たなバッファリング先として設定して（ステップ１２３１４）、ログ情報を格納する（ステップ１２３１５）。
【００４８】
空きのログＩ／Ｏバッファが一つもない場合は、空きができるのを待ち合わせる（ステップ１２３１３）。ここで、空きのログＩ／Ｏバッファが一つも無かった場合に、動的に新たなログＩ／Ｏバッファを確保する方法もあるが、メモリ不足を引き起こして障害の引き金になる可能性がある為、本実施形態では採用しない。
【００４９】
図５は本実施形態の未出力ログの強制出力処理の処理手順を示すフローチャートである。図５を用いて、図３のステップ１２３５における未出力ログの強制出力処理を説明する。
【００５０】
まず、現在のバッファリング先となっているログＩ／Ｏバッファを、“空き無し”の状態にして該ログＩ／Ｏバッファへの新たなバッファリングを抑止する（ステップ１２３５１）。
【００５１】
次に、ログファイル３０へまだ出力していないログＩ／Ｏバッファを順次出力する（ステップ１２３５２）。この出力は外部記憶装置へのＩ／Ｏ動作が完了するまで制御が戻らない同期書き込み方式でも、Ｉ／Ｏ動作の完了を待たない非同期書き込み方式でも良いが、本実施形態では、待機オンラインシステム２２へのログ情報の転送処理が実行オンラインシステム１２のトランザクションへ与える影響を無くす為に、非同期書き込み方式を採用する。
【００５２】
ログファイル３０への書き込みの完了を待っている間に、前記ステップ１２３５２で対象にしたログＩ／Ｏバッファの内容を、通信媒体５１を介して待機オンラインシステム２２のログ情報受信バッファ２５に直接書き込む（ステップ１２３５３）。この書き込み位置等の情報は、前記のステップ１２２で示した初期設定時点及び前記のステップ１２３で示した前回の書き込み時の返信情報で把握しておくものとする。
【００５３】
ここで、待機オンラインシステム２２が稼動していない場合は、前記ステップ１２３５３は失敗するが、実行オンラインシステム１２側では成功したものとして扱う。この不整合状態は、待機オンラインシステム２２に切り替える際に、その時点の最新のログ情報受信バッファ２５のログまでの差分をログファイル３０から読み込んで追い付かせることで解消させる。この処理によって、シーソーゲームの様に、実行系と待機系が頻繁に切り替わった場合であっても自動的に追随することができる。
【００５４】
次に、前記ステップ１２３５２のＩ／Ｏ動作の完了を待ち合わせる（ステップ１２３５４）。前記ステップ１２３５２及びステップ１２３５３の両方が完了したログＩ／Ｏバッファを空きバッファとする（ステップ１２３５５）。
【００５５】
図６は本実施形態の追跡処理の処理手順を示すフローチャートである。図６を用いて、図２のステップ２２３の追跡処理を説明する。
【００５６】
まず、待機オンラインシステム２２の初期設定処理２２２時点で記憶したログファイルの終端にあるログ情報と、ログ情報受信バッファ２５に送られてきたログ情報を比べる（ステップ２２３０１）。
【００５７】
ログ情報が不連続（具体的には、ログファイルの世代番号及びログレコードの集合体であるログブロックの通番からなる番号が不連続であり、途中のブロックが抜けている状態）であれば、ログファイル３０からログ情報３１を入力して、ログ情報受信バッファ２５の時点まで追い付かせる（ステップ２２３０２）。ここでの追い付き処理の具体的な方法は、後述のステップ２２３０３〜ステップ２２３０８と同様である。
【００５８】
次に、ログ情報受信バッファ２５に格納された個々のログ情報を順次調べ、トランザクションの開始ログや終了ログの様にトランザクションの状態の変更を記録したログであれば（ステップ２２３０３）、メモリ中のトランザクション毎の管理情報を更新する（ステップ２２３０４）。
【００５９】
データベースのレコードの参照ログまたは更新ログであれば（ステップ２２３０５）、データベースＩ／Ｏバッファ２３に該当するページがあるかを調べ（ステップ２２３０６）、データベースＩ／Ｏバッファ２３に該レコードのページがなければデータベース４０からデータベースＩ／Ｏバッファ２３に該レコードのページを読み込む（ステップ２２３０７）。次に、該ログが更新ログの場合にはその内容に従ってデータベースＩ／Ｏバッファ２３上でレコードを更新する（ステップ２２３０８）。
【００６０】
これらステップ２２３０３〜ステップ２２３０８の処理を、ログ情報受信バッファ２５にある全てのログ情報に対して繰り返す（ステップ２２３０９）。
【００６１】
次に、モニタ処理部１１またはモニタ処理部２１から障害の検知が通知されているかを確認し、自システムが待機システムのままかどうかを調べる（ステップ２２３１０）。待機システムのままであれば、ログ情報の受信を待って（ステップ２２３１３）、前記ステップ２２３０３〜ステップ２２３０８の処理を繰り返す。一方、モニタ処理部１１またはモニタ処理部２１による障害の検知により実行システムへの切り替えが指示されていれば、実行システムとして業務トランザクション処理を実行する。
【００６２】
以上説明した様に本実施形態のオンライン処理システムによれば、実行オンラインシステムで障害が発生した場合に、実行オンラインシステムの入出力バッファの内容に予め一致させておいた待機オンラインシステムの入出力バッファを用いて待機オンラインシステムで業務処理を続行させるので、実行オンラインシステムの障害発生時に待機オンラインシステムへの切り替えを高速に行うことが可能である。
【００６３】
また本実施形態のオンライン処理システムによれば、実行オンラインシステムの入出力バッファに存在していないデータへの参照処理が行われた場合にその参照履歴をログ情報として待機オンラインシステムに転送するので、待機オンラインシステム内の入出力バッファの内容を実行オンラインシステム内の入出力バッファの内容に一致させる為のログ情報の転送負荷を軽減することが可能である。
【００６４】
また本実施形態のオンライン処理システムによれば、追跡処理の行われたログ情報と実行オンラインシステムから転送されたログ情報とが連続していない場合に、その間のログ情報を記憶装置から読み出して、待機オンラインシステム内の入出力バッファの追付き処理を行うので、待機オンラインシステムが障害や保守の後に再稼働した場合に、実行オンラインシステムでの業務処理の実行に影響を与えることなくホットスタンバイ状態の再確立を行うことが可能である。
【図面の簡単な説明】
【００６５】
【図１】本実施形態のオンライン処理システムの概略構成を示す図である。
【図２】本実施形態の実行オンラインシステム１２及び待機オンラインシステム２２の処理手順を示すフローチャートである。
【図３】本実施形態の業務トランザクション処理の処理手順を示すフローチャートである。
【図４】本実施形態のログ情報のバッファリング処理の処理手順を示すフローチャートである。
【図５】本実施形態の未出力ログの強制出力処理の処理手順を示すフローチャートである。
【図６】本実施形態の追跡処理の処理手順を示すフローチャートである。
【符号の説明】
【００６６】
１０…ホストコンピュータ、１２…実行オンラインシステム、１３…データベースＩ／Ｏバッファ、１４…ログＩ／Ｏバッファ、２０…ホストコンピュータ、２２…待機オンラインシステム、２３…データベースＩ／Ｏバッファ、２４…ログＩ／Ｏバッファ、２５…ログ情報受信バッファ、３０…ログファイル、３１…ログ情報、４０…データベース、５０及び５１…通信媒体、１１…モニタ処理部、１５…ログ出力処理部、１６…ログ転送処理部、２１…モニタ処理部、２７…追跡処理部、１２４…ログ情報。
【図１】
2007018534.tif 000003
【図２】
2007018534.tif 000004
【図３】
2007018534.tif 000005
【図４】
2007018534.tif 000006
【図５】
2007018534.tif 000007
【図６】
2007018534.tif 000008