(57)【要約】【課題】所定期間内に登録されたデータのバックアップファイルを生成するデータベースサーバのデータベースにデータを復元しなくとも、所定期間外に登録されたデータに対する操作をバックアップファイルに反映することの可能な仕組みを提供すること。【解決手段】データベースサーバ１０３で所定期間外に登録されたデータに対する操作履歴を記憶しておき、バックアップサーバ１０４にバックアップファイルを送信する際に操作履歴も合わせて送信する。そして、バックアップサーバ１０４は復元用サーバ１０５にバックアップファイルと操作履歴を送信する。復元用サーバ１０５は、受信したバックアップファイルでデータベースにデータを復元し、操作履歴に基づいて復元したデータを操作する。操作した結果のデータベースを再度バックアップファイルにし、バックアップサーバ１０４に保存する。【選択図】図４
2016091191.tif 000002
【特許請求の範囲】
【請求項１】
所定期間内に登録されたデータのバックアップファイルを生成する第１のバックアップファイル生成手段と、
所定期間外に登録されたデータの操作履歴を示す操作履歴情報を記憶する記憶手段と、
前記記憶手段に記憶された操作履歴情報をバックアップシステムに送信する操作履歴情報送信手段と
を備えるデータベースサーバと通信可能に接続され、
前記第１のバックアップファイル生成手段で生成されたバックアップファイルを保存するバックアップファイル保存手段と、
前記データベースサーバから送信された操作履歴情報を受信する操作履歴情報受信手段と
を備えるバックアップシステムであって、
前記バックアップファイル保存手段で保存したバックアップファイルを用いて、当該バックアップシステムのデータベースにデータを復元するデータベース復元手段と、
前記データベース復元手段で前記データベースに復元したデータを、前記操作履歴情報受信手段で受信した操作履歴情報を用いて操作するデータ操作手段と、
前記データ操作手段による操作に応じて、当該バックアップシステムのデータベースに登録されたデータのバックアップファイルを生成する第２のバックアップファイル生成手段と
を備えることを特徴とするバックアップシステム。
【請求項２】
前記バックアップファイル保存手段は、前記第２のバックアップファイル生成手段で生成されたバックアップファイルを、前記第１のバックアップファイル生成手段で生成されたバックアップファイルに上書き保存することを特徴とする請求項１に記載のバックアップシステム。
【請求項３】
前記操作履歴情報は、削除指示がなされた顧客に関するデータの操作履歴を含み、
前記データ操作手段は、前記操作履歴を用いて、前記データベース復元手段で前記データベースに復元したデータから前記顧客に関するデータを削除することを特徴とする請求項１または２に記載のバックアップシステム。
【請求項４】
前記データベース復元手段は、前記操作履歴情報受信手段で操作履歴情報を受信していない場合には、前記バックアップファイルを用いて前記データベースにデータを復元しないことを特徴とする請求項１乃至３のいずれか１項に記載のバックアップシステム。
【請求項５】
所定期間内に登録されたデータのバックアップファイルを生成する第１のバックアップファイル生成手段と、
所定期間外に登録されたデータの操作履歴を示す操作履歴情報を記憶する記憶手段と、
前記記憶手段に記憶された操作履歴情報をバックアップシステムに送信する操作履歴情報送信手段と
を備えるデータベースサーバと通信可能に接続され、
前記第１のバックアップファイル生成手段で生成したバックアップファイルを保存するバックアップファイル保存手段と、
前記データベースサーバから送信された操作履歴情報を受信する操作履歴情報受信手段と
を備えるバックアップシステムの制御方法であって、
前記バックアップシステムのデータベース復元手段が、前記バックアップファイル保存手段で保存したバックアップファイルを用いて、当該バックアップシステムのデータベースにデータを復元するデータベース復元ステップと、
前記バックアップシステムのデータ操作手段が、前記データベース復元ステップで前記データベースに復元したデータを、前記操作履歴情報受信手段で受信した操作履歴情報を用いて操作するデータ操作ステップと、
前記バックアップシステムのバックアップファイル生成手段が、前記データ操作ステップによる操作に応じて、当該バックアップシステムのデータベースに登録されたデータのバックアップファイルを生成する第２のバックアップファイル生成ステップと
を備えることを特徴とするバックアップシステムの制御方法。
【請求項６】
所定期間内に登録されたデータのバックアップファイルを生成する第１のバックアップファイル生成手段と、
所定期間外に登録されたデータの操作履歴を示す操作履歴情報を記憶する記憶手段と、
前記記憶手段に記憶された操作履歴情報をバックアップシステムに送信する操作履歴情報送信手段と
を備えるデータベースサーバと通信可能に接続され、
前記第１のバックアップファイル生成手段で生成したバックアップファイルを保存するバックアップファイル保存手段と、
前記データベースサーバから送信された操作履歴情報を受信する操作履歴情報受信手段と
を備えるバックアップシステムの制御方法を実行可能なプログラムであって、
前記バックアップシステムを、
前記バックアップファイル保存手段で保存したバックアップファイルを用いて、当該バックアップシステムのデータベースにデータを復元するデータベース復元手段と、
前記データベース復元手段で前記データベースに復元したデータを、前記操作履歴情報受信手段で受信した操作履歴情報を用いて操作するデータ操作手段と、
前記データ操作手段による操作に応じて、当該バックアップシステムのデータベースに登録されたデータのバックアップファイルを生成する第２のバックアップファイル生成手段
として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、所定期間内に登録されたデータのバックアップファイルを生成するデータベースサーバのデータベースにデータを復元しなくとも、所定期間外に登録されたデータに対する操作をバックアップファイルに反映することの可能なバックアップシステム、その制御方法、及びプログラムに関する。
【背景技術】
【０００２】
従来、データベースに欠損が生じた場合に備えて、データベースのバックアップを行っている。データベースのバックアップを行う際には、当該データベースの排他制御を行った上でバックアップファイルの生成を行い、外部の装置にこれを保存している。
【０００３】
データベースのバックアップを行う際には、データの不整合が発生してしまうので、前述した通り排他制御を行っている。そのため、このバックアップが行われている間は、ユーザはデータベースに対する操作（追加、更新、削除等）を行うことができない問題がある。
【０００４】
そこでバックアップ用のサーバにも同じデータが格納されるデータベースを設けて、元のサーバのデータベースの操作履歴を用いて、これらのデータベース間で同期を取る仕組みが存在する。
【０００５】
例えば下記の特許文献１では、第１のサイトにデータを格納したデータベース以外に静止化されたデータベースを備え、静止化されたデータベースから第２のサイトに初期データを順次コピーしながら、データの更新を受け付ける仕組みが開示されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００７−３１０７０１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
上記の仕組みを用いることでユーザによるデータ操作の受け付けと、データベースのバックアップとを平行して進めることが可能となる。しかしながら、サーバ（以下、データベースサーバという。）内にデータベースをあらかじめ２つ、更にバックアップ先のサーバ（以下、バックアップサーバという。）にもデータベースを１つ用意しておく必要があり、サーバを管理する管理者の負担が少なくない。
【０００８】
そこで、バックアップ時間を短くするために特定のデータだけをバックアップする仕組みが考えられる。すなわち、例えば当月を含む３ヶ月以内（以下、所定期間内という。）に登録されたデータのバックアップファイルだけを生成し、それ以前（以下、所定期間外という。）のデータに関してはデータの操作を原則禁止し、バックアップファイルを生成しない仕組みである。
【０００９】
このような仕組みを用いることでバックアップ時間を短くすることができるが、管理者等の権限のあるユーザが所定期間外のデータを操作してしまった場合、バックアップファイルに反映されない問題がある。反映するのであれば、一度データベースサーバのデータベースを排他制御した上でバックアップファイルからデータを復元し、操作履歴に基づいて復元したデータを操作する。そして、操作後にもう一度バックアップファイルを生成してバックアップサーバに送信しなければならない。
【００１０】
こうしてしまうと、排他制御中はユーザがデータを操作することができない。また、所定期間外のバックアップファイルの量によっては、膨大な時間がかかってしまう可能性もある。排他制御をしない形態も考えられるが、データベースサーバのパフォーマンスが低下することも考えられる。
【００１１】
そこで本発明は、所定期間内に登録されたデータのバックアップファイルを生成するデータベースサーバのデータベースにデータを復元しなくとも、所定期間外に登録されたデータに対する操作をバックアップファイルに反映することの可能な仕組みを提供することを目的とする。
【課題を解決するための手段】
【００１２】
上記の目的を達成するために、本発明のバックアップシステムは、所定期間内に登録されたデータのバックアップファイルを生成する第１のバックアップファイル生成手段と、所定期間外に登録されたデータの操作履歴を示す操作履歴情報を記憶する記憶手段と、前記記憶手段に記憶された操作履歴情報をバックアップシステムに送信する操作履歴情報送信手段とを備えるデータベースサーバと通信可能に接続され、前記第１のバックアップファイル生成手段で生成されたバックアップファイルを保存するバックアップファイル保存手段と、前記データベースサーバから送信された操作履歴情報を受信する操作履歴情報受信手段とを備えるバックアップシステムであって、前記バックアップファイル保存手段で保存したバックアップファイルを用いて、当該バックアップシステムのデータベースにデータを復元するデータベース復元手段と、前記データベース復元手段で前記データベースに復元したデータを、前記操作履歴情報受信手段で受信した操作履歴情報を用いて操作するデータ操作手段と、前記データ操作手段による操作に応じて、当該バックアップシステムのデータベースに登録されたデータのバックアップファイルを生成する第２のバックアップファイル生成手段とを備えることを特徴とする。
【発明の効果】
【００１３】
本発明によれば、所定期間内に登録されたデータのバックアップファイルを生成するデータベースサーバのデータベースにデータを復元しなくとも、所定期間外に登録されたデータに対する操作をバックアップファイルに反映することが可能となる。
【図面の簡単な説明】
【００１４】
【図１】本発明の実施形態におけるシステム構成を示す図である。
【図２】本発明の実施形態における各装置のハードウェア構成を示す図である。
【図３】本発明の実施形態における各装置の機能構成を示す図である。
【図４】本発明の実施形態におけるシステム全体の処理概要を示す図である。
【図５】データベースサーバ１０３のデータベースからデータを削除する処理の流れを示すフローチャートである。
【図６】顧客情報データベース６００と、削除済み顧客ＩＤリスト６１０のテーブル構成を示す図である。
【図７】バックアップサーバ１０４にバックアップファイルを保存する処理の流れを示すフローチャートである。
【図８】復元用サーバ１０５で所定期間外に操作された内容を反映する処理の流れを示すフローチャートである。
【発明を実施するための形態】
【００１５】
以下、図面を参照して、本発明の実施の形態の一例について説明する。
【００１６】
図１は、本発明の実施形態におけるシステム構成の一例を示す図である。クライアント端末１０１、アプリケーションサーバ１０２、データベースサーバ１０３、バックアップサーバ１０４、及び復元用サーバ１０５がＬＡＮ１０６等のネットワークを介して、相互にデータ通信可能に接続されている。本発明においては、これらの各種装置やサーバを含めたものを情報処理システムと称する。また、バックアップサーバ１０４及び復元用サーバ１０５をバックアップシステムと称する。尚、図１のネットワーク上に接続される各種端末あるいはサーバの構成は一例であり、用途や目的に応じて様々な構成例がある。
【００１７】
クライアント端末１０１は、アプリケーションサーバ１０２を利用するユーザのパーソナルコンピュータである。本実施形態では、パーソナルコンピュータを想定して説明を行うが、これに限らない。タッチパネルを備えるタブレット端末であってもよいし、携帯端末であってもよい。
【００１８】
アプリケーションサーバ１０２は、データベースサーバ１０３が備えるデータベースを用いて特定の処理を実行するためアプリケーションを備えるサーバである。このアプリケーションは、例えば顧客情報を管理するためのアプリケーションや、会計や人事の情報を管理するアプリケーションである。アプリケーションの種類は特に問わないが、本実施形態ではクライアント端末１０１の間で顧客情報を共有するためのアプリケーションとして説明を行う。アプリケーションサーバ１０２はクライアント端末１０１の要求を受けて、データベースサーバ１０３上の顧客情報を取得・登録・更新・削除する（以下、データ操作という。）。また削除時には、削除された顧客を一意に識別できるＩＤ（後述する顧客ＩＤ６０１）を記録し、データベースサーバ１０３上に保存する。
【００１９】
データベースサーバ１０３は、アプリケーションサーバ１０２で用いるためのデータをデータベースの形態で記憶・管理するサーバである。月毎に保存された顧客情報と、後述する削除済み顧客ＩＤリスト６１０を保存するデータベースを配置する。また毎日、顧客情報のバックアップファイルを生成し、削除済み顧客ＩＤリスト６１０と共にバックアップサーバ１０４に保存する機能を有する。
【００２０】
バックアップサーバ１０４は、データベースサーバ１０３で生成されたバックアップファイルを記憶・管理するサーバである。また、データベースサーバ１０３で生成された削除済み顧客ＩＤリスト６１０も合わせて記憶・管理している。
【００２１】
復元用サーバ１０５は、バックアップサーバ１０４で記憶しているバックアップファイルと削除済み顧客ＩＤリスト６１０を用いて、バックアップファイルにデータの操作を反映するサーバである。復元用サーバ１０５は、顧客情報の一時格納用データベースを配置する。バックアップサーバ１０４上に削除済み顧客ＩＤリスト６１０が存在するかを監視し、存在する場合は一時格納用データベースにデータを復元し、再度バックアップファイルを作成する。作成したバックアップファイルはバックアップサーバ１０４上に上書き保存する。
【００２２】
尚、本実施形態ではバックアップサーバ１０４と復元用サーバ１０５とを別々の筐体として説明するが、これらのサーバの機能を備える１つのサーバとしてもよい。
【００２３】
図２は、本発明の実施形態における各装置のハードウェア構成の一例を示す図である。
【００２４】
ＣＰＵ２０１は、システムバス２０４に接続される各デバイスやコントローラを統括的に制御する。
【００２５】
また、ＲＯＭ２０２には、ＣＰＵ２０１の制御プログラムであるＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ  ／  ＯｕｔｐｕｔＳｙｓｔｅｍ）が記憶されている。外部メモリ２１１（記憶手段）には、オペレーティングシステムプログラム（以下、ＯＳ）や、各サーバ或いは各ＰＣの実行する機能を実現するために必要な各種プログラム等が記憶されている。ＲＡＭ２０３は、ＣＰＵ２０１の主メモリ、ワークエリア等として機能する。
【００２６】
ＣＰＵ２０１は、処理の実行に際して必要なプログラム等をＲＡＭ２０３にロードして、プログラムを実行することで各種動作を実現するものである。
【００２７】
また、入力コントローラ２０５は、キーボードやマウス等のポインティングデバイスといった入力デバイス２０９からの入力を制御する。
【００２８】
ビデオコントローラ２０６は、ディスプレイ２１０等の表示器への表示を制御する。表示器はＣＲＴや液晶ディスプレイでも構わない。
【００２９】
メモリコントローラ２０７は、ブートプログラム、ブラウザソフトウエア、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、各種データ等を記憶する外部メモリ２１１に対するアクセスを制御する。外部メモリ２１１の例としては、ハードディスクやフレキシブルディスク或いはＰＣＭＣＩＡカードスロットにアダプタを介して接続されるカード型メモリ等である。
【００３０】
通信Ｉ／Ｆコントローラ２０８は、ネットワークを介して、外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、ＴＣＰ／ＩＰを用いたインターネット通信等が可能である。
【００３１】
尚、ＣＰＵ２０１は、例えばＲＡＭ２０３内の表示情報用領域へアウトラインフォントの展開（ラスタライズ）処理を実行することにより、ディスプレイ２１０上での表示を可能としている。また、ＣＰＵ２０１は、ディスプレイ２１０上の不図示のマウスカーソル等でのユーザ指示を可能とする。
【００３２】
本発明の各装置が後述する各種処理を実行するために用いられる各種プログラム等は外部メモリ２１１に記録されており、必要に応じてＲＡＭ２０３にロードされることによりＣＰＵ２０１によって実行されるものである。さらに、本発明に係わるプログラムが用いる定義ファイルや各種情報テーブルは外部メモリ２１１に格納されている。
【００３３】
図３は、本発明の実施形態における各装置の機能構成を示す図である。各装置の中でも特に、データベースサーバ１０３、バックアップサーバ１０４、及び復元用サーバ１０５の機能構成について説明する。
【００３４】
データベースサーバ１０３は機能部として、通信制御部３３１、記憶部３３２、データベース部３３３、バックアップファイル生成部３３４、及び操作履歴取得部３３５を備える。
【００３５】
通信制御部３３１は、ＬＡＮ１０６を介して他の装置と情報の送受信を行うための機能部である。記憶部３３２は、後述する各種テーブルの情報や各種画面等を構成する情報をＲＡＭ２０３や外部メモリ２１１に記憶するための機能部である。必要に応じて、情報の追加・更新・削除を行う。
【００３６】
データベース部３３３は、外部メモリ２１１に構成されるデータベースを管理するための機能部である。アプリケーションサーバ１０２からの要求に応じて、データベースのデータを取得・登録・更新・削除する（以下、操作という。）。
【００３７】
バックアップファイル生成部３３４は、データベース部３３３で管理されているデータベースからバックアップファイルを生成するための機能部である。バックアップファイル生成部３３４は、データが登録された月ごとにバックアップファイルを生成する。例えば、２０１４年１０月に登録されたデータのバックアップファイル、２０１４年１１月に登録されたデータのバックアップファイルといったように、月ごとにデータをまとめて１つのバックアップファイルを生成する。
【００３８】
操作履歴取得部３３５は、データベース部３３３で操作したデータの履歴を取得するための機能部である。この操作履歴を記憶部３３２の機能により、外部メモリ２１１に記憶する。
【００３９】
バックアップサーバ１０４は、通信制御部３４１、記憶部３４２、及びバックアップファイル保存部３４３を備える。
【００４０】
通信制御部３４１及び記憶部３４２は、データベースサーバ１０３と同様の機能であるので説明を省略する。バックアップファイル保存部３４３は、バックアップファイル生成部３３４で生成されたバックアップファイルを保存するための機能部である。通信制御部３４１の機能によりバックアップファイルをデータベースサーバ１０３から受信すると、バックアップファイル保存部３４３は、これを記憶部３４２の機能により記憶するよう、指示を出す。また、必要に応じてバックアップファイルを、通信制御部３４１を介して復元用サーバ１０５に対して送信する。削除済み顧客ＩＤリスト６１０も同様である。
【００４１】
復元用サーバ１０５は、通信制御部３５１、記憶部３５２、データベース部３５３、バックアップファイル生成部３５４、及びデータベース復元部３５５を備える。通信制御部３５１、記憶部３５２、データベース部３５３、バックアップファイル生成部３５４は、データベースサーバ１０３と同様の機能であるので説明を省略する。
【００４２】
データベース復元部３５５は、バックアップファイル保存部３４３で保存したバックアップファイルを取得し、データベース部３５３が管理するデータベースにデータを復元するための機能部である。
【００４３】
図４は、本実施形態におけるシステム全体の処理概要を示す図である。
【００４４】
まず、クライアント端末１０１はＨＴＴＰ通信等によりアプリケーションサーバ１０２のアプリケーションに対してデータの操作を要求する。これに応じて、アプリケーションサーバ１０２は、アプリケーションを動作させてデータベースサーバ１０３のデータベースに格納されるデータを操作する。このとき、アプリケーションサーバ１０２は、操作対象のデータの登録日時が所定期間内であるか否かを判定する。例えば、当月を含む過去３ヶ月以内に登録されたデータに対する操作要求を受け付けたか否かを判定する。操作対象のデータの登録日時が所定期間内である場合には、その操作をデータベースに対して実行する。一方、操作対象のデータの登録日時が所定期間内でない場合、つまり所定期間外である場合には、その操作をデータベースに対して実行しない。本実施形態においては、所定期間外のデータに対する操作は原則禁止し、所定期間内のデータのみバックアップファイルを生成することで、バックアップ時間を短縮している。
【００４５】
ただし、顧客との契約が切れた等の理由により、所定期間外に登録されたデータを操作したいことがある。この場合には、特定の権限を有するユーザ（例えば、管理者）からの操作要求であるか否かを判定し、権限を有するユーザである場合には特別にデータベースサーバ１０３のデータベースに対する操作を実行する。このとき、操作履歴をデータベースサーバ１０３に記憶しておく。図４では特定の権限を有するユーザから、ある顧客に関する情報の削除要求があった場合に、この削除を実行した後に、操作履歴として後述する削除済み顧客ＩＤリスト６１０をデータベースサーバ１０３に記憶している。
【００４６】
そしてあるタイミングになったら、データベースサーバ１０３でデータベースに格納されたデータからバックアップファイルを月ごとに生成する。そして、生成したバックアップファイルと削除済み顧客ＩＤリスト６１０をバックアップサーバ１０４に送信する。バックアップサーバ１０４は受信したバックアップファイルと削除済み顧客ＩＤリスト６１０とを外部メモリ２１１に保存する。
【００４７】
そしてあるタイミングになったら、復元用サーバ１０５がバックアップサーバからバックアップファイルと削除済み顧客ＩＤリスト６１０を取得する。そして、復元用サーバ１０５のデータベースにバックアップファイルからデータを復元する。更に、削除済み顧客ＩＤリスト６１０を用いて復元したデータに操作内容を反映し、再度データベースからバックアップファイルを生成する。生成したバックアップファイルをバックアップサーバ１０４に送信し、元々保存していたバックアップファイルに上書きする。
【００４８】
このように、データベースサーバ１０３のデータベースを用いずにバックアップファイルを復元できるので、データベースサーバ１０３が排他制御されている時間を大幅に短縮することができる。更には、所定期間外に登録されたデータに対する操作をバックアップファイルに反映することができる。以下、この処理概要について詳細に説明する。
【００４９】
まず、データベースサーバ１０３のデータベースからデータを削除する処理の流れについて、図５に示すフローチャートを用いて説明する。尚、本実施形態ではデータの操作として削除を取り上げるが、登録や更新の操作であってもよい。
【００５０】
ステップＳ５０１では、アプリケーションサーバ１０２のＣＰＵ２０１は、データベースサーバ１０３のデータベースに格納され、所定期間外に登録されたデータのうち、特定の顧客に関するデータを削除する要求をクライアント端末１０１から受信する。
【００５１】
ステップＳ５０２では、アプリケーションサーバ１０２のＣＰＵ２０１は、削除要求（削除指示）を行ったクライアント端末１０１に所定期間外に登録されたデータの削除を実行する権限が存在するか否かを判定する。より具体的には、クライアント端末１０１にログインしているユーザを示すユーザ情報をクライアント端末１０１から取得し、このユーザ情報に対応する操作権限を特定すればよい。権限制御については従来技術であるので、詳細な説明は省略する。所定期間外に登録されたデータの削除を実行する権限が存在すると判定した場合には、ステップＳ５０３に処理を進める。所定期間外に登録されたデータの削除を実行する権限が存在しないと判定した場合には、クライアント端末１０１にエラーを通知し、図５に示す一連の処理を終了する。
【００５２】
ステップＳ５０３では、アプリケーションサーバ１０２のＣＰＵ２０１は、ステップＳ５０１で受信した、特定の顧客に関する情報の削除要求をデータベースサーバ１０３に送信する。
【００５３】
ステップＳ５０４では、データベースサーバ１０３のＣＰＵ２０１は、アプリケーションサーバ１０２からの削除要求を受信する。そして、ステップＳ５０５では、データベースサーバ１０３のＣＰＵ２０１は、ステップＳ５０４で受信した削除要求に応じて、データベースサーバ１０３が管理するデータベースから特定の顧客に関するデータを削除する。例えば、図６の顧客情報データベース６００に示すようなデータベースがデータベースサーバ１０３の外部メモリ２１１に記憶されていた場合には、削除要求のあった顧客の顧客ＩＤ６０１を特定する。そして、この顧客ＩＤ６０１と一致するレコードを削除する。削除は論理削除であってもよいし、物理削除であってもよい。
【００５４】
顧客情報データベース６００は、データベースサーバ１０３の外部メモリ２１１に記憶されるデータベースである。顧客情報データベース６００は、顧客ＩＤ６０１、顧客情報６０２、登録日時６０３、及び更新日時６０４を備える。
【００５５】
顧客ＩＤ６０１は、顧客を一意に識別するための識別情報を示す項目である。顧客情報６０２は、顧客に関する情報を示す項目である。登録日時６０３は、顧客に関する情報が顧客情報データベース６００に登録された日時を示す項目である。更新日時６０４は、顧客に関する情報が更新された日時を示す項目である。顧客情報データベース６００が備える項目はあくまで一例であり、これ以外の構成であってもよい。
【００５６】
ステップＳ５０６では、データベースサーバ１０３のＣＰＵ２０１は、ステップＳ５０５で実行した削除により、所定期間外に登録されたデータが削除された否かを判定する。より具体的には、ステップＳ５０５で削除したレコードの登録日時６０３を参照し、これが所定期間外か否かを判定すればよい。所定期間外に登録されたデータが削除されたと判定した場合には、ステップＳ５０７に処理を進める。そうでない場合には、ステップＳ５０８に処理を進める。
【００５７】
ステップＳ５０７では、データベースサーバ１０３のＣＰＵ２０１は、図６の削除済み顧客ＩＤリスト６１０にステップＳ５０５で削除した顧客の顧客ＩＤ６０１を追加する。すなわち、所定期間外に登録されたデータの操作履歴を示す操作履歴情報を記憶する。このようにして、所定期間外に登録された顧客の顧客ＩＤ６０１を蓄積する。
【００５８】
削除済み顧客ＩＤリスト６１０（操作履歴情報）は、データベースサーバ１０３の外部メモリ２１１に記憶されるデータテーブルである。削除済み顧客ＩＤリスト６１０は、削除ＩＤ６１１、削除済み顧客ＩＤ６１２、及び削除日時６１３を備える。
【００５９】
削除ＩＤ６１１は、ステップＳ５０７で削除済み顧客ＩＤリスト６１０に削除した顧客ＩＤ６０１が追加される度に割り振られる識別情報を示す項目である。削除済み顧客ＩＤ６１２は、ステップＳ５０７で削除した顧客ＩＤ６０１を示す項目である。削除日時６１３は、ステップＳ５０７で削除が実行された日時を示す。
【００６０】
ステップＳ５０８では、データベースサーバ１０３のＣＰＵ２０１は、処理結果をアプリケーションサーバ１０２に対して送信する。
【００６１】
ステップＳ５０９では、アプリケーションサーバ１０２のＣＰＵ２０１は、データベースサーバ１０３から送信された処理結果を受信する。そして、ステップＳ５１０では、アプリケーションサーバ１０２のＣＰＵ２０１は、ステップＳ５０９で受信した処理結果をクライアント端末１０１に通知し、一連の処理を終了する。
【００６２】
次に、バックアップサーバ１０４にバックアップファイルを保存する処理の流れについて、図７のフローチャートを用いて説明する。
【００６３】
ステップＳ７０１では、データベースサーバ１０３のＣＰＵ２０１は、現在時刻がバックアップの開始時刻であるか否かを判定する。バックアップは所定のタイミングで実行されればよく、開始時刻はユーザにより任意の時刻に設定される。バックアップの開始時刻であると判定した場合には、ステップＳ７０２に処理を進める。そうでない場合には、バックアップの開始時刻になるまでステップＳ７０１を繰り返す。
【００６４】
ステップＳ７０２では、データベースサーバ１０３のＣＰＵ２０１は、データベースサーバ１０３の外部メモリ２１１に記憶されるデータベースに格納されるデータのうち、当月を含む過去３ヶ月分のデータを対象にバックアップファイルの生成を行う。すなわち、所定期間内に登録されたデータのバックアップファイルを生成する（第１のバックアップファイル生成手段）。
【００６５】
ステップＳ７０３では、データベースサーバ１０３のＣＰＵ２０１は、ステップＳ７０２で生成されたバックアップファイルをバックアップサーバ１０４に送信する。
【００６６】
ステップＳ７０４では、バックアップサーバ１０４のＣＰＵ２０１は、データベースサーバ１０３から送信されたバックアップファイルを受信する。そして、ステップＳ７０５では、バックアップサーバ１０４のＣＰＵ２０１は、受信したバックアップファイルをバックアップサーバ１０４の外部メモリ２１１に保存する（バックアップファイル保存手段）。このとき、すでに外部メモリ２１１に同じ月のバックアップファイルが保存されていた場合には、上書き保存する。
【００６７】
ステップＳ７０６では、データベースサーバ１０３のＣＰＵ２０１は、ステップＳ７０３でバックアップファイルを送信したら、削除済み顧客ＩＤリスト６１０をバックアップサーバ１０４に送信する（操作履歴情報送信手段）。
【００６８】
ステップＳ７０７では、バックアップサーバ１０４のＣＰＵ２０１は、データベースサーバ１０３から送信された削除済み顧客ＩＤリスト６１０を受信する（操作履歴情報受信手段）。そして、ステップＳ７０８では、バックアップサーバ１０４のＣＰＵ２０１は、ステップＳ７０７で受信した削除済み顧客ＩＤリスト６１０をバックアップサーバ１０４の外部メモリ２１１に保存する。
【００６９】
ステップＳ７０９では、バックアップサーバ１０４のＣＰＵ２０１は、処理結果をデータベースサーバ１０３に送信する。ステップＳ７１０では、データベースサーバ１０３のＣＰＵ２０１は、バックアップサーバ１０４から送信された処理結果を受信する。そして、ステップＳ７１１では、データベースサーバ１０３のＣＰＵ２０１は、データベースサーバ１０３の外部メモリ２１１から削除済み顧客ＩＤリスト６１０を削除する。より具体的には、削除済み顧客ＩＤリスト６１０の中身を空にする。
【００７０】
このようにして、バックアップサーバ１０４にバックアップファイルと操作履歴情報とを送信し、所定期間外に登録されたデータを操作するための準備をする。
【００７１】
次に、復元用サーバ１０５で所定期間外に操作された内容を反映する処理の流れについて、図８のフローチャートを用いて説明する。
【００７２】
ステップＳ８０１では、復元用サーバ１０５のＣＰＵ２０１は、現在時刻が復元の開始時刻であるか否かを判定する。復元は所定のタイミングで実行されればよく、開始時刻はユーザにより任意の時刻に設定される。復元の開始時刻であると判定した場合には、ステップＳ８０２に処理を進める。そうでない場合には、バックアップの開始時刻になるまでステップＳ８０１を繰り返す。
【００７３】
ステップＳ８０２では、復元用サーバ１０５のＣＰＵ２０１は、削除済み顧客ＩＤリスト６１０がバックアップサーバ１０４に存在するか否かを判定する。より具体的には、復元用サーバ１０５からバックアップサーバ１０４に対して、削除済み顧客ＩＤリスト６１０の有無を問い合わせる。これに応じて取得した問い合わせ結果を用いて、削除済み顧客ＩＤリスト６１０がバックアップサーバ１０４に存在するか否かを判定する。削除済み顧客ＩＤリスト６１０がバックアップサーバ１０４に存在すると判定した場合には、ステップＳ８０３に処理を進める。そうでない場合には、本一連の処理を終了する。
【００７４】
ステップＳ８０３では、復元用サーバ１０５のＣＰＵ２０１は、バックアップサーバ１０４の外部メモリ２１１に記憶されたバックアップファイルと削除済み顧客ＩＤリスト６１０の取得要求をバックアップサーバ１０４に送信する。
【００７５】
ステップＳ８０４では、バックアップサーバ１０４のＣＰＵ２０１は、復元用サーバ１０５から送信されたバックアップファイルと削除済み顧客ＩＤリスト６１０の取得要求を受信する。そして、ステップＳ８０５では、バックアップサーバ１０４のＣＰＵ２０１は、バックアップサーバ１０４の外部メモリ２１１からすべてのバックアップファイルと削除済み顧客ＩＤリスト６１０を取得し、復元用サーバ１０５に送信する。
【００７６】
ステップＳ８０６では、復元用サーバ１０５のＣＰＵ２０１は、バックアップサーバ１０４から送信されたバックアップファイルと削除済み顧客ＩＤリスト６１０を受信する。
【００７７】
ステップＳ８０７では、復元用サーバ１０５のＣＰＵ２０１は、ステップＳ８０６で受信したバックアップファイルを用いて、復元用サーバ１０５が備えるデータベースにデータを復元する（データベース復元手段）。
【００７８】
ステップＳ８０８では、復元用サーバ１０５のＣＰＵ２０１は、ステップＳ８０６で受信した削除済み顧客ＩＤリスト６１０を用いて、ステップＳ８０７で復元したデータから対象の顧客情報を削除する。より具体的には、削除済み顧客ＩＤリスト６１０の削除済み顧客ＩＤ６１２と一致する顧客ＩＤ６０１を復元したデータベースから特定し、特定したレコードを削除する。すなわち、データベースに復元したデータを、受信した操作履歴情報を用いて操作するということである（データ操作手段）。
【００７９】
ステップＳ８０９では、復元用サーバ１０５のＣＰＵ２０１は、ステップＳ８０８で操作がなされたデータベースのデータのバックアップファイルを生成する（第２のバックアップファイル生成手段）。ステップＳ８０９では、ステップＳ７０２とは異なり、すべての月のバックアップファイルを生成する。
【００８０】
ステップＳ８１０では、復元用サーバ１０５のＣＰＵ２０１は、ステップＳ８０９で生成したバックアップファイルをバックアップサーバ１０４に送信する。
【００８１】
ステップＳ８１１では、バックアップサーバ１０４のＣＰＵ２０１は、復元用サーバ１０５から送信されたバックアップファイルを受信する。そして、ステップＳ８１２では、バックアップサーバ１０４のＣＰＵ２０１は、ステップＳ８１１で受信したバックアップファイルで、元々外部メモリ２１１に記憶されているバックアップファイルを上書き保存する。上書き保存する際には、受信したバックアップファイルに含まれるデータの登録年月が対応するバックアップファイルに対して上書き保存する。
【００８２】
ステップＳ８１３では、バックアップサーバ１０４のＣＰＵ２０１は、バックアップサーバ１０４の外部メモリ２１１に記憶されている削除済み顧客ＩＤリスト６１０を削除する。所定期間外に登録され操作されたデータについても、バックアップファイルに反映できたので、操作履歴情報は削除する。
【００８３】
このようにして、復元用サーバ１０５でバックアップファイルを用いてデータベースにデータを復元し、所定期間外のデータについても操作内容を反映することができる。また、この反映結果を再度バックアップファイルとして生成し直して、バックアップサーバ１０４に保存しておくことができる。
【００８４】
以上説明したように、所定期間内に登録されたデータのバックアップファイルを生成するデータベースサーバのデータベースにデータを復元しなくとも、所定期間外に登録されたデータに対する操作をバックアップファイルに反映することが可能となる。
【００８５】
本発明は、例えば、システム、装置、方法、プログラム若しくは記憶媒体等としての実施形態も可能であり、具体的には、複数の機器から構成されるシステムに適用してもよいし、また、１つの機器からなる装置に適用してもよい。
【００８６】
なお、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムを、システム或いは装置に直接、或いは遠隔から供給するものを含む。そして、そのシステム或いは装置のコンピュータが前記供給されたプログラムコードを読み出して実行することによっても達成される場合も本発明に含まれる。
【００８７】
したがって、本発明の機能処理をコンピュータで実現するために、前記コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実行可能とするためのコンピュータプログラム自体も含まれる。
【００８８】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等の形態であってもよい。
【００８９】
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷなどがある。また、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤ（ＤＶＤ−ＲＯＭ，ＤＶＤ−Ｒ）などもある。
【００９０】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する。そして、前記ホームページから本発明のコンピュータプログラムそのもの、若しくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。
【００９１】
また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明に含まれるものである。
【００９２】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、ダウンロードした鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【００９３】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。その他、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどが、実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【００９４】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現される。
【００９５】
なお、前述した実施形態は、本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。即ち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
【符号の説明】
【００９６】
１０１  クライアント端末
１０２  アプリケーションサーバ
１０３  データベースサーバ
１０４  バックアップサーバ
１０５  復元用サーバ
１０６  ＬＡＮ
２０１  ＣＰＵ
２０２  ＲＯＭ
２０３  ＲＡＭ
２０４  システムバス
２０５  入力コントローラ
２０６  ビデオコントローラ
２０７  メモリコントローラ
２０８  通信Ｉ／Ｆコントローラ
２０９  入力デバイス
２１０  ディスプレイ
２１１  外部メモリ
【図１】
2016091191.tif 000003
【図２】
2016091191.tif 000004
【図３】
2016091191.tif 000005
【図４】
2016091191.tif 000006
【図５】
2016091191.tif 000007
【図６】
2016091191.tif 000008
【図７】
2016091191.tif 000009
【図８】
2016091191.tif 000010