(57)【要約】【課題】  新たな列が追加されたデータベースの切り戻しを容易に実行する。【解決手段】  ＤＢ記憶装置に格納されていて新たな列が追加されたデータベースの、新たな列が追加される前に保存されたバックアップ、及び、バックアップの保存時以降に実行されたデータベースの更新リクエストの時系列を保存する作業記憶手段と、ＤＢ記憶装置にバックアップを再格納して、再格納後のデータベースに対し、新たな列を更新しない更新リクエストを時系列から選択して、更新リクエストを実行する更新実行手段に出力する切り戻し実行手段と、を備えるデータベース回復装置。【選択図】      図１
2019016309.tif 000002
【特許請求の範囲】
【請求項１】
ＤＢ記憶装置に格納されていて新たな列が追加されたデータベースの、前記新たな列が追加される前に保存されたバックアップ、及び、前記バックアップの保存時以降に実行された前記データベースの更新リクエストの時系列を保存する作業記憶手段と、
前記ＤＢ記憶装置に前記バックアップを再格納して、再格納後の前記データベースに対し、前記新たな列を更新しない前記更新リクエストを前記時系列から選択して、前記更新リクエストを実行する更新実行手段に出力する切り戻し実行手段と、を備えるデータベース回復装置。
【請求項２】
ユーザインターフェースを提供するサービス提供装置、及び、前記更新実行手段を備えるＡＰ装置、及び、前記ＤＢ記憶装置に接続され、
前記サービス提供装置から入力された前記更新リクエストを受け付けて前記ＡＰ装置、及び、更新内容記録手段に送信する作業受付手段と、
前記更新リクエストを前記作業記憶手段に時系列に格納する前記更新内容記録手段と、をさらに備える請求項１のデータベース回復装置。
【請求項３】
前記更新内容記録手段は、前記更新実行手段から前記更新リクエストの実行で更新された列情報を取得し、当該更新リクエストが前記新たな列に対して更新するか否かを判断して、判断結果を当該更新リクエストに関連付けて前記作業記憶手段に保存し、
前記切り戻し実行手段は、前記判断結果に基づいて、前記新たな列を更新しない前記更新リクエストを前記時系列から選択する、請求項２のデータベース回復装置。
【請求項４】
前記新たな列を追加されると、前記ＤＢ記憶装置に格納されている前記新たな列を追加する前の前記データベースのバックアップを前記作業記憶手段に取得し、その後、前記ＤＢ記憶装置に格納されている前記データベースに前記新たな列を追加する機能拡張手段を、さらに備える請求項１乃至請求項３の何れか一項のデータベース回復装置。
【請求項５】
前記切り戻し実行手段は、前記データベースに対し、前記時系列から前記新たな列に対して更新する前記更新リクエストを選択して、前記更新実行手段に出力する請求項１乃至請求項４の何れか一項のデータベース回復装置。
【請求項６】
前記ＤＢ記憶装置と、前記更新実行手段と、をさらに備える請求項１のデータベース回復装置。
【請求項７】
ＤＢ記憶装置に格納されていて新たな列が追加されたデータベースの、前記新たな列が追加される前に保存されたバックアップ、及び、前記バックアップの保存時以降に実行された前記データベースの更新リクエストの時系列を保存し、
前記ＤＢ記憶装置に前記バックアップを再格納して、再格納後の前記データベースに対し、前記新たな列を更新しない前記更新リクエストを前記時系列から選択して、前記更新リクエストを実行する更新実行手段に出力する、データベース回復方法。
【請求項８】
前記更新リクエストの実行で更新された列情報を前記更新実行手段から取得し、当該更新リクエストが前記新たな列に対して更新するか否かを判断して、判断結果を当該更新リクエストに関連付けて保存し、
前記判断結果に基づいて、前記新たな列を更新しない前記更新リクエストを前記時系列から選択する、請求項７のデータベース回復方法。
【請求項９】
ＤＢ記憶装置に格納されていて新たな列が追加されたデータベースの、前記新たな列が追加される前に保存されたバックアップ、及び、前記バックアップの保存時以降に実行された前記データベースの更新リクエストの時系列を保存し、
前記ＤＢ記憶装置に前記バックアップを再格納して、再格納後の前記データベースに対し、前記新たな列を更新しない前記更新リクエストを前記時系列から選択して、前記更新リクエストを実行する実行手段に出力する処理をコンピュータに実行させる、データベース回復プログラム。
【請求項１０】
前記更新リクエストの実行で更新された列情報を前記実行手段から取得し、当該更新リクエストが前記新たな列に対して更新するか否かを判断して、判断結果を当該更新リクエストに関連付けて保存し、
前記判断結果に基づいて、前記新たな列を更新しない前記更新リクエストを前記時系列から選択する処理をコンピュータに実行させる、請求項９のデータベース回復プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データベース回復装置、データベース回復方法、及び、データベース回復プログラム、特に、新たな列が追加されたデータベースのデータベース回復に関する。
【背景技術】
【０００２】
特許文献１は、オンライントランザクション処理の障害復旧システムを開示する。このシステムは、サーバ計算機とクライアント端末間で、データの不整合を解消する。
【０００３】
特許文献２は、情報処理サービスに障害が発生した場合、復旧を行う情報処理装置を開示する。この装置は、記憶装置の未使用領域が閾値を下回ると、所定期間以上使用されていないデータを当該記憶装置から削除する。
【０００４】
特許文献３は、対象機器についてメンテナンスが必要になる時期や必要な作業を取得するための装置を開示する。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００３−３３７７１７号公報
【特許文献２】特許第５５５５７８０号公報
【特許文献３】特開２０１３−０６９０４４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
１）稼働中のサーバ装置の機能強化などにより、データベースに新たな列が追加され、２）追加後、当該サーバ装置が或る程度の期間運転されてデータベースのデータが更新された後に、３）何らかの障害等の理由により、データベースが新たな列が無い状態に戻される場合が有る。データベースの切り戻しは、このように、一旦、新たな列が追加されて、その後、追加された新たな列が無い状態に戻すことを指す。
【０００７】
データベースのデータの回復は、全体バックアップやスナップショットにより行われることが有るが、列の追加、追加取り消しに適切に対応するのは困難である。上述の文献が開示する技術は、いずれも、データベースの切り戻しに適正に対応できない。
【０００８】
本発明は、新たな列が追加されたデータベースの切り戻しを容易に実行できるデータベース回復装置、データベース回復方法、及び、データベース回復プログラム提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明の１実施の形態のデータベース回復装置は、ＤＢ記憶装置に格納されていて新たな列が追加されたデータベースの、前記新たな列が追加される前に保存されたバックアップ、及び、前記バックアップの保存時以降に実行された前記データベースの更新リクエストの時系列を保存する作業記憶手段と、前記ＤＢ記憶装置に前記バックアップを再格納して、再格納後の前記データベースに対し、前記新たな列を更新しない前記更新リクエストを前記時系列から選択して、前記更新リクエストを実行する更新実行手段に出力する切り戻し実行手段と、を備える。
【００１０】
本発明の１実施の形態のデータベース回復方法は、ＤＢ記憶装置に格納されていて新たな列が追加されたデータベースの、前記新たな列が追加される前に保存されたバックアップ、及び、前記バックアップの保存時以降に実行された前記データベースの更新リクエストの時系列を保存し、前記ＤＢ記憶装置に前記バックアップを再格納して、再格納後の前記データベースに対し、前記新たな列を更新しない前記更新リクエストを前記時系列から選択して、前記更新リクエストを実行する更新実行手段に出力する。
【００１１】
本発明の１実施の形態のデータベース回復プログラムは、ＤＢ記憶装置に格納されていて新たな列が追加されたデータベースの、前記新たな列が追加される前に保存されたバックアップ、及び、前記バックアップの保存時以降に実行された前記データベースの更新リクエストの時系列を保存し、前記ＤＢ記憶装置に前記バックアップを再格納して、再格納後の前記データベースに対し、前記新たな列を更新しない前記更新リクエストを前記時系列から選択して、前記更新リクエストを実行する実行手段に出力する処理をコンピュータに実行させる。
【発明の効果】
【００１２】
本発明にかかるデータベース回復装置は、新たな列が追加されたデータベースの切り戻しを容易に実行できる。
【図面の簡単な説明】
【００１３】
【図１】図１は、第一の実施の形態にかかるデータベース回復システム１０の構成を示す図である。
【図２】図２は、コンピュータ装置６０の構成図である。
【図３】図３は、新たな列追加時のデータベース回復装置３の動作を示すフローチャートである。
【図４】図４は、データベースのバックアップ保存、及び、新たな列の追加後におけるデータベース回復装置３の動作を示すフローチャートである。
【図５】図５は、データベース切り戻し時のデータベース回復装置３の動作を示すフローチャートである。
【図６】図６は、データベース回復システム１０の動作例を説明する為の図である（その１）。
【図７】図７は、データベース回復システム１０の動作例を説明する為の図である（その２）。
【図８】図８は、データベース回復システム１０の動作例を説明する為の図である（その３）。
【図９】図９は、データベース回復システム１０の動作例を説明する為の図である（その４）。
【図１０】図１０は、データベース回復システム１０の動作例を説明する為の図である（その５）。
【図１１】図１１は、データベース回復システム１０の動作例を説明する為の図である（その６）。
【図１２】図１２は、第二の実施の形態にかかるデータベース回復装置３の構成を示す図である。
【発明を実施するための形態】
【００１４】
＜第一の実施の形態＞
＜構成＞
図１は、本実施の形態にかかるデータベース回復システム１０の構成を示す図である。データベース回復システム１０は、データベース回復装置３、並びに、当該装置に接続されたＤＢ記憶装置５、ＡＰ装置４、サービス提供装置１、及び、入力装置２を包含する。
【００１５】
サービス提供装置１は、買い物サイトのような一般的なＷｅｂサービスのユーザインターフェースを提供する装置である。ＤＢ記憶装置５は、当該Ｗｅｂサービスが用いるデータベースを格納している。このデータベースはリレーショナルデータベースである。
【００１６】
ＡＰ装置４は、当該データベースの更新を行う更新実行部４１を備えている。ＡＰ装置４は、当該データベースの参照を実行する部位や、サービス提供装置１と連携してＷｅｂサービスを提供するＡＰ（Application Program）を備えていても良い。
【００１７】
入力装置２は、キーボードとディスプレイを備えたコンソール装置である。入力装置２は、データベース回復装置３のオペレータが、データベース回復装置３に指示を含む情報を与える為に使用される。
【００１８】
Ｗｅｂサービスの利用者は、サービス提供装置１が提供するユーザインターフェースを通じて、データベースの更新、例えばショッピングサイトのユーザ登録、を要求する。これを受け、サービス提供装置１は、データベースの更新リクエスト、例えば、http（hypertext transfer protocol）リクエストを生成してＡＰ装置４に向けて出力する。この時、サービス提供装置１は、Ｗｅｂ画面からユーザ情報、例えば、「指名」、「住所」を受け付け、更新リクエストに含めて出力する。
【００１９】
データベース回復装置３は、データベースに新たな列が追加されて或る程度運用された後、当該列が無い状態に切り戻す際のデータベースの回復を制御する装置である。データベース回復装置３は、データベース回復システム１０内においてサービス提供装置１とＡＰ装置４との中間に入るように接続される。
【００２０】
データベース回復装置３は、作業受付手段、例えば作業受付部３１、機能拡張手段、例えば機能拡張部３２、作業記憶手段、例えば作業記憶部３３、更新内容記録手段、例えば更新内容記録部３４、及び、切り戻し実行手段、例えば切り戻し実行部３５を備える。
【００２１】
作業受付部３１は、入力装置２から機能拡張指示を受け付けると、機能拡張部３２に転送する。ここで、機能拡張指示は、データベースに新たな列を追加する指示であり、追加する新たな列の名称、追加位置、データ属性等の追加列情報を含む。さらに、作業受付部３１は、入力装置２からデータベースの切り戻し指示を受け付けると、切り戻し実行部３５に転送する。
【００２２】
作業受付部３１は、サービス提供装置１から更新リクエストを受け付けると、当該更新リクエストをＡＰ装置４の更新実行部４１に転送する。また、機能拡張指示を受け取った後であれば、作業受付部３１は、当該更新リクエストを更新内容記録部３４にも転送する。
【００２３】
機能拡張部３２は、機能拡張指示を受け取ると、データベースのバックアップを作業記憶部３３に保存し、データベースに新たな列を追加し、追加列情報を更新内容記録部３４に通知する。
【００２４】
更新内容記録部３４は、更新リクエストを受け付けると、当該更新リクエストを時系列に作業記憶部３３に保存する。その際、更新内容記録部３４は、更新実行部４１から当該更新リクエストの実行で更新された列情報を取得し、追加された新たな列が更新されたか否かを判断し、判断結果を当該更新リクエストに関連付けて作業記憶部３３に保存する。
【００２５】
切り戻し実行部３５は、切り戻し指示を受け付けると、作業記憶部３３のバックアップと更新リクエストの時系列を用いて、データベースの切り戻しを実行する、
ＡＰ装置４の更新実行部４１は、更新リクエストを受信して、リクエストされた更新を実行する。更新実行部４１は、例えば、データベース管理システムを包含しており、当該更新を実現するためのＳＱＬ文等を生成して実行する。更新実行部４１は、例えば、更新された列情報として、このＳＱＬ文を更新内容記録部３４に出力する。
【００２６】
ここで、データベース回復装置３の作業受付部３１、機能拡張部３２、更新内容記録部３４、及び、切り戻し実行部３５は、論理回路、または、専用プロセッサとファームウェアで構成される。作業記憶部３３は、ＨＤＤ（Hard Disk Drive）、または、ＳＤＤ(Solid State Drive)等の記憶装置で構成される。
【００２７】
データベース回復装置３の作業受付手段、機能拡張手段、作業記憶手段、更新内容記録手段、及び、切り戻し実行手段は、他の構成であっても良い。
【００２８】
さらに、データベース回復装置３はコンピュータ装置６０で構成されても良い。図２は、コンピュータ装置６０の構成図である。コンピュータ装置６０は、バス６４で相互に接続された、プロセッサ６１、主記憶部６３、及び、外部記憶装置６２を備える。プロセッサ６１は、バス６４を経由して、主記憶部６３、及び、外部記憶装置６２に対してデータの読み書きを行う。
【００２９】
また、プロセッサ６１は、主記憶部６３に格納されているプログラム６５を実行する。なお、プログラム６５は、当初外部記憶装置６２に格納されており、コンピュータ装置６０の初期設定時に、プロセッサ６１が外部記憶装置６２から主記憶部６３にロードしても良い。
【００３０】
ここで、主記憶部６３は半導体メモリ装置である。外部記憶装置６２は、ＨＤＤ、または、ＳＤＤ等の記憶装置である。
【００３１】
データベース回復装置３のプロセッサ６１は、プログラム６５を実行することにより、作業受付部３１、機能拡張部３２、更新内容記録部３４、及び、切り戻し実行部３５として機能する。すなわち、プロセッサ６１は、プログラム６５を実行することにより、作業受付部３１、機能拡張部３２、更新内容記録部３４、及び、切り戻し実行部３５が行う処理を実行する。
【００３２】
外部記憶装置６２は、作業記憶部３３として使用されても良い。
【００３３】
＜動作＞
データベース回復システム１０の動作を、図３乃至図５のフローチャートと、図６乃至図１１の図を参照して説明する。以下の説明では、氏名列と住所列を保存するデータベースを(図６のデータベース)機能拡張して、新たに年齢列を追加する(図７のデータベース)例を取り上げる。
【００３４】
図３は、新たな列追加時のデータベース回復装置３の動作を示すフローチャートである。
【００３５】
ステップA1
作業受付部３１が、入力装置２から機能拡張指示を受け付けて、機能拡張部３２に転送する。機能拡張指示は、データベースに新たな列を追加する指示であり、追加する列の名称、追加位置、データ属性等の追加列情報を含む。本例において追加列情報は、新たに追加する年齢列の情報を含む。
【００３６】
ステップA2
機能拡張部３２は、ＤＢ記憶装置５内に格納されているデータベースのバックアップを取得して、作業記憶部３３へ保存する。図６の例において、機能拡張部３２は、氏名列と住所列を有するデータベースのバックアップを作業記憶部３３へ保存する。なお、バックアップ取得前、この例のデータベースには、No.001の行が格納されている。
【００３７】
ステップA3
機能拡張部３２は、ＤＢ記憶装置５内に格納されているデータベースに、新たな列を追加する。図７の例において、機能拡張部３２は、データベースには年齢列を追加する。なお、この列をデータベースに追加する処理は、他の装置、例えばＡＰ装置４に分担させても良い。
【００３８】
ステップA4
機能拡張部３２は、追加列情報を更新内容記録部３４に通知する。更新内容記録部３４は、通知された追加列情報を記憶する。図７の例において、追加列情報は年齢列の情報を含む。
【００３９】
以上で、図３のフローは終了する。
【００４０】
図４は、データベースのバックアップ保存、及び、新たな列の追加後におけるデータベース回復装置３の動作を示すフローチャートである。
【００４１】
ステップB1、B2
作業受付部３１が、サービス提供装置１から更新リクエストを受け付けて、更新内容記録部３４と更新実行部４１へ転送する。この後、更新実行部４１は、更新リクエストの内容に応じて、データベースを更新する。図７の例において、更新リクエスト２（図中では、単にリクエスト２と記載。以下同様）に応じてNo.001の行に年齢データが追加され、更新リクエスト３に応じて年齢データの無いNo.002がデータベースに追記されている。
【００４２】
ステップB3
更新リクエストを転送された更新内容記録部３４が、更新実行部４１から当該更新リクエストに応じた更新内容を受信する。図７の例において、更新実行部４１は、更新内容として、更新リクエストに応じてデータベース管理システムに対して発行されたＳＱＬ文を更新内容記録部３４に送信する。更新実行部４１は、更新リクエスト２に応じてＳＱＬ文２を、更新リクエスト３に応じてＳＱＬ文３を送信する。
【００４３】
ステップB4
更新内容記録部３４は、転送されてきた更新リクエストが、新たな列を更新するか否かを判断する。更新内容記録部３４は、ステップA4で通知されて記憶している追加列情報が示す列と、ステップB3で受信した更新内容が示す列とが同一であれば、新たに追加した列に対する更新が有ると判断する。
【００４４】
図７の例において、追加列情報は年齢列を示す。従って、更新内容記録部３４は、更新内容であるＳＱＬ文が年齢列を更新する内容であるか否かを判断する。ＱＬ文２は、年齢列を更新するが、ＳＱＬ文３は年齢列を更新しない。従って、更新内容記録部３４は、更新リクエスト２は新たに追加された年齢列を更新し、更新リクエスト３は新たに追加された年齢列を更新しないと判断する。
【００４５】
ステップB5
更新内容記録部３４は、更新リクエストを時系列に作業記憶部３３に保存し、当該更新リクエストに関連付けて、判断結果を作業記憶部３３に保存する。判断結果は、例えば、新たに追加した列の更新有を値１、無を値０のフラグで保存する。従って、更新内容記録部３４は、図７の例において、更新リクエスト２に関連付けて値１、更新リクエスト３に関連付けて値０を保存する。図１１は、図７の例において、更新内容記録部３４が作業記憶部３３に保存した更新リクエストとフラグを示す。図１１の1行目に更新リクエスト２と値１のフラグが格納され、２行目に更新リクエスト３と値０のフラグが格納されている。
【００４６】
以上で、図４のフローは終了する。
【００４７】
図５は、データベース切り戻し時のデータベース回復装置３の動作を示すフローチャートである。
【００４８】
ステップC1
作業受付部３１が、入力装置２から切り戻し指示を受け付けて、切り戻し実行部３５に転送する。
【００４９】
ステップC2、C3
切り戻し実行部３５は、作業記憶部３３内に保存されている新たな列が追加される前のデータベースのバックアップを取得して、ＤＢ記憶装置５内に再格納する。この、データベースのバックアップは、図４のステップA2で保存したものである。図８の例において、切り戻し実行部３５は、氏名列と住所列を有するデータベースのバックアップを作業記憶部３３へ保存している。この結果、データベースは、図６の状態に戻る。
【００５０】
ステップC4
ステップC4乃至C6では、切り戻し実行部３５は、バックアップが保存されて以降にデータベースに発行された更新リクエストの中から、追加された新たな列を更新しない更新リクエストを選択して再実行する。
【００５１】
まず、切り戻し実行部３５は、作業記憶部３３から、時系列に格納されている更新リクエストとそれらに関連付けられている判断結果を読み込む。図９の例において、切り戻し実行部３５は、図１１に示すように格納されていた更新リクエスト２と、更新リクエスト３と、それらのフラグを読み込む。
【００５２】
ステップC5
切り戻し実行部３５は、読み込んだ更新リクエストの中から、追加された新たな列を更新しない更新リクエストを、判断結果に基づいて選択する。図９の例において、切り戻し実行部３５は、読み込んだ更新リクエスト２と更新リクエスト３の中から、新たに追加された年齢列を更新しない更新リクエストを、フラグに基づいて選択する。すなわち、切り戻し実行部３５は、値０のフラグの更新リクエストである、更新リクエスト３を選択する。
【００５３】
ステップC6
切り戻し実行部３５は、選択した更新リクエストをＡＰ装置４の更新実行部４１へ送信する。更新実行部４１は、送信された更新リクエストを実行する。図９の例において、切り戻し実行部３５は、更新リクエスト３を、ＡＰ装置４の更新実行部４１に送信する。更新実行部４１は、更新リクエスト３からＳＱＬ文３を生成して実行する。
【００５４】
これにより、データベースは、新たな列が追加される前の構造に戻ったうえ、新たな列が追加された後に発行された更新リクエストの中で、新たな列を対象としない更新リクエストの更新を反映した状態に回復される。図９の例においては、データベースは、No.002のユーザ情報の更新を反映させた形で、年齢列を利用しないデータの状態へ切り戻される。
【００５５】
以上で、図４のフローは終了し、データベースの切り戻しは終了する。
【００５６】
その後、切り戻された列を追加し直した際、切り戻し実行部３５は、ステップC5で選択しなかった更新リクエストを再実行すれば良い。すなわち、切り戻し実行部３５は、新たな列を更新する更新リクエストを時系列から選択して、更新実行部４１に出力すれば良い。
【００５７】
図１０の例において、切り戻し実行部３５は、再追加により、年齢列の使用が可能となった後に、値１のフラグの更新リクエストである更新リクエスト２を選択して実行すれば、年齢列への更新データを復旧することができる。
【００５８】
＜本実施形態の変形例１＞
データベース回復装置３が、更新実行部４１を備えていても良い。この場合、データベース回復システム１０は、ＡＰ装置４を包含しなくても良い。さらに、データベース回復装置３が、ＤＢ記憶装置５を備えていても良い。
【００５９】
＜本実施形態の変形例２＞
データベース回復装置３は、データベースのバックアップを複数世代保存し、切り戻しに際しては、指定された世代のバックアップで切り戻しを実行するようにしても良い。この場合、データベース回復装置３の動作は、以下のように変更される。
【００６０】
１）図３関連
データベースに、新たな列を複数回追加することが許容され、追加されるたびに、図３の処理が繰り返される。この結果、機能拡張部３２は、順次バックアップの世代を追加していく。さらに、機能拡張部３２は、各世代のバックアップに関連付けて、バックアップ保存時刻、及び、追加列情報を作業記憶部３３に保存しておく。
【００６１】
２）図４関連
更新内容記録部３４は、更新リクエスト、及び、判断結果を、世代に関係なく、時系列に作業記憶部３３に保存しておく。
【００６２】
３）図５関連
切り戻し指示は、切り戻し世代の指定情報を含み、切り戻し実行部３５は、指定された世代のバックアップをＤＢ記憶装置５に再格納する。さらに、切り戻し実行部３５は、当該世代のバックアップが保存されて以降にデータベースに発行された更新リクエストの中から、指定された世代以降の世代で追加された、新たな列の何れも更新しない更新リクエストを選択して再実行する。
【００６３】
＜効果＞
本実施の形態にかかるデータベース回復装置３は、新たな列が追加されたデータベースの切り戻しを容易に実行できる。その理由は、切り戻し実行部３５が、新たな列の追加前に保存されたバックアップに対し、保存時以降にデータベースに発行された更新リクエストの中から、追加された新たな列を更新しない更新リクエストを選択して再実行するからである。
【００６４】
この結果、データベース回復装置３は、切り戻しにかかる手間や時間を削減し、切り戻しによるサービス停止時間を短縮できる。
【００６５】
＜第二の実施形態＞
図１２は、第二の実施の形態にかかるデータベース回復装置３の構成を示す図である。本実施の形態のデータベース回復装置３は、作業記憶手段３７、および、切り戻し実行手段３８を備える。
【００６６】
作業記憶手段３７は、ＤＢ記憶装置５に格納されていて新たな列が追加されたデータベースの、新たな列が追加される前に保存されたバックアップ、及び、バックアップ保存時以降に実行されたデータベースの更新リクエストの時系列を保存する。切り戻し実行手段３８は、ＤＢ記憶装置５にバックアップを再格納して、再格納後のデータベースに対し、新たな列を更新しない更新リクエストを時系列から選択して、更新リクエストを実行する更新実行手段に出力する。作業記憶手段３７、および、切り戻し実行手段３８は、等価な機能を果たす、他の構成をとるものであっても良い。
【００６７】
本実施の形態にかかるデータベース回復装置３は、新たな列が追加されたデータベースの切り戻しを容易に実行できる。その理由は、切り戻し実行部３５が、新たな列の追加前に保存されたバックアップに対し、保存時以降にデータベースに発行された更新リクエストの中から、追加された新たな列を更新しない更新リクエストを選択して再実行するからである。
【００６８】
この結果、データベース回復装置３は、切り戻しにかかる手間や時間を削減し、切り戻しによるサービス停止時間を短縮できる。
【００６９】
以上、実施形態を参照して本発明を説明したが、本発明は上記実施形態に限定されるものではない。本発明の構成や詳細には、本発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【符号の説明】
【００７０】
１  サービス提供装置
２  入力装置
３    データベース回復装置
４    ＡＰ装置
５    ＤＢ記憶装置
１０    データベース回復システム
３１    作業受付部
３２    機能拡張部
３３    作業記憶部
３４    更新内容記録部
３５    切り戻し実行部
３７    作業記憶手段
３８    切り戻し実行手段
４１    更新実行部
６０    コンピュータ装置
６１    プロセッサ
６２    外部記憶装置
６３    主記憶部
６４    バス
６５    プログラム
【図１】
2019016309.tif 000003
【図２】
2019016309.tif 000004
【図３】
2019016309.tif 000005
【図４】
2019016309.tif 000006
【図５】
2019016309.tif 000007
【図６】
2019016309.tif 000008
【図７】
2019016309.tif 000009
【図８】
2019016309.tif 000010
【図９】
2019016309.tif 000011
【図１０】
2019016309.tif 000012
【図１１】
2019016309.tif 000013
【図１２】
2019016309.tif 000014