(57)【要約】【課題】常にメインデータベースを復元するためのバックアップデータを確保し、かつ、メインデータベースの更新停止時間を短くする。【解決手段】アプリケーションからの更新要求に従って更新可能な状態であるメインＤＢ２１と、バックアップデータベースＡとを同期させる（Ｓ１１，Ｓ１２）。メインＤＢ２１の記憶装置の更新を禁止して（Ｓ１３）、メインＤＢ２１とバックアップデータベースＡとを完全に同期させた状態で切り離す（Ｓ１４）。メインＤＢ２１とバックアップデータベースＢとの高速切り離しを行い（Ｓ１５）、メインＤＢ２１の更新を可能にして（Ｓ１６）、メインＤＢ２１をバックアップデータベースＢへコピーして同期させる（Ｓ１７）。【選択図】図３
2008186355.tif 000002
【特許請求の範囲】
【請求項１】
第１の記憶装置と、
前記第１の記憶装置をバックアップするための第２及び第３の記憶装置と、
前記第１記憶装置を更新する更新手段と、
前記更新手段が前記第１の記憶装置の更新内容を記憶する更新履歴記憶部と、
前記第１の記憶装置の記憶内容を第２及び第３の記憶装置にコピーして同期させるバックアップ処理部とを備え、
前記バックアップ処理部は、
前記更新手段が前記第１の記憶装置を更新可能な状態のときに、前記第１の記憶装置及び前記第２の記憶装置を同期させ、
前記第１の記憶装置及び前記第２の記憶装置が完全に同期したときに、前記更新手段が前記第１の記憶装置の更新を停止した状態になると、前記第１の記憶装置と前記第２の記憶装置との切り離しを行い、
前記切り離し後、前記第１の記憶装置が更新停止状態である所定時刻を基準時として、前記更新手段が再び前記第１の記憶装置を更新可能な状態となった後に、前記更新履歴記憶部と前記第１の記憶装置を参照して、第３の記憶装置を前記基準時の第１の記憶装置の記憶内容と一致させることにより、複数の記憶装置にバックアップを行うバックアップシステム。
【請求項２】
前記更新履歴記憶部は、前記更新手段が更新した領域を特定するための情報と、当該更新前のデータと、当該更新の時刻とを対応付けて記憶することを特徴とする請求項１記載のバックアップシステム。
【請求項３】
アプリケーションからの更新要求に従って更新可能な状態である第１の記憶装置と、前記第１の記憶装置のバックアップデータを記憶するための第２の記憶装置とを同期させるステップと、
前記第１の記憶装置の更新を禁止して、前記第１及び前記第２の記憶装置を完全に同期させた状態で前記第１及び前記第２の記憶装置を切り離すステップと、
前記第１の記憶装置の更新が禁止された状態のまま、基準時刻を特定するステップと、
前記第１の記憶装置の更新を可能にして、前記基準時刻以降に前記第１の記憶装置が更新された更新履歴を記憶するステップと、
前記更新履歴及び前記第１の記憶装置に基づいて、前記基準時刻における前記第１の記憶装置と第３の記憶装置とを同期させるステップと、を備えた複数の記憶装置にバックアップを行うバックアップ方法。
【請求項４】
アプリケーションからの更新要求に従って更新可能な状態である第１の記憶装置と、前記第１の記憶装置のバックアップデータを記憶するための第２の記憶装置とを同期させるステップと、
前記第１の記憶装置の更新を禁止して、前記第１及び前記第２の記憶装置を完全に同期させた状態で前記第１及び前記第２の記憶装置を切り離すステップと、
前記第１の記憶装置の更新が禁止された状態のまま、基準時刻を特定するステップと、
前記第１の記憶装置の更新を可能にして、前記基準時刻以降に前記第１の記憶装置が更新された更新履歴を記憶するステップと、
前記更新履歴及び前記第１の記憶装置に基づいて、前記基準時刻における前記第１の記憶装置と第３の記憶装置とを同期させるステップと、をコンピュータに実行させて、複数の記憶装置にバックアップを行うためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、記憶装置の記憶内容を二重にバックアップする技術に関する。
【背景技術】
【０００２】
コンピュータシステムにおいて、大量のデータを記憶したメインデータベースが、何らかの理由でデータの一部が損傷するなどの障害が生じたときは、予め取得しておいたバックアップデータを用いてメインデータベースを復旧する。このため、定期的にメインデータベースのバックアップデータベースをとる必要がある。
【０００３】
ここで、メインデータベースの容量が大きくなると、バックアップをとるためのデータコピーに時間がかかるようになる。そこで、オンラインシステムでは、メインデータベースの更新を停止させることなく、更新可能な状態のままでバックアップ用記憶装置へデータをコピーするバックアップ方法がとられている（例えば特許文献１）。
【特許文献１】特開２００３−６０２０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、バックアップ用記憶装置が一つであれば、バックアップをとる際には前回のバックアップデータに上書きを行うので、このバックアップを行っている時間帯にはメインデータベースを復元するためのバックアップ用のデータが存在しないことになる。つまり、この時間帯にメインデータベースに何らかの障害が起きると、データを復元できない。
【０００５】
そのため、複数のバックアップ用記憶装置に、同じ時刻のメインデータベースのバックアップをとるようにすると、長時間に渡ってメインデータベースの更新を停止させなければならなくなってしまう。これは、オンラインシステムにおいては好ましくない。
【０００６】
そこで、本発明の目的は、常にメインデータベースを復元するためのバックアップデータを確保し、かつ、メインデータベースの更新停止時間を短くすることである。
【課題を解決するための手段】
【０００７】
本発明の一実施態様に従うバックアップシステムは、第１の記憶装置と、前記第１の記憶装置をバックアップするための第２及び第３の記憶装置と、前記第１記憶装置を更新する更新手段と、前記更新手段が前記第１の記憶装置の更新内容を記憶する更新履歴記憶部と、前記第１の記憶装置の記憶内容を第２及び第３の記憶装置にコピーして同期させるバックアップ処理部とを備える。前記バックアップ処理部は、前記更新手段が前記第１の記憶装置を更新可能な状態のときに、前記第１の記憶装置及び前記第２の記憶装置を同期させ、前記第１の記憶装置及び前記第２の記憶装置が完全に同期したときに、前記更新手段が前記第１の記憶装置の更新を停止した状態になると、前記第１の記憶装置と前記第２の記憶装置との切り離しを行い、前記切り離し後、前記第１の記憶装置が更新停止状態である所定時刻を基準時として、前記更新手段が再び前記第１の記憶装置を更新可能な状態となった後に、前記更新履歴記憶部と前記第１の記憶装置を参照して、第３の記憶装置を前記基準時の第１の記憶装置の記憶内容と一致させることにより、複数の記憶装置にバックアップを行う。
【０００８】
好適な実施形態では、前記更新履歴記憶部は、前記更新手段が更新した領域を特定するための情報と、当該更新前のデータと、当該更新の時刻とを対応付けて記憶するようにしてもよい。
【０００９】
本発明の一実施態様に従うバックアップ方法は、アプリケーションからの更新要求に従って更新可能な状態である第１の記憶装置と、前記第１の記憶装置のバックアップデータを記憶するための第２の記憶装置とを同期させるステップと、前記第１の記憶装置の更新を禁止して、前記第１及び前記第２の記憶装置を完全に同期させた状態で前記第１及び前記第２の記憶装置を切り離すステップと、前記第１の記憶装置の更新が禁止された状態のまま、基準時刻を特定するステップと、前記第１の記憶装置の更新を可能にして、前記基準時刻以降に前記第１の記憶装置が更新された更新履歴を記憶するステップと、前記更新履歴及び前記第１の記憶装置に基づいて、前記基準時刻における前記第１の記憶装置と第３の記憶装置とを同期させるステップと、を備えた複数の記憶装置にバックアップを行う。
【発明を実施するための最良の形態】
【００１０】
以下、本発明の一実施形態に係るバックアップシステムについて、図面を参照して説明する。
【００１１】
図１は、本実施形態に係るバックアップシステム１の構成図である。
【００１２】
本システム１は、種々のコンピュータシステムにより構成することが可能であり、例えば以下に説明する本システム１内の個々の構成要素または機能は、例えば、コンピュータプログラムを実行することにより実現される。
【００１３】
本実施形態に係るバックアップシステム１は、所定の業務処理を行うアプリケーション（ＡＰ）１１と、メインデータベース２１と、メインデータベース２１のバックアップ管理を行う管理部１３と、メインデータベース２１を更新するデータベース更新部１５と、メインデータベース２１の更新履歴を保持する更新履歴記憶部１７と、メインデータベース２１をバックアップするためのデータコピーを行うバックアップ処理部１９と、バックアップデータベースＡ，Ｂとを備える。
【００１４】
管理部１３は、データベース更新部１５及びバックアップ処理部１９を管理する。例えば、管理部１３は、データベース更新部１５に対して、メインデータベース２１の更新を許可したり（更新可能状態）、メインデータベース２１の更新を禁止したりする（更新停止状態）。また、管理部１３は、バックアップ処理部１９に対して、バックアップデータベースＡまたはＢをメインデータベース２１と同期させる、すなわち、メインデータベース２１のデータをバックアップデータベースＡまたはＢへコピーするように指示する。
【００１５】
データベース更新部１５は、メインデータベース２１の更新が許可されているときに、ＡＰ１１からの指示に基づいて、メインデータベース２１を更新する。データベース更新部１５は、メインデータベース２１を更新する際、その更新を行った日時及び更新内容を更新履歴記憶部１７に格納する。メインデータベース２１の更新が禁止されているときは、データベース更新部１５は、ＡＰ１１からの要求があってもメインデータベース２１の更新を行わない。
【００１６】
更新履歴記憶部１７は、データベース更新部１５がメインデータベース２１を更新したときの更新履歴を記憶する。例えば図２に示すように、更新履歴記憶部１７には、更新日時１７１と更新内容１７２とが対応付けて記憶されている。更新内容１７２は、例えば、更新されたメインデータベース２１上の領域を示すアドレス、更新前データ及び更新後データが含まれる。
【００１７】
バックアップ処理部１９は、メインデータベース２１の記憶内容を、バックアップデータベースＡまたはＢへコピーして、記憶内容を同期させる。バックアップ処理部１９が行うバックアップ手法には、以下に説明する事前コピー及び事後コピーがある。
【００１８】
すなわち、事前コピーでは、メインデータベース２１が更新可能な状態のまま、つまり、ＡＰ１１からの要求があればデータベース更新部１５が随時メインデータベース２１を更新する状態を維持したまま、バックアップ処理部１９がバックアップデータベースＡ（またはＢ）へメインデータベース２１のデータをコピーして、両者を同期させるようにする。そして、メインデータベース２１の記憶内容をバックアップデータベースＡ（またはＢ）へほぼコピーし終えたときに、データベース更新部１５によるメインデータベース２１の更新が禁止された状態で、メインデータベース２１とバックアップデータベースＡ（またはＢ）とを完全に同期させて、切り離しを行う。これにより、切り離しを行った時刻におけるメインデータベース２１の完全なバックアップを作成できる。
【００１９】
一方、事後コピーでは、データベース更新部１５によるメインデータベース２１の更新が禁止されているとき、バックアップのための基準時刻を定める（高速切り離し）。その後、管理部１３の指示に従ってデータベース更新部１５によるメインデータベース２１の更新が可能になると、バックアップ処理部１９は、バックアップデータベースＢ（またはＡ）が、メインデータベース２１の基準時刻の記憶内容と一致するようにコピーをする。このとき、バックアップ処理部１９は、メインデータベース２１及び更新履歴記憶部１７を参照してコピーする。すなわち、基準時刻以降にメインデータベース２１が更新された箇所は、更新履歴記憶部１７を参照することにより分かるので、バックアップ処理部１９は基準時刻以降に更新された箇所が、基準時刻の記憶内容になるようにしてコピーする。
【００２０】
図３は、本実施形態における二重バックアップ処理の手順を示すフローチャートである。
【００２１】
まず、管理部１３の指示により、バックアップ処理部１９がバックアップデータベースＡへ事前コピーを開始する（Ｓ１１）。このとき、データベース更新部１５は、メインデータベース２１の更新が可能な状態のままである。従って、ＡＰ１１からの要求があれば、データベース更新部１５はメインデータベース２１の更新を行いつつ、これと並行してバックアップ処理部１９は、引き続きバックアップデータベースＡへコピーを行う（Ｓ１２）。
【００２２】
バックアップデータベースＡの記憶内容とメインデータベース２１の記憶内容との同期がほぼとれたときに、管理部１３は、データベース更新部１５によるメインデータベース２１の更新を禁止して、バックアップ処理部１９は、メインデータベース２１とバックアップデータベースＡを完全に同期させて切り離す（Ｓ１３，Ｓ１４）。これにより、事前コピーが完了する。
【００２３】
管理部１３は、次に、バックアップ処理部１９に対してバックアップデータベースＢへの事後コピーの開始を指示する（Ｓ１５）。つまり、バックアップ処理部１９は、まず、事後コピーの基準時刻を定める（高速切り離し）。そして、バックアップ処理部１９は、基準時刻におけるメインデータベース２１の記憶内容と同期するように、バックアップデータベースＢへのコピーを開始する。
【００２４】
管理部１３は、ここで、データベース更新部１５に対してメインデータベース２１の更新を許可する。つまり、メインデータベース２１が更新可能な状態となる（Ｓ１６）。これにより、データベース更新部１５は、ＡＰ１１からの要求に応じてメインデータベース２１を更新する。
【００２５】
バックアップ処理部１９は、時々刻々と更新されていくメインデータベース２１と更新履歴記憶部１７を参照して、基準時刻におけるメインデータベース２１の記憶内容と完全に同期するようにバックアップデータベースＢを更新する（Ｓ１７）。
【００２６】
次に、図４を用いて、図３のフローチャートに従って二重バックアップ処理を行ったときのバックアップデータについて説明する。
【００２７】
まず、ステップＳ１１〜Ｓ１４で、メインデータベース２１からバックアップデータベースＡへ事前コピーを行っている間は、バックアップデータベースＢに前回のバックアップデータが残っている。従って、この間に何らかの障害が発生してメインデータベース２１を復元する必要が生じたときは、バックアップデータベースＢからリストアすることで復旧できる。
【００２８】
つぎに、メインデータベース２１とバックアップデータベースＢとを切り離した後は、バックアップデータベースＡには、完全に現在の状態が保存されているので、バックアップデータベースＡ，Ｂのいずれを用いても、メインデータベース２１を復元することができる。
【００２９】
さらに、ステップＳ１５〜Ｓ１７で、メインデータベース２１からバックアップデータベースＢへ事後コピーを行っている間は、バックアップデータベースＡに直前に行った事前コピーのバックアップデータが残っている。従って、この間に障害が発生しても、バックアップデータベースＡからリストアすることでメインデータベース２１を復旧できる。
【００３０】
本実施形態によれば、どのようなタイミングであっても、必ずバックアップ用のデータが確保されており、システムの安全性を高めることができる。さらに、本実施形態によれば、メインデータベース２１の更新を停止する時間も、メインデータベース２１とバックアップデータベースＡとの切り離し、及びメインデータベース２１とバックアップデータベースＢとの高速切り離しを行うための僅かの時間で済む。従って、ＡＰ１１に対して与える影響も最小限に抑えることができる。
【００３１】
上述した本発明の実施形態は、本発明の説明のための例示であり、本発明の範囲をそれらの実施形態にのみ限定する趣旨ではない。当業者は、本発明の要旨を逸脱することなしに、他の様々な態様で本発明を実施することができる。
【図面の簡単な説明】
【００３２】
【図１】本発明の一実施形態に係るバックアップシステムの構成図である。
【図２】更新履歴記憶部のデータ構造の一例を示す。
【図３】二重バックアップ処理の手順を示すフローチャートである。
【図４】二重バックアップ処理を行ったときのバックアップデータの説明図である。
【符号の説明】
【００３３】
１           バックアップシステム
１３       管理部
１５       データベース更新部
１５    更新部
１７       更新履歴記憶部
１９       バックアップ処理部
２１       メインデータベース
Ａ，Ｂ    バックアップデータベース
【図１】
2008186355.tif 000003
【図２】
2008186355.tif 000004
【図３】
2008186355.tif 000005
【図４】
2008186355.tif 000006