(57)【要約】【課題】データベースサーバに障害が発生した場合であっても、復旧後、事象の監視を適切に継続できるようにする。【解決手段】本データリカバリ方法は、障害による停止状態から復旧した場合、順序を示す順序情報を含む事象データが事象データ受信装置からの受信順序どおりに格納されているデータベースから、現時点の状態において順序が最後となっている順序情報を特定する工程と、特定された順序情報を含み且つ当該順序情報より後の順序についての順序情報を含む事象データの再送を要求するリカバリ要求を事象データ受信装置に送信する工程と、リカバリ要求に対するリカバリ応答を事象データ受信装置から受信した場合、リカバリ要求に含まれる順序情報より後の順序についての順序情報を含む事象データの受け付けを開始する工程とを含む。【選択図】図１
2010128683.tif 000002
【特許請求の範囲】
【請求項１】
障害による停止状態から復旧した場合、順序を示す順序情報を含む事象データが事象データ受信装置からの受信順序どおりに格納されているデータベースから、現時点の状態において前記順序が最後となっている順序情報を特定するステップと、
特定された前記順序情報を含み且つ当該順序情報より後の順序についての順序情報を含む事象データの再送を要求するリカバリ要求を前記事象データ受信装置に送信するステップと、
を含み、コンピュータにより実行されるデータリカバリ方法。
【請求項２】
前記リカバリ要求に対するリカバリ応答を前記事象データ受信装置から受信した場合、前記リカバリ要求に含まれる前記順序情報より後の順序についての順序情報を含む事象データの受け付けを開始するステップ
をさらに含む請求項１記載のデータリカバリ方法。
【請求項３】
前記事象データの受け付け開始後前記事象データ受信装置から、前記順序情報が示す順序に従って送られてくる事象データを当該順序で受信し、受信順序どおりに前記データベースに登録するステップ
をさらに含む請求項２記載のデータリカバリ方法。
【請求項４】
順序を示す順序情報を含むリカバリ要求をデータベースサーバから受信した場合、順序情報を含み且つ送信済みである事象データが格納されている送信済みログ格納部から、受信した前記順序情報より後の順序についての順序情報を含む事象データをリカバリ対象データとして抽出するステップと、
抽出された前記リカバリ対象データを、順序情報を含み且つ未送信である事象データが格納されている送信用ログ格納部に格納するステップと、
前記リカバリ要求に対するリカバリ応答を前記データベースサーバに送信するステップと、
前記送信用ログ格納部に格納されている前記事象データを、当該事象データに含まれる順序情報が示す順序どおりに前記データベースサーバに送信するステップと、
を含み、コンピュータにより実行されるデータ再送方法。
【請求項５】
データベースサーバと、
事象データ受信装置と、
を有し、
前記データベースサーバは、
障害による停止状態から復旧した場合、順序を示す順序情報を含む事象データが前記事象データ受信装置からの受信順序どおりに格納されているデータベースから、現時点の状態において前記順序が最後となっている順序情報を特定し、特定された前記順序情報を含み且つ当該順序情報より後の順序についての順序情報を含む事象データの再送を要求するリカバリ要求を前記事象データ受信装置に送信する手段と、
前記リカバリ要求に対するリカバリ応答を前記事象データ受信装置から受信した場合、前記リカバリ要求に含まれる前記順序情報より後の順序についての順序情報を含む事象データの受け付けを開始し、当該受け付けの開始後前記事象データ受信装置から、前記順序情報が示す順序に従って送られてくる事象データを当該順序で受信する手段と、
受信した前記事象データを、受信順序どおりに前記データベースに登録する手段と、
を有し、
前記事象データ受信装置は、
順序情報を含み且つ送信済みである事象データが格納されている送信済みログ格納部と、
順序情報を含み且つ未送信である事象データが格納されている送信用ログ格納部と、
前記リカバリ要求を前記データベースサーバから受信した場合、前記送信済みログ格納部から、受信した前記順序情報より後の順序についての順序情報を含む事象データをリカバリ対象データとして抽出し、抽出された前記リカバリ対象データを前記送信用ログ格納部に格納すると共に、前記リカバリ要求に対するリカバリ応答を前記データベースサーバに送信する手段と、
前記送信用ログ格納部に格納されている前記事象データを、当該事象データに含まれる順序情報が示す順序どおりに前記データベースサーバに送信する手段と、
を有するデータリカバリシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本技術は、データリカバリ技術に関する。
【背景技術】
【０００２】
稼動する機器等において発生した事象（例えば通信異常、ファンアラーム、センサの故障）をリアルタイムに監視するシステムがある。このようなシステムでは、機器等に接続された装置（以下、事象監視装置と呼ぶ）が事象の発生を検知し、発生した事象に関するデータを事象監視装置のとりまとめを行う装置（以下、事象受信装置と呼ぶ）に通知する。さらに事象受信装置は、事象監視装置から受信したデータを、データベースサーバに送信する。データベースサーバは、受信したデータを一旦メモリに格納し、メモリに格納されたデータをひとつずつ順番にデータベースに登録する。システムの管理者は、データベースに登録されるデータを端末にリアルタイムに表示させ、どのような事象が発生しているかを把握する。
【０００３】
上記のようなシステムにおいては、何らかの障害等によりデータベースサーバが停止した後、当該障害等から復旧した場合には、停止したことによりデータベースに登録することができなかったデータをリカバリしなければならない。従来は、データベースサーバのリカバリは、人手により事象受信装置内のデータをチェックし、リカバリの対象となるデータを特定していたため、多大な手間と時間が必要であった。
【０００４】
例えば、データのリカバリに関して、障害による電文の紛失を防止するための技術が知られている。この技術では、通信処理装置のメインメモリなどの記憶装置に端末装置から受信した電文を一時的に記憶しておき、ホスト計算機又はそのホスト計算機上で動作する応用プログラム手段に障害が発生したときに、その復旧後に応用プログラム手段で未処理の入力電文を通信処理装置から応用プログラム手段へ再送することにより、障害による入力電文の紛失を防止している。
【特許文献１】特開平３−２８８９５２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかし、上記の技術では、通常時の電文送信手段と障害復旧時の電文再送手段が異なるため、障害からの復旧後電文の再送を終える前に新たに端末装置から電文を受信するような場合には、新たに受信した電文を先に送信してしまう可能性があり、電文送信の順序性を保つことができない。順序が誤った状態でデータベースにデータが登録されてしまった場合、データベースに登録されたデータの順序を修正することは余分な手間となってしまう。
【０００６】
また、上記のようなシステムでは、データベースサーバが停止するタイミングによっては、メモリに格納されているデータがデータベースに登録されずに失われてしまうことがある。このように、データベースに登録されるべきデータが抜け落ちてしまうと、発生した事象を正確に把握することができなくなるという問題がある。
【０００７】
従って、本技術の目的は、データベースサーバに障害が発生した場合であっても、復旧後、事象の監視を適切に継続できるようにすることである。
【課題を解決するための手段】
【０００８】
本技術の第１の態様に係るデータリカバリ方法は、障害による停止状態から復旧した場合、順序を示す順序情報を含む事象データが事象データ受信装置からの受信順序どおりに格納されているデータベースから、現時点の状態において順序が最後となっている順序情報を特定するステップと、特定された順序情報を含み且つ当該順序情報より後の順序についての順序情報を含む事象データの再送を要求するリカバリ要求を事象データ受信装置に送信するステップとを含む。
【０００９】
本技術の第２の態様に係るデータ再送方法は、順序を示す順序情報を含むリカバリ要求をデータベースサーバから受信した場合、順序情報を含み且つ送信済みである事象データが格納されている送信済みログ格納部から、受信した順序情報より後の順序についての順序情報を含む事象データをリカバリ対象データとして抽出するステップと、抽出されたリカバリ対象データを、順序情報を含み且つ未送信である事象データが格納されている送信用ログ格納部に格納するステップと、リカバリ要求に対するリカバリ応答をデータベースサーバに送信するステップと、送信用ログ格納部に格納されている事象データを、当該事象データに含まれる順序情報が示す順序どおりにデータベースサーバに送信するステップとを含む。
【発明の効果】
【００１０】
データベースサーバに障害が発生した場合であっても、復旧後、事象の監視を適切に継続できるようになる。
【発明を実施するための最良の形態】
【００１１】
図１に、本技術の一実施の形態に係るシステムの概要図を示す。なお、本実施の形態において、「事象」とは、例えば通信異常、ファンアラーム、センサ故障であって、様々な機器等において発生する故障その他のイベントであって予め要監視として定められているもののことを指している。データベースサーバ５には、発生した事象に関するデータ（以下、事象データと呼ぶ）を事象監視装置Ａ乃至Ｃから受信し、データベースサーバ５に送信する事象受信装置７と、事象データを格納する事象データベース３とが接続されている。事象データベース３には、例えばパーソナルコンピュータ（ＰＣ）であって事象データベース３に格納される事象データをリアルタイムに表示する１又は複数の端末１が接続されている。また、事象受信装置７には、事象の発生を検知し、事象データを事象受信装置７に送信する事象監視装置Ａ乃至Ｃが、ネットワーク９を介して接続されている。ここでは、事象監視装置は３つしか図示していないが、数に限定はない。また、図示はしていないが、事象監視装置Ａ乃至Ｃには、それぞれの設置場所において稼動している機器等が接続されており、事象監視装置Ａ乃至Ｃは、それらの機器等における事象の発生を検知する。
【００１２】
データベースサーバ５は、事象受信装置７との通信を管理する通信部５１と、事象受信装置７から受信した事象データを一時的に格納するためのワークメモリ５２と、ワークメモリ５２に格納されている事象データをひとつずつ取り出して事象データベース３に登録する登録部５３とを有する。また、通信部５１は、事象受信装置７から事象データ等を受信する受信部５１１と、障害からの復旧時にリカバリのための処理を行うリカバリ要求部５１２とを有する。ワークメモリ５２は、データベースサーバ５内のメインメモリなどに確保される。
【００１３】
事象受信装置７は、事象監視装置Ａ乃至Ｃから事象データを受信する事象データ受信部７１と、データベースサーバ５にまだ送信していない事象データを格納する送信用ログ格納部７２と、データベースサーバ５に既に送信した事象データを格納する送信済ログ格納部７３と、送信用ログ格納部７２に格納されている事象データをデータベースサーバ５に送信する事象データ送信部７４と、データベースサーバ５からリカバリ要求を受信した場合にデータを再送するための処理を行うリカバリ応答部７５とを有する。
【００１４】
図２に、事象データベース３に格納されるデータの一例を示す。図２の例では、事象発生時刻の列と、事象監視装置の列と、事象内容の列と、設置場所の列と、備考の列とが含まれる。事象発生時刻の列には、機器等において事象が発生した時刻が登録される。本実施の形態では事象発生時刻としているが、例えば通し番号など、事象の発生順序を一意に特定することができる他の情報を登録するようにしてもよい。事象監視装置の列には、事象の発生を検知した事象監視装置を特定するための情報が登録される。事象内容の列には、事象監視装置が検知した事象の内容が登録される。設置場所の列には、事象が発生した機器等が設置されている場所についての情報が登録される。備考の列には、例えば事象が発生した機器等の状態に関する情報が登録される。なお、事象受信装置７の送信用ログ格納部７２と、送信済ログ格納部７３と、データベースサーバ５のワークメモリ５２とにも同様のフォーマットのデータが格納される。
【００１５】
次に、図３及び図４を用いて、図１に示したシステムの処理内容を説明する。本実施の形態においては、事象受信装置７の送信用ログ格納部７２には１又は複数の事象データが格納され、データベースサーバ５は正常に稼動しているものとする。まず、事象受信装置７の事象データ送信部７４は、送信用ログ格納部７２に格納されている事象データをデータベースサーバ５に送信する（ステップＳ１）。ここで、事象データは、事象発生時刻の順序どおりに送信されるものとする。例えば、送信用ログ格納部７２には事象データが事象発生時刻の順序どおりに格納され、事象データ送信部７４が、格納されている順に事象データを読み出して送信するようにしてもよいし、送信用ログ格納部７２に格納されている事象データを、事象データ送信部７４が事象発生時刻の順序どおりに抽出して送信するようにしてもよい。そして、データベースサーバ５の受信部５１１は、事象受信装置７から事象データを受信し、ワークメモリ５２に格納する（ステップＳ３）。ここで、受信部５１１は、受信した順序どおりに事象データをワークメモリ５２に格納するものとする。
【００１６】
そして、事象受信装置７の事象データ送信部７４は、送信した事象データを送信済ログ格納部７３に格納する（ステップＳ５）。なお、前述のように、事象データは事象発生時刻の順序どおりに送信されるので、送信済ログ格納部７３には事象発生時刻の順序どおりに事象データが格納されるようになる。
【００１７】
ここで、ステップＳ１乃至Ｓ５において行われる処理について、図５の模式図を用いて説明する。なお、図５乃至図１０は、本実施の形態について具体的に説明するための一連の模式図である。説明を簡単にするため、模式図では説明に必要な機能のみを図示している。また、例えば「００：００：００  ａ」とは、００時００分００秒に発生した「事象ａ」であることを示している。
【００１８】
まず、ステップＳ１において、事象受信装置７が事象ａ乃至ｄについての事象データをａ、ｂ、ｃ、ｄの順にデータベースサーバ５に送信する。一方、データベースサーバ５は、ステップＳ３において、事象データをａ、ｂ、ｃ、ｄの順に受信し、受信した順序どおりにワークメモリ５２に格納する。また、ステップＳ５において、事象受信装置７は、事象データをａ、ｂ、ｃ、ｄの順に送信済ログ格納部７３に格納する。この時点においては、送信済ログ格納部７３とワークメモリ５２には事象ａ乃至ｄについての事象データが格納され、送信用ログ格納部７２と事象データベース３には事象データが格納されていない状態となっている。
【００１９】
データベースサーバが正常に稼動している状態であれば、ステップＳ５より後の処理では、登録部５３が、ワークメモリ５２に格納された事象データを当該データが格納されている順に読み出し、事象データベース３に登録するようになっている。しかし、本実施の形態においては、この時点において、データベースサーバ５に何らかの障害が発生し、データベースサーバ５が停止するものとする。これにより、ワークメモリ５２に格納されている事象データは、事象データベース３に登録する前に失われる。なお、事象受信装置７に対しては、事象データベース３への事象データの登録完了を示す旨の通知は行われないので、この時点では、事象受信装置７はどの事象データが失われたかを知ることはできない。
【００２０】
データベースサーバ５が停止した場合におけるシステムの模式図を図６に示す。ここでは、登録部５３が事象ａ及びｂについての事象データを事象データベース３に登録した時点でデータベースサーバ５が停止したものとする。データベースサーバ５が停止したことにより、事象ｃ及びｄの事象データは失われている。この時点においては、事象データベース３には事象ａ及びｂについての事象データが格納され、送信済ログ格納部７３には事象ａ乃至ｄについての事象データが格納され、送信用ログ格納部７２及びワークメモリ５２には事象データが格納されていない状態となっている。
【００２１】
図３の説明に戻り、その後、事象受信装置７の事象データ受信部７１は、事象監視装置Ａ乃至Ｃのいずれかより事象データを受信する（ステップＳ７）。そして、事象データ受信部７１は、受信した事象データを送信用ログ格納部７２に格納する（ステップＳ９）。この時点においては、送信用ログ格納部７２にはステップＳ７において受信した事象データのみが格納されている。
【００２２】
そして、事象データ送信部７４は、送信用ログ格納部７２に格納されている事象データをデータベースサーバ５に送信する（ステップＳ１１）。しかし、データベースサーバ５は停止状態であるため、事象データ送信部７４は事象データを送信することができない。このような場合、事象データ送信部７４は、送信のリトライを行い、リトライを所定の回数行っても送信に成功しない場合には、送信を止める（ステップＳ１３）。ここでは、データベースサーバ５からリカバリ要求を受信するまで待機する。リカバリ要求については、後に詳しく述べる。なお、送信できなかった事象データは、送信済ログ格納部７３には格納されず、送信用ログ格納部７２に格納されたままになっている。そして、処理は端子Ａを介して図４のステップＳ１９へ移行する。
【００２３】
ステップＳ１３が終了した時点におけるシステムの模式図を図７に示す。図７では、ステップＳ７において事象受信装置７が受信した事象ｅ及びｆについての事象データが、送信用ログ格納部７２に格納されている。また、ステップＳ１１において、事象ｅ及びｆについての事象データがデータベースサーバ５に送信されているが、送信は失敗している。そして、ステップＳ１３では送信が停止される。この時点においては、事象データベース３には事象ａ及びｂについての事象データが格納され、送信用ログ格納部７２には事象ｅ及びｆについての事象データが格納され、送信済ログ格納部７３には事象ａ乃至ｄについての事象データが格納され、ワークメモリ５２には事象データが格納されていない状態となっている。
【００２４】
図３の説明に戻り、データベースサーバ５が障害から復旧し、正常に稼動することができるようになった場合、データベースサーバ５のリカバリ要求部５１２は、事象データベース３に登録されている事象発生時刻の情報のうち、最も遅い（すなわち、現時点の時刻に最も近い）事象発生時刻の情報を特定する（ステップＳ１５）。すなわち、いつの時点までの事象データが事象データベース３に登録されているかを特定する。そして、処理は端子Ｂを介して図４のステップＳ１７へ移行する。なお、この時点においては、事象データの受け付けは開始しないようにする。これは、障害からの復旧後すぐに事象データの受け付けを開始し、以下で述べる処理を行わずに、事象受信装置７から送られてくる事象データを受信してしまうと、失われた事象データを事象データベース３に優先して登録することができないからである。そうすると、事象データベース３には、実際に事象が発生した順序どおりに事象データが登録されていない状態になるので、単に登録順に事象データを読み出すだけの端末１の操作者は事象の発生状況を正確に把握することができなくなる。
【００２５】
次に、図４について説明する。データベースサーバ５のリカバリ要求部５１２は、ステップＳ１５において特定した事象発生時刻の情報を含むリカバリ要求を、事象受信装置７に送信する（ステップＳ１７）。リカバリ要求は、特定した事象発生時刻よりも後の事象発生時刻の情報を含む事象データの再送を要求するものである。なお、リカバリを行うタイミングとして、定刻や周期的にリカバリを行う方法や、復旧後最初の事象発生時にリカバリを行う方法も考えられる。しかし、これらの方法では、復旧後リカバリを行うまでの時間が変動しやすく、場合によっては長時間かかってしまう。その場合、事象データベースに登録された事象データを監視している端末では、事象発生後長時間経過してから事象発生の事実を知ることになり、事象を適切に監視することができない。これに対し、上記のようなタイミングでリカバリ要求を行うようにすれば、復旧後リカバリを行うまでの時間が変動しにくいという利点がある。
【００２６】
そして、事象受信装置７のリカバリ応答部７５は、データベースサーバ５からリカバリ要求を受信し、メインメモリ等の記憶装置に格納する（ステップＳ１９）。さらに、リカバリ応答部７５は、リカバリ要求に含まれる事象発生時刻の情報と同じ情報を含む事象データと、当該事象発生時刻よりも後に発生した事象についての事象データとを送信済ログ格納部７３からリカバリ対象の事象データとして読み出す（ステップＳ２１）。前述のように、送信済ログ格納部７３には事象発生時刻の順序どおりに事象データが格納されているので、リカバリ応答部７５は、リカバリ要求に含まれる事象発生時刻の情報と同じ情報を含む事象データを特定し、当該事象データから順に、事象発生時刻が最も遅い事象データまでを読み出している。
【００２７】
そして、リカバリ応答部７５は、リカバリ対象の事象データを送信用ログ格納部７２に格納する（ステップＳ２３）。送信用ログ格納部７２に事象発生時刻の順序どおりに事象データを格納するようにしている場合には、ステップＳ２３においても、事象発生時刻の順序どおりになるように格納するものとする。なお、リカバリ対象の事象データは、データベースサーバ５の停止時に失われた事象データであるので、既に送信用ログ格納部７２に格納されている事象データより優先してデータベースサーバ５に送信される位置に格納される。一方、送信用ログ格納部７２に事象発生時刻の順序どおりに事象データを格納するようにしていない場合には、データベースサーバ５に事象データを送信する段階で事象発生時刻の順序どおりに事象データを抽出し、抽出した順序どおりに事象データを送信することにより、リカバリ対象の事象データから優先して送信するようにする。
【００２８】
ここで、ステップＳ１９乃至Ｓ２３において行われる処理について、図８の模式図を用いて説明する。ステップＳ１９において事象受信装置７がデータベースサーバ５から受信するリカバリ要求には、事象データベース３に登録されている事象発生時刻の情報のうち、最も遅い事象発生時刻である「００：００：０１」という情報が含まれる。図８においては、「００：００：０１」に発生した事象ｂのデータを四角の枠で囲って示している。次に、ステップＳ２１において、事象受信装置７は、事象ｂの発生時刻００時００分０１秒よりも後に発生した事象ｃ及びｄについての事象データを読み出す。そして、ステップＳ２３において、事象ｃ及びｄについての事象データが送信用ログ格納部７２に格納される。この時点において、事象データベース３及び送信済ログ格納部７３には事象ａ及びｂについての事象データが格納され、送信用ログ格納部７２には事象ｃ乃至ｆについての事象データが格納され、ワークメモリ５２には事象データが格納されていない状態となっている。
【００２９】
図４の説明に戻り、事象受信装置７のリカバリ応答部７５は、リカバリ要求に対するリカバリ応答をデータベースサーバ５に送信する（ステップＳ２５）。リカバリ応答には事象データは含まれておらず、リカバリの準備ができたことをデータベースサーバ５に通知するものである。
【００３０】
そして、データベースサーバ５の受信部５１１は、リカバリ応答を受信する（ステップＳ２７）。さらに、受信部５１１は、事象受信装置７からの事象データの受け付けを開始する（ステップＳ２９）。リカバリ応答を受信した後であれば、リカバリ対象の事象データから事象発生時刻の順序どおりに事象データが送られてくるので、この時点で事象データの受け付けを開始することにより、事象データを事象発生時刻の順序どおりに受信することができる。
【００３１】
一方、事象受信装置７の事象データ送信部７４は、送信用ログ格納部７２に格納されている事象データを、事象発生時刻の順序どおりにデータベースサーバ５に送信する（ステップＳ３１）。事象発生時刻の順序どおりに事象データを送信する具体的な方法については、ステップＳ１及びステップＳ２３の説明で述べたとおりである。そして、事象データ送信部７４は、送信した事象データを送信した順に送信済ログ格納部７３に格納する（ステップＳ３３）。
【００３２】
そして、データベースサーバ５の受信部５１１は、事象受信装置７から事象データを受信し、ワークメモリ５２に格納する（ステップＳ３５）。ここでは、事象データは、受信した順序どおり、すなわちリカバリ対象の事象データから事象発生時刻の順序どおりにワークメモリ５２に格納される。
【００３３】
ここで、ステップＳ３１乃至Ｓ３５において行われる処理について、図９の模式図を用いて説明する。ステップＳ３１においては、事象受信装置７は、事象ｃ乃至ｆについての事象データをｃ、ｄ、ｅ、ｆの順にデータベースサーバ５へ送信する。そして、ステップＳ３３において、事象受信装置７は、送信した事象データをｃ、ｄ、ｅ、ｆの順に送信済ログ格納部７３に格納する。一方、ステップＳ３５において、データベースサーバ５は、事象受信装置７から事象データをｃ、ｄ、ｅ、ｆの順に受信し、受信した順序どおりにワークメモリ５２に格納する。この時点において、事象データベース３には事象ａ及びｂについての事象データが登録され、ワークメモリ５２には事象ｃ乃至ｆについての事象データが格納され、送信済ログ格納部７３には事象ａ乃至ｆについての事象データが格納され、送信用ログ格納部７２には事象データが登録されていない状態となっている。
【００３４】
図４の説明に戻り、データベースサーバ５の登録部５３は、ワークメモリ５２に格納された事象データを当該事象データが格納されている順に読み出し、事象データベース３に登録する（ステップＳ３７）。したがって、事象データベース３には、実際に事象が発生した順序どおりに事象データが登録される。これにより、端末１は、事象データベース３に登録されている事象データを事象発生の順序どおりに読み出すようになる。
【００３５】
ステップＳ３７が終了した時点におけるシステムの模式図を図１０に示す。事象データベース３及び送信済ログ格納部７３には、事象ａ乃至ｆについての事象データが格納されている。事象データベース３には、ワークメモリ５２に格納されている間に失われた、事象ｃ及びｄについての事象データが、事象の発生順序に従って格納されていることがわかる。
【００３６】
以上のような処理を行うことにより、データベースサーバ５に障害が発生した場合であっても、復旧後、障害時に失われた事象データを優先的に事象データベース３に登録するので、事象データベース３には事象発生の順序どおりに事象データが登録されるようになる。そして、端末１において事象の監視を適切に継続できるようになる。
【００３７】
以上本技術の実施の形態を説明したが、本技術はこれに限定されるものではない。例えば、上で説明したデータベースサーバ５及び事象受信装置７の機能ブロック構成は必ずしも実際のプログラムモジュール構成に対応するものではない。
【００３８】
また、処理フローについても処理結果が変わらない限り、順番を入れ替えたり、並列実行するようにしてもよい。
【００３９】
例えば、本実施の形態では、事象受信装置７が送信済ログ格納部７３からリカバリ対象の事象データを読み出し、送信用ログ格納部７２に格納した後に、リカバリ応答を送信するような例を示した。しかし、送信用ログ格納部７２からの事象データの送信をすぐには行わないことを条件に、リカバリ応答を送信した後に、上記の処理を行うようにしてもよい。
【００４０】
本技術の実施の形態をまとめると以下のとおりになる。
【００４１】
本技術の第１の態様に係るデータリカバリ方法は、障害による停止状態から復旧した場合、順序を示す順序情報を含む事象データが事象データ受信装置からの受信順序どおりに格納されているデータベースから、現時点の状態において順序が最後となっている順序情報を特定するステップと、特定された順序情報を含み且つ当該順序情報より後の順序についての順序情報を含む事象データの再送を要求するリカバリ要求を事象データ受信装置に送信するステップとを含む。
【００４２】
このような処理により、障害から復旧した後、データベースに登録する前に失われた事象データ及び未受信の事象データの送信を事象データ受信装置に要求するので、事象データの欠落や重複登録を防ぎ、事象の監視を適切に継続できるようになる。
【００４３】
また、第１の態様に係るデータリカバリ方法が、リカバリ要求に対するリカバリ応答を事象データ受信装置から受信した場合、リカバリ要求に含まれる順序情報より後の順序についての順序情報を含む事象データの受け付けを開始するステップをさらに含むようにしてもよい。障害からの復旧後すぐに事象データの受け付けを開始し、事象データ受信装置においてリカバリ要求に対する処理が行われる前に、事象データ受信装置から送られてくる事象データを受信してしまうと、失われた事象データをデータベースに優先して登録することができない。そうすると、データベースには、実際に事象が発生した順序どおりに事象データが登録されていない状態になり、事象の発生状況を正確に把握することができなくなる。それを防ぐため、事象の発生順序どおりに事象データを受信できるようにするものである。
【００４４】
さらに、事象データの受け付け開始後事象データ受信装置から、順序情報が示す順序に従って送られてくる事象データを当該順序で受信し、受信順序どおりにデータベースに登録するステップをさらに含むようにしてもよい。事象データがデータベースに順序どおりに登録されれば、事象データを読み出す毎に順序の整合性をとるなどの処理をしなくても、登録順に事象データを読み出すだけで事象を発生順序どおりに監視をすることができるようになる。
【００４５】
本技術の第２の態様に係るデータ再送方法は、順序を示す順序情報を含むリカバリ要求をデータベースサーバから受信した場合、順序情報を含み且つ送信済みである事象データが格納されている送信済みログ格納部から、受信した順序情報より後の順序についての順序情報を含む事象データをリカバリ対象データとして抽出するステップと、抽出されたリカバリ対象データを、順序情報を含み且つ未送信である事象データが格納されている送信用ログ格納部に格納するステップと、リカバリ要求に対するリカバリ応答をデータベースサーバに送信するステップと、送信用ログ格納部に格納されている事象データを、当該事象データに含まれる順序情報が示す順序どおりにデータベースサーバに送信するステップとを含む。
【００４６】
このような処理により、データベースに登録する前に失われた事象データ及び未送信の事象データを、データベースサーバが、順序情報が示す順序どおりに受信及び登録すれば、事象データの欠落、重複登録、及び登録順序の誤りを防ぎ、事象の監視を適切に継続できるようになる。
【００４７】
なお、上記方法を実現するためのプログラムを作成することができ、当該プログラムは、例えばフレキシブルディスク、ＣＤ−ＲＯＭ、光磁気ディスク、半導体メモリ、ハードディスク等の記憶媒体又は記憶装置に格納される。中間的な処理結果は、メインメモリ等の記憶装置に一時保管される。
【００４８】
また、端末１、データベースサーバ５、事象受信装置７、及び事象監視装置Ａ乃至Ｃは、図１１のようなコンピュータ装置であって、メモリ２５０１（記憶装置）とＣＰＵ２５０３（処理装置）とハードディスク・ドライブ（ＨＤＤ）２５０５と表示装置２５０９に接続される表示制御部２５０７とリムーバブル・ディスク２５１１用のドライブ装置２５１３と入力装置２５１５とネットワークに接続するための通信制御部２５１７とがバス２５１９で接続されている。オペレーティング・システム（ＯＳ：Operating System）及び本実施の形態における処理を実施するためのアプリケーション・プログラムは、ＨＤＤ２５０５に格納されており、ＣＰＵ２５０３により実行される際にはＨＤＤ２５０５からメモリ２５０１に読み出される。必要に応じてＣＰＵ２５０３は、表示制御部２５０７、通信制御部２５１７、ドライブ装置２５１３を制御して、必要な動作を行わせる。また、処理途中のデータについては、メモリ２５０１に格納され、必要があればＨＤＤ２５０５に格納される。本技術の実施の形態では、上で述べた処理を実施するためのアプリケーション・プログラムはリムーバブル・ディスク２５１１に格納されて頒布され、ドライブ装置２５１３からＨＤＤ２５０５にインストールされる。インターネットなどのネットワーク及び通信制御部２５１７を経由して、ＨＤＤ２５０５にインストールされる場合もある。このようなコンピュータ装置は、上で述べたＣＰＵ２５０３、メモリ２５０１などのハードウエアとＯＳ及び必要なアプリケーション・プログラムとが有機的に協働することにより、上で述べたような各種機能を実現する。
【００４９】
以上の実施の形態に関し、さらに以下の付記を開示する。
【００５０】
（付記１）
障害による停止状態から復旧した場合、順序を示す順序情報を含む事象データが事象データ受信装置からの受信順序どおりに格納されているデータベースから、現時点の状態において前記順序が最後となっている順序情報を特定するステップと、
特定された前記順序情報を含み且つ当該順序情報より後の順序についての順序情報を含む事象データの再送を要求するリカバリ要求を前記事象データ受信装置に送信するステップと、
を含み、コンピュータにより実行されるデータリカバリ方法。
【００５１】
（付記２）
前記リカバリ要求に対するリカバリ応答を前記事象データ受信装置から受信した場合、前記リカバリ要求に含まれる前記順序情報より後の順序についての順序情報を含む事象データの受け付けを開始するステップ
をさらに含む付記１記載のデータリカバリ方法。
【００５２】
（付記３）
前記事象データの受け付け開始後前記事象データ受信装置から、前記順序情報が示す順序に従って送られてくる事象データを当該順序で受信し、受信順序どおりに前記データベースに登録するステップ
をさらに含む付記２記載のデータリカバリ方法。
【００５３】
（付記４）
順序を示す順序情報を含むリカバリ要求をデータベースサーバから受信した場合、順序情報を含み且つ送信済みである事象データが格納されている送信済みログ格納部から、受信した前記順序情報より後の順序についての順序情報を含む事象データをリカバリ対象データとして抽出するステップと、
抽出された前記リカバリ対象データを、順序情報を含み且つ未送信である事象データが格納されている送信用ログ格納部に格納するステップと、
前記リカバリ要求に対するリカバリ応答を前記データベースサーバに送信するステップと、
前記送信用ログ格納部に格納されている前記事象データを、当該事象データに含まれる順序情報が示す順序どおりに前記データベースサーバに送信するステップと、
を含み、コンピュータにより実行されるデータ再送方法。
【００５４】
（付記５）
データベースサーバと、
事象データ受信装置と、
を有し、
前記データベースサーバは、
障害による停止状態から復旧した場合、順序を示す順序情報を含む事象データが前記事象データ受信装置からの受信順序どおりに格納されているデータベースから、現時点の状態において前記順序が最後となっている順序情報を特定し、特定された前記順序情報を含み且つ当該順序情報より後の順序についての順序情報を含む事象データの再送を要求するリカバリ要求を前記事象データ受信装置に送信する手段と、
前記リカバリ要求に対するリカバリ応答を前記事象データ受信装置から受信した場合、前記リカバリ要求に含まれる前記順序情報より後の順序についての順序情報を含む事象データの受け付けを開始し、当該受け付けの開始後前記事象データ受信装置から、前記順序情報が示す順序に従って送られてくる事象データを当該順序で受信する手段と、
受信した前記事象データを、受信順序どおりに前記データベースに登録する手段と、
を有し、
前記事象データ受信装置は、
順序情報を含み且つ送信済みである事象データが格納されている送信済みログ格納部と、
順序情報を含み且つ未送信である事象データが格納されている送信用ログ格納部と、
前記リカバリ要求を前記データベースサーバから受信した場合、前記送信済みログ格納部から、受信した前記順序情報より後の順序についての順序情報を含む事象データをリカバリ対象データとして抽出し、抽出された前記リカバリ対象データを前記送信用ログ格納部に格納すると共に、前記リカバリ要求に対するリカバリ応答を前記データベースサーバに送信する手段と、
前記送信用ログ格納部に格納されている前記事象データを、当該事象データに含まれる順序情報が示す順序どおりに前記データベースサーバに送信する手段と、
を有するデータリカバリシステム。
【図面の簡単な説明】
【００５５】
【図１】本技術の実施の形態におけるシステム概要図である。
【図２】事象データベースに格納されるデータの一例を示す図である。
【図３】データベースサーバ及び事象受信装置の処理フローを示す図である。
【図４】データベースサーバ及び事象受信装置の処理フローを示す図である。
【図５】本実施の形態について具体的に説明するための模式図である。
【図６】本実施の形態について具体的に説明するための模式図である。
【図７】本実施の形態について具体的に説明するための模式図である。
【図８】本実施の形態について具体的に説明するための模式図である。
【図９】本実施の形態について具体的に説明するための模式図である。
【図１０】本実施の形態について具体的に説明するための模式図である。
【図１１】コンピュータの機能ブロック図である。
【符号の説明】
【００５６】
１  端末    ３  事象データベース    ５  データベースサーバ
７  事象受信装置    ９  ネットワーク
５１  通信部    ５１１  受信部    ５１２  リカバリ要求部
５２  ワークメモリ    ５３  登録部
７１  事象データ受信部    ７２  送信用ログ格納部
７３  送信済ログ格納部    ７４  事象データ送信部
７５  リカバリ応答部
【図１】
2010128683.tif 000003
【図２】
2010128683.tif 000004
【図３】
2010128683.tif 000005
【図４】
2010128683.tif 000006
【図５】
2010128683.tif 000007
【図６】
2010128683.tif 000008
【図７】
2010128683.tif 000009
【図８】
2010128683.tif 000010
【図９】
2010128683.tif 000011
【図１０】
2010128683.tif 000012
【図１１】
2010128683.tif 000013