(57)【要約】 【課題】  バックアップの対象であるデータのサイズを狭小化し、以前にバックアップしたデータを有効に利用するバックアップシステム、バックアップ方法およびプログラムを提供する。【解決手段】  元データ３中のバックアップの元データが、バックアップシステムの一部構成を成す固定辞書データベース５およびバックアップ辞書データベース６に登録されているか否かを調べるため、所定のバイト列をもとに検索する。これらデータベース内においてそのバイト列を検索できたとき、そのバイト列、そのバイト列を一意に定めるためのキー値、検索した日時、検索できた回数、およびバックアップ辞書データベース６での有効記憶期間を新規登録する。既に登録されていたときでは、検索できた回数および検索ヒット日時を更新登録し、新規登録または更新登録する際、バックアップ処理制御部１６はキー値のみで構成するキーファイル７を作成する。【選択図】  図１
2005107729.tif 000002
【特許請求の範囲】
【請求項１】
バックアップの元データが記憶されるデータ記憶部を有する電子計算機と、前記元データをバックアップデータとして記憶するバックアップ装置とからなるバックアップシステムであって、
前記元データ中の所定のバイト列、およびこのバイト列を一意に定めるキー値の組合せから構成する固定辞書データベースと、
前記元データを読込むデータ読込み手段と、
前記元データ中の所定のバイト列をキーとして前記固定辞書データベースを検索し、この検索した固定辞書データベースから前記バイト列が存在するか否かを確認する辞書検索手段と、
前記辞書検索手段により前記バイト列が存在する場合、この存在するバイト列を前記キー値に変換するキー値変換手段と、
前記辞書検索手段により前記バイト列が存在しない場合、このバイト列および前記キー値を前記バックアップ装置に新規登録する辞書新規登録手段と、
前記キー値変換手段により変換された前記キー値から構成するキーファイルを作成するキーファイル作成手段と、
前記キーファイルを前記バックアップ装置に記憶するキーファイル記憶手段とを具備することを特徴とするバックアップシステム。
【請求項２】
請求項１に記載のバックアップシステムにおいて、
前記辞書新規登録手段は、前記バイト列および前記キー値の他、さらに前記バイト列が検索された日付情報、回数、および前記バイト列の前記バックアップ装置における有効記憶期限を前記バックアップ装置に登録することを特徴とするバックアップシステム。
【請求項３】
請求項１に記載のバックアップシステムにおいて、
前記辞書検索手段により前記バイト列が存在する場合、前記バックアップ装置に登録されている前記バイト列が検索された少なくとも日付情報および回数を更新登録する辞書更新登録手段とをさらに具備することを特徴とするバックアップシステム。
【請求項４】
請求項１、２、または３に記載のバックアップシステムにおいて、
前記辞書検索手段は、前記バイト列が前記固定辞書データベースに存在しない場合、前記元データ中のバイト列を変更し、この変更したバイト列をキーとして前記固定辞書データベースを再検索し、この再検索した固定辞書データベースから前記変更したバイト列が存在するか否かを確認することを特徴とするバックアップシステム。
【請求項５】
請求項４に記載のバックアップシステムにおいて、
前記辞書検索手段は、前記バイト列が前記辞書データベースに存在しない場合、このバイト列を１バイト増加し、この増加したバイト列をキーとして前記固定辞書データベースを再検索し、この再検索した固定辞書データベースから前記増加したバイト列が存在するか否かを確認し、
前記辞書新規登録手段は、所定の閾値のバイト列まで増加した前記元データ中のバイト列をキーとして再検索した結果、前記固定辞書データベースから前記閾値のバイト列が存在しない場合、前記キーとして利用した閾値のバイト列を新規登録することを特徴とするバックアップシステム。
【請求項６】
請求項１に記載のバックアップシステムにおいて、
前記キーファイルを読込むキーファイル読込み手段とをさらに具備し、
前記辞書検索手段は、前記読込まれたキーファイル中の単一のキー値をキーとして前記バックアップ装置を検索し、この検索したバックアップ装置から前記単一のキー値が存在するか否かを確認し、
前記キー値変換手段は、前記キーファイル中のキー値を前記バックアップ装置に登録されているキー値に対応するバイト列に変更し、前記キーファイルのデータから前記元データを復元することを特徴とするバックアップシステム。
【請求項７】
請求項２に記載のバックアップシステムにおいて、
前記キーファイルを読込むキーファイル読込み手段と、
前記読込まれたキーファイル中の各キー値が前記バックアップ装置に新規登録された際に付与された有効記憶期限を超過して登録されているか否かを判定する有効記憶期限判定手段と、
前記各キー値が前記バックアップ装置に有効記憶期限を超過して登録されている場合、前記超過して登録されている各キー値を前記バックアップ装置から削除するバックアップ管理手段とをさらに具備することを特徴とするバックアップシステム。
【請求項８】
バックアップの元データをバックアップデータとしてバックアップ装置に記憶するバックアップ方法であって、
前記元データを読込むデータ読込みステップと、
前記元データ中の所定のバイト列をキーとし、このバイト列およびこのバイト列を一意に定めるキー値が登録されている辞書データベースを検索し、この検索した辞書データベースから前記バイト列が存在するか否かを確認する辞書検索ステップと、
前記辞書検索ステップにより前記バイト列が存在する場合、この存在するバイト列をキー値に変換するキー値変換ステップと、
前記辞書検索ステップにより前記バイト列が存在しない場合、このバイト列および前記キー値を前記バックアップ装置に新規登録する辞書新規登録ステップと、
前記キー値変換ステップにより変換された前記キー値から構成するキーファイルを作成するキーファイル作成ステップと、
前記キーファイルを前記バックアップ装置に記憶するキーファイル記憶ステップとを具備することを特徴とするバックアップ方法。
【請求項９】
請求項８に記載のバックアップ方法において、
前記辞書新規登録ステップは、前記バイト列および前記キー値の他、さらに前記バイト列が検索された日付情報、回数、および前記バイト列の前記バックアップ装置における有効記憶期限を前記バックアップ装置に登録することを特徴とするバックアップ方法。
【請求項１０】
請求項８に記載のバックアップ方法において、
前記辞書検索ステップにより前記バイト列が存在する場合、前記バックアップ装置に登録されている前記バイト列が検索された少なくとも日付情報および回数を更新登録する辞書更新登録ステップとをさらに具備することを特徴とするバックアップ方法。
【請求項１１】
請求項８、９または１０に記載のバックアップ方法において、
前記辞書検索ステップは、前記バイト列が前記辞書データベースに存在しない場合、前記元データ中のバイト列を変更し、この変更したバイト列をキーとして前記辞書データベースを再検索し、この再検索した辞書データベースから前記変更したバイト列が存在するか否かを確認することを特徴とするバックアップ方法。
【請求項１２】
請求項１１に記載のバックアップ方法において、
前記辞書検索ステップは、前記バイト列が前記辞書データベースに存在しない場合、このバイト列を１バイト増加し、この増加したバイト列をキーとして前記辞書データベースを再検索し、この再検索した辞書データベースから前記増加したバイト列が存在するか否かを確認し、
前記辞書新規登録ステップは、所定の閾値のバイト列まで増加した前記元データ中のバイト列をキーとして再検索した結果、前記辞書データベースに前記閾値のバイト列が存在しない場合、前記キーとして利用した閾値のバイト列を新規登録することを特徴とするバックアップ方法。
【請求項１３】
請求項８に記載のバックアップ方法において、
前記キーファイルを読込むキーファイル読込みステップとをさらに具備し、
前記辞書検索ステップは、前記読込まれたキーファイル中の単一のキー値をキーとして前記バックアップ装置を検索し、この検索したバックアップ装置から前記単一のキー値が存在するか否かを確認し、
前記キー値変換ステップは、前記キーファイル中のキー値を前記辞書データベースに登録されているキー値に対応するバイト列に変更し、前記キーファイルのデータから前記元データを復元することを特徴とするバックアップ方法。
【請求項１４】
請求項９に記載のバックアップ方法において、
前記キーファイルを読込むキーファイル読込みステップと、
前記読込まれたキーファイル中の各キー値が前記バックアップ装置に新規登録された際に付与された有効記憶期限を超過して登録されているか否かを判定する有効記憶期限判定ステップと、
前記各キー値が前記バックアップ装置に有効記憶期限を超過して登録されている場合、前記超過して登録されている各キー値を前記バックアップ装置から削除するバックアップ管理ステップとをさらに具備することを特徴とするバックアップ方法。
【請求項１５】
請求項８記載のバックアップ方法において、
前記辞書検索ステップにより検索された回数を参照し、この回数が所定の回数より多いキー値およびこのキー値に対応するバイト列を前記辞書データベースとは別媒体の辞書データベースに複製するデータ複製ステップとをさらに具備することを特徴とするバックアップ方法。
【請求項１６】
バックアップの元データをバックアップデータとしてバックアップ装置に記憶するコンピュータに、
前記元データを読込むデータ読込み機能と、
前記元データ中の所定のバイト列をキーとし、このバイト列およびこのバイト列を一意に定めるキー値が登録されている辞書データベースを検索し、この検索した辞書データベースから前記バイト列が存在するか否かを確認する辞書検索機能と、
前記辞書検索機能により前記バイト列が存在する場合、この存在するバイト列をキー値に変換するキー値変換機能と、
前記辞書検索機能により前記バイト列が存在しない場合、このバイト列および前記キー値を前記バックアップ装置に新規登録する辞書新規登録機能と、
前記キー値変換機能により変換された前記キー値から構成するキーファイルを作成するキーファイル作成機能と、
前記キーファイルを前記バックアップ装置に記憶するキーファイル記憶機能とを実現させるためのプログラム。
【請求項１７】
請求項１６に記載のプログラムにおいて、
前記辞書新規登録機能は、前記バイト列および前記キー値の他、さらに前記バイト列が検索された日付情報、回数、および前記バイト列の前記バックアップ装置における有効記憶期限を前記バックアップ装置に登録することを実現させるためのプログラム。
【請求項１８】
請求項１６に記載のプログラムにおいて、
前記辞書検索機能により前記バイト列が存在する場合、前記バックアップ装置に登録されている前記バイト列が検索された少なくとも日付情報および回数を更新登録する辞書更新登録機能とをさらに実現させるためのプログラム。
【請求項１９】
請求項１６、１７または１８に記載のプログラムにおいて、
前記辞書検索機能は、前記バイト列が前記辞書データベースに存在しない場合、前記元データ中のバイト列を変更し、この変更したバイト列をキーとして前記辞書データベースを再検索し、この再検索した辞書データベースから前記変更したバイト列が存在するか否かを確認することを実現させるためのプログラム。
【請求項２０】
請求項１９に記載のプログラムにおいて、
前記辞書検索機能は、前記バイト列が前記辞書データベースに存在しない場合、このバイト列を１バイト増加し、この増加したバイト列をキーとして前記辞書データベースを再検索し、この再検索した辞書データベースから前記増加したバイト列が存在するか否かを確認し、
前記辞書新規登録機能は、所定の閾値のバイト列まで増加した前記元データ中のバイト列をキーとして再検索した結果、前記辞書データベースに前記バイト列が存在しない場合、前記キーとして利用した閾値のバイト列を新規登録することを実現させるためのプログラム。
【請求項２１】
請求項１６に記載のプログラムにおいて、
前記キーファイルを読込むキーファイル読込み機能とをさらに具備し、
前記辞書検索機能は、前記読込まれたキーファイル中の単一のキー値をキーとして前記バックアップ装置を検索し、この検索したバックアップ装置から前記単一のキー値が存在するか否かを確認し、
前記キー値変換機能は、前記キーファイル中のキー値を前記辞書データベースに登録されているキー値に対応するバイト列に変更し、前記キーファイルのデータから前記元データを復元することを実現させるためのプログラム。
【請求項２２】
請求項１７に記載のプログラムにおいて、
前記キーファイルを読込むキーファイル読込み機能と、
前記読込まれたキーファイル中の各キー値が前記バックアップ装置に新規登録された際に付与された有効記憶期限を超過して登録されているか否かを判定する有効記憶期限判定機能と、
前記各キー値が前記バックアップ装置に有効記憶期限を超過して登録されている場合、前記超過して登録されている各キー値を前記バックアップ装置から削除するバックアップ管理機能とをさらに実現させるためのプログラム。
【請求項２３】
請求項１６記載のプログラムにおいて、
前記辞書検索機能により検索された回数を参照し、この回数が所定の回数より多いキー値およびこのキー値に対応するバイト列を前記辞書データベースとは別媒体の辞書データベースに複製するデータ複製機能とをさらに実現させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子計算機のデータのバックアップ技術に関し、特に、バックアップデータサイズを小さくするのに好適なバックアップシステム、バックアップ方法およびプログラムに関する。
【背景技術】
【０００２】
昨今、パーソナルコンピュータ等の電子計算機を用い、インターネットなどのネットワークを介した通信が広く普及し、それに伴い、電子計算機の記憶装置に記憶された電子メールや文書等の各種データが増加している。
【０００３】
ところが、これらの各種データが電子計算機のユーザによる誤操作または記憶装置の故障等により、各種データが破壊される場合や利用することができなくなる場合があり得る。このように、これら各種データが失われることによる損害は非常に大きい。そのため、データが失われる障害が生じた場合において、直ちにデータファイルを復旧させて障害を最小限に抑えるため、データバックアップという技術が重要となってきている。
【０００４】
従来、データのバックアップ（以下「バックアップ」という。）には、バックアップの元データそのものをバックアップ装置に直接コピーすることが多かった。本来、バックアップの元データは、ディレクトリまたはディスクボリューム等の領域にあることが多く、その領域に対する更新は特定のファイルまたは特定のディスク領域に対する更新が多く、バックアップの際にディスクボリューム領域全体のバックアップをとることはあまり多くない。
【０００５】
バックアップ方法には、様々な方法があることが知られているが、たとえば、フルバックアップまたは差分バックアップという手法がある。フルバックアップとは、電子計算機におけるデータのバックアップの元となるディスクボリューム領域に含まれている総てのデータファイルのバックアップを行うことである。これに対し差分バックアップとは、記憶装置のバックアップの元となるディスクボリューム領域に含まれているデータファイルのうち、前回行なわれたフルバックアップ以来データが更新されたデータファイルや新規に作成されたデータファイルのバックアップを行うことである。これらの手法においては、データが大幅に更新されたときまたは新規に作成されたデータファイルが増加したときにバックアップサイズが大きくなるという問題点があった。
【０００６】
データファイルを如何に小さくし、バックアップの利便を図ろうとする研究開発は、活発に行われている（例えば、特許文献１参照）。この特許文献１に開示された装置は、バックアップをする前にバックアップの元である１つまたは複数のデータファイルを１つのアーカイブファイルにまとめてバックアップすることにより、バックアップ装置にバックアップする処理時間およびバックアップ対象サイズを小さくすることができるものである。
【特許文献１】特開平１１−５３２４０号公報（第１５頁、図３）
【発明の開示】
【発明が解決しようとする課題】
【０００７】
上記した従来技術においては、バックアップの元データ中に更新された部分があってもファイル単位でバックアップを行っていた。このため、バックアップの元データ中の更新部分を読出し、一つのデータファイルにおいて更新された部分のみのバックアップをすることはなかった。
【０００８】
そこで、本発明は上記問題点を解決するためになされたものであり、各バックアップの元データ中のある領域が過去にバックアップされたデータと同一部分の場合はバックアップの対象とせず、更新された部分のみのバックアップを行うことでバックアップサイズを小さくすることを可能にするバックアップシステム、バックアップ方法およびプログラムを提供することを目的としている。
【課題を解決するための手段】
【０００９】
上記目的を達成するために、本発明のバックアップシステムは、バックアップの元データが記憶されるデータ記憶部を有する電子計算機と、元データをバックアップデータとして記憶するバックアップ装置とからなるバックアップシステムであって、元データ中の所定のバイト列、およびこのバイト列を一意に定めるキー値の組合せから構成する固定辞書データベースと、元データを読込むデータ読込み手段と、元データ中の所定のバイト列をキーとして固定辞書データベースを検索し、この検索した固定辞書データベースからバイト列が存在するか否かを確認する辞書検索手段と、辞書検索手段によりバイト列が存在する場合、この存在するバイト列をキー値に変換するキー値変換手段と、辞書検索手段によりバイト列が存在しない場合、このバイト列およびキー値を前記バックアップ装置に新規登録する辞書新規登録手段と、キー値変換手段により変換されたキー値から構成するキーファイルを作成するキーファイル作成手段と、キーファイルをバックアップ装置に記憶するキーファイル記憶手段とを具備することを特徴としている。
【００１０】
また、本発明のバックアップシステムは、キーファイルを読込むキーファイル読込み手段とをさらに具備し、辞書検索手段は、読込まれたキーファイル中の単一のキー値をキーとしてバックアップ装置を検索し、この検索したバックアップ装置から単一のキー値が存在するか否かを確認し、キー値変換手段は、キーファイル中のキー値をバックアップ装置に登録されているキー値に対応するバイト列に変更し、キーファイルのデータから元データを復元することを特徴としている。
【００１１】
また、本発明のバックアップシステムは、キーファイルを読込むキーファイル読込み手段と、読込まれたキーファイル中の各キー値がバックアップ装置に新規登録された際に付与された有効記憶期限を超過して登録されているか否かを判定する有効記憶期限判定手段と、各キー値がバックアップ装置に有効記憶期限を超過して登録されている場合、超過して登録されている各キー値をバックアップ装置から削除するバックアップ管理手段とをさらに具備することを特徴としている。
【００１２】
次に、本発明のバックアップ方法は、バックアップの元データをバックアップデータとしてバックアップ装置に記憶するバックアップ方法であって、元データを読込むデータ読込みステップと、元データ中の所定のバイト列をキーとし、このバイト列およびこのバイト列を一意に定めるキー値が登録されている辞書データベースを検索し、この検索した辞書データベースからバイト列が存在するか否かを確認する辞書検索ステップと、辞書検索ステップによりバイト列が存在する場合、この存在するバイト列をキー値に変換するキー値変換ステップと、辞書検索ステップによりバイト列が存在しない場合、このバイト列およびキー値をバックアップ装置に新規登録する辞書新規登録ステップと、キー値変換ステップにより変換されたキー値から構成するキーファイルを作成するキーファイル作成ステップと、キーファイルをバックアップ装置に記憶するキーファイル記憶ステップとを具備することを特徴としている。
【００１３】
また、本発明のバックアップ方法は、キーファイルを読込むキーファイル読込みステップとをさらに具備し、辞書検索ステップは、読込まれたキーファイル中の単一のキー値をキーとしてバックアップ装置を検索し、この検索したバックアップ装置から単一のキー値が存在するか否かを確認し、キー値変換ステップは、キーファイル中のキー値を辞書データベースに登録されているキー値に対応するバイト列に変更し、キーファイルのデータから元データを復元することを特徴としている。
【００１４】
また、本発明のバックアップ方法は、キーファイルを読込むキーファイル読込みステップと、読込まれたキーファイル中の各キー値がバックアップ装置に新規登録された際に付与された有効記憶期限を超過して登録されているか否かを判定する有効記憶期限判定ステップと、各キー値がバックアップ装置に有効記憶期限を超過して登録されている場合、超過して登録されている各キー値をバックアップ装置から削除するバックアップ管理ステップとをさらに具備することを特徴としている。
【００１５】
さらに、本発明のプログラムは、バックアップの元データをバックアップデータとしてバックアップ装置に記憶するコンピュータに、元データを読込むデータ読込み機能と、元データ中の所定のバイト列をキーとし、このバイト列およびこのバイト列を一意に定めるキー値が登録されている辞書データベースを検索し、この検索した辞書データベースからバイト列が存在するか否かを確認する辞書検索機能と、辞書検索機能によりバイト列が存在する場合、この存在するバイト列をキー値に変換するキー値変換機能と、辞書検索機能によりバイト列が存在しない場合、このバイト列およびキー値をバックアップ装置に新規登録する辞書新規登録機能と、キー値変換機能により変換されたキー値から構成するキーファイルを作成するキーファイル作成機能と、キーファイルをバックアップ装置に記憶するキーファイル記憶機能とを実現させることを特徴としている。
【００１６】
また、本発明のプログラムは、キーファイルを読込むキーファイル読込み機能とをさらに具備し、辞書検索機能は、読込まれたキーファイル中の単一のキー値をキーとしてバックアップ装置を検索し、この検索したバックアップ装置から単一のキー値が存在するか否かを確認し、キー値変換機能は、キーファイル中のキー値を辞書データベースに登録されているキー値に対応するバイト列に変更し、キーファイルのデータから元データを復元することを実現させることを特徴としている。
【００１７】
また、本発明のプログラムは、キーファイルを読込むキーファイル読込み機能と、読込まれたキーファイル中の各キー値がバックアップ装置に新規登録された際に付与された有効記憶期限を超過して登録されているか否かを判定する有効記憶期限判定機能と、各キー値がバックアップ装置に有効記憶期限を超過して登録されている場合、超過して登録されている各キー値をバックアップ装置から削除するバックアップ管理機能とをさらに実現させることを特徴としている。
【発明の効果】
【００１８】
本発明によれば、バックアップの元データをバックアップ辞書データベースおよびキーファイルに置き換え、以前にバックアップしたデータを有効に利用することにより、バックアップするデータのサイズを小さくすることができる。
【発明を実施するための最良の形態】
【００１９】
以下、本発明に係るバックアップシステムの最良の形態として、バックアップ処理、元データの復元処理、およびバックアップデータの削除処理について図面を参照して説明する。
【実施例１】
【００２０】
まず、本発明に係るバックアップシステムのバックアップ処理の概要について図１を参照して説明する。
【００２１】
図１は、本発明に係るバックアップシステムがバックアップ処理をする実施の形態におけるシステムの構成を示す機能ブロック図である。詳細については、後記する。
【００２２】
このバックアップ処理の概要は、電子計算機１内のデータ記憶部４に記憶されている元データ３中のバックアップの対象となるべき更新されたデータ部分が、バックアップ装置２内のバックアップ辞書データベース６に登録されるとともに、その登録されるデータ部分が後記するキー値で置き換えられて構成されたキーファイル７が作成されることによりバックアップがなされるというものである。
【００２３】
このバックアップの際、データファイルの先頭から所定のバイト列は固定辞書データベース５およびバックアップ辞書データベース６で検索されるための検索キーとして利用され、以前バックアップされたデータ部分が元データ３中に存在するとき、その部分はバックアップ辞書データベース６に登録されず、固定辞書データベース５およびバックアップ辞書データベース６内に存在しないときのみバックアップ辞書データベース６に登録される。キーファイル７は、データがバックアップされる度に作成されるものであり、バックアップ辞書データベース６から元データ３を復元する際に使用されるものである。
【００２４】
図１において、このバックアップシステムは主に電子計算機１とバックアップ装置２とから構成される。電子計算機１には、バックアップの元データ３が記憶されるデータ記憶部４と、元データ３がバックアップ処理制御部１６により読込まれてバッファ部１７に展開されたときにおける元データ３中の所定のバイト列（以下「見出し語」という。）およびその見出し語を一意に定めるキー値で構成する固定辞書データベース５と、後記する各種プログラムが記憶されたプログラム部９と、バックアップ処理制御部１６と、バッファ部１７とが設けられている。一方、バックアップ装置２は、バックアップの元データおよびその元データに付随する種々の属性的データが記憶されるバックアップ辞書データベース６と、バックアップの度に作成されるキーファイル７が記憶されるキーファイル記憶部８とを保持している。
【００２５】
データ記憶部４は、電子計算機１の電源を切断した後であっても永続的にデータを記憶するものであり、ハードディスク、フラッシュメモリまたは光磁気ディスクとそれを制御するコントローラとの組合せからなるものである。また、これら以外にも例えば磁気テープ、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、フレキシブルディスク、ＭＯ、ＣＤ−Ｒ、ＣＤ−ＲＷまたはメモリカード等とそれぞれを制御するコントローラとの組合せからなるものであってもよい。
【００２６】
固定辞書データベース５について図２を参照して説明する。
【００２７】
図２は、電子計算機１における固定辞書データベース５の構造の一例を示す図面である。図２中の固定辞書データベース５は、見出し語およびキー値の組で構成されている。キー値とは、元データ３がバックアップ処理制御部１６により読込まれてバッファ部１７に展開されたときにおける所定のバイト列である見出し語を一意に示すバイト列（「見出し語」も「キー値」もともにバイト列であるが、以下の記載において「見出し語」をより簡略に表わす指標として「キー値」を導入する。）であり、重複するキー値が存在しないために先頭に「＃」という識別子が付されるものとする。また、キー値のバイト列は見出し語のバイト列より小さいサイズであるとし、識別子「＃」を含めて最低２バイトであるものとする。固定辞書データベース５は、データ記憶部４と異なり、データの新規登録または削除をすることができないものとし、見出し語およびキー値の登録、または見出し語およびキー値の削除はできないとして説明する。
【００２８】
バックアップ辞書データベース６について図３を参照して説明する。
【００２９】
図３は、バックアップ装置２におけるバックアップ辞書データベース６の構造の一例を示す図面である。バックアップ辞書データベース６は、見出し語、キー値（図２のそれらと同一とする。）、ヒット数、ヒット日時および有効記憶期間の組から構成されている。ヒット数とは、バックアップの度に元データ３の所定のバイト列が固定辞書データベース５またはバックアップ辞書データベース６内で検索されたときのヒットした（以下の記載における「検索の結果、登録されていた見出し語またはキー値と一致した」ことをいう。）回数のことであり、ヒット日時とは、バックアップの度に元データ３の所定のバイト列が固定辞書データベース５またはバックアップ辞書データベース６内で検索されたときのヒットしたときの日時のことである。有効記憶期間とは、バックアップ辞書データベース６に見出し語を新規登録するときにユーザにより指定され、新規見出し語の期限切れを表わす日時のことである。この有効記憶期間は、ユーザにより手動設定されてもよいし、または電子計算機１により所定のプログラムにより予め自動設定されてもよい。
【００３０】
また、このバックアップ辞書データベース６におけるキー値は、固定辞書データベース５のキー値と同様、見出し語より小さい長さ（バイト列の長さ）であるとする。固定辞書データベース５とは異なりバックアップ辞書データベース６においては、見出し語およびキー値を新規登録または削除をすることができるものとする。ヒット数には、０以上の整数値（自然数）、ヒット日時には、図３に示すように、「年／月／日付  時刻」という形式で定めるものとするが、この形式であることに限定されることはない。
【００３１】
また、バックアップ処理制御部１６がデータ記憶部４内の元データ３およびバックアップ装置２におけるキーファイル記憶部８内のキーファイル７を読込んでいるときの相対的位置を示す指標としてファイルポインタがある。ファイルポインタとは、あるファイルにおいて、ファイルの先頭からどの位置を読込んでいるかを示す相対的な指標である。これらのファイルを読込んでいるときのファイルポインタの初期位置はファイルの先頭であるとし、１バイト読込みまたは書込みを行うごとに連続的にファイルポインタの位置を１バイト進めるものとする。
【００３２】
元データ３とキーファイル７との関係について図４および図５を参照して説明する。
【００３３】
図４は、データ記憶部４内の元データ３の内容を示したものであり、わかりやすくするためテキストファイルで説明する。図５は、元データ３（図４）に基づいて作成されたキーファイル７の内容を示す図面である。固定辞書データベース５またはバックアップ辞書データベース６が参照され、図４の「Ｍｙ」は図５の「＃１１」へ、図４の「Ｍｙ」と「ｈｏｂｂｙ」との間の「（空白）」は図５の「＃０」へ、図４の「ｈｏｂｂｙ」は図５の「＃４３」へ、というように元データ３中の各見出し語に対して各キー値に変更され、この処理が元データ３の先頭から末尾まで繰り返されて図５に示すキーファイル７が作成される。キーファイル７はバックアップの度に作成されるため、一つの元データ３に対して一つまたは複数のキーファイル７が作成されることになる。
【００３４】
プログラム部９には、データ記憶部４内の元データ３を読込むとともに、元データ３にデータを書込むプログラムが記憶されているデータ読込み／書込み部１０と、キーファイル７を作成するプログラムが記憶されているキーファイル作成部１１と、固定辞書データベース５またはバックアップ辞書データベース６を検索するともに、この検索した固定辞書データベース５またはバックアップ辞書データベース６から検索キーとして利用したバイト列が存在するか否かを確認するプログラムが記憶されている辞書検索部１２と、バックアップ辞書データベース６に新規なデータ（具体的には、見出し語、キー値、ヒット数、ヒット日時および有効記憶期間を指すものとする。）を登録するとともに、バックアップ辞書データベース６の内容（具体的には、ヒット数およびヒット日時を指すものとする。）を更新するプログラムが記憶されている辞書更新部１３と、キーファイル記憶部８内のキーファイル７を読込むとともに、作成したキーファイル７をキーファイル記憶部８に書込むプログラムが記憶されているキーファイル読込み／書込み部１４と、バッファ部１７に展開された元データ３内の所定の見出し語をキー値に変換するキー値変換部１５とで構成されている。
【００３５】
バックアップ処理制御部１６は、ＯＳ（オペレーティング・システム）のみならず、プログラム部９から各処理に対応したプログラムを読取り、バックアップシステム全体の動作の制御をする他、電子計算機１およびバックアップ装置２間のデータ転送の処理を行う。
【００３６】
バッファ部１７は、バックアップ処理制御部１６がプログラム部９内の所定のプログラムを読取って一時的に記憶し、そのプログラムに従った処理を実行する際のワーク領域であり、後記するように同様な処理を繰り返し実行するためのプログラムのループ用変数など一時的な変数を記憶する場所である。
【００３７】
次に、本発明に係るバックアップシステムのバックアップ処理について図６を参照して説明する。
【００３８】
図６は、本発明に係るバックアップシステムのバックアップ処理を説明するフローチャートである。バックアップシステムの動作が開始すると、バックアップ処理制御部１６は、プログラム部９から各々のプログラムを読取って適宜にバッファ部１７に記憶した後、そのプログラムに従って所定の処理を実行する。
【００３９】
すなわち、図６において、バックアップ処理制御部１６は、データ読込み／書込み部１０に記憶されているプログラムに基づき、ユーザの指示により選択されたバックアップの元データ３中のファイルポインタの位置（元データ３中の先頭位置）から読込む（ステップ１）。このとき、バックアップ処理制御部１６は、元データ３中の先頭の１バイトを検索キーとし、辞書検索部１２に記憶されているプログラムに基づき、電子計算機１内の固定辞書データベース５に登録されている見出し語から検索する（ステップ２）。
【００４０】
検索の結果ヒットしなかったとき（ステップ３のＮｏ）、バックアップ処理制御部１６は、ステップ２の検索と同一の検索キーを使用し、バックアップ装置２内のバックアップ辞書データベース６に登録されている見出し語を検索する（ステップ４）。検索の結果ヒットしなかったとき（ステップ５のＮｏ）、バックアップ処理制御部１６は、検索キーとして使用したバイト列を１バイト増やし（ステップ６）、改めて固定辞書データベース５に登録されている見出し語を検索する（ステップ７のＮｏ）。辞書検索部１２に記憶されているプログラムには、検索キーとして使用できるバイト列に上限（閾値）があるものする。このため、バックアップ処理制御部１６は、固定辞書データベース５またはバックアップ辞書データベース６で検索を繰り返し、この閾値のバイト列を検索キーとして検索してもどちらのデータベースにおいてもヒットしなかったとき（ステップ７のＹｅｓ）、この閾値のバイト列をバックアップ辞書データベース６に新規登録する（ステップ８）。具体的には、バックアップ辞書データベース６に、検索キーとして使用したバイト列（見出し語）、この見出し語を一意に定めるキー値、ヒット数として１、ヒット日時として検索した日付情報、およびバックアップ辞書データベース６内で保持することのできる期間である有効記憶期間を「年／月／日付  時刻」の形式で登録する。
【００４１】
ステップ３またはステップ５における検索の結果ヒットしたとき、または閾値のバイト列をバックアップ辞書データベース６に新規登録したとき（ステップ３のＹｅｓ、ステップ５のＹｅｓ、ステップ８）、バックアップ処理制御部１６は、キー値変換部１５に記憶されているプログラムに基づき、固定辞書データベース５またはバックアップ辞書データベース６を参照し、元データ３中のファイルポインタの位置の見出し語をその見出し語に対応するキー値に変更する（ステップ９）。
【００４２】
具体的には、図４の先頭の１バイト「Ｍ」を検索キーとして固定辞書データベース５およびバックアップ辞書データベース６を検索した結果ヒットしなかったとき、検索キー「Ｍ」に１バイト増やした「Ｍｙ」を検索キーとし、固定辞書データベース５およびバックアップ辞書データベース６を再検索する。検索の結果ヒットしたとき、この検索キー「Ｍｙ」を一意に定めるキー値「＃１１」に変更する。次に、ファイルポインタの位置を１バイト分進め、図４の「Ｍｙ」の次の１バイトは（空白）であり、この（空白）を検索キーとして同様の処理を繰り返す。これを図４の最後のバイト列である「.（ピリオド）」に対して同様の処理を繰り返して実行し、図５に示すキー値で構成されるキーファイル７を作成する。
【００４３】
キー値への変更が終わった後、バックアップ処理制御部１６は、辞書更新部１３に記憶されているプログラムに従い、バックアップ辞書データベース６のヒット数およびヒット日時を更新登録する（ステップ１０）。
【００４４】
ステップ１からステップ１１までの処理は、元データ３中の先頭から固定辞書データベース５またはバックアップ辞書データベース６でヒットしたとき、またはステップ８の閾値バイト列をバックアップ辞書データベース６に新規登録したときまでに使用したバイト列についての処理であり、バックアップ処理制御部２は、元データ３中の残りのバイト列に対しても同様に、バックアップ辞書データベース６への更新登録または新規登録、およびキー値への変更処理を繰り返す（ステップ１１のＮｏ）。ステップ１で読込んだ元データ３中の総てのバイト列に対し、これらの処理を実行し終えたとき（ステップ１１のＹｅｓ）、バックアップ処理制御部１６は、キーファイル作成部１１に記憶されているプログラムに基づいてキーファイル７を作成完了し（ステップ１２）、この作成したキーファイル７をバックアップ装置２内のキーファイル記憶部８に記憶する（ステップ１３）。
【００４５】
具体的には、元データ３のファイル名が「ｆｉｌｅＡ．ｔｘｔ」であり、２００３年５月２７日１５時にバックアップしてキーファイル７を作成した場合、キーファイル７のファイル名は「ｆｉｌｅＡ．ｔｘｔ．２００３０５２７１５００」というように、キーファイル７の拡張子には、キーファイル７が作成された年・月・日時・時刻の情報が付加されて登録されるものとする。
【００４６】
上記したバックアップ処理の方法は、従来行われてきたデータファイルを単純にバックアップ装置２にコピーする方法と大きく異なり、バックアップの元データをバックアップ辞書データベース６およびキーファイル７という形でバックアップ装置２にバックアップするものである。このバックアップ処理では、バックアップの元データに多くの共通のデータが含まれる場合や更新が少ないシステムなど過去のバックアップデータと共通のデータが多く含まれる場合に効果を発揮し、バックアップするデータのサイズを小さくすることができる。
【００４７】
バックアップされるデータのサイズについて説明するために、文字式を使って説明する。例えばバックアップするデータのサイズとして、元データ３のサイズがａバイト、バックアップ辞書データベース６に登録する際の閾値がｂバイト、キー値のサイズが５バイト、ヒット数が４バイト整数型、登録日時が４バイト整数型、有効記憶期間が４バイト整数型、ヒット率がｃ％とする。これらの条件下において、バックアップ処理制御部１６は、辞書更新部１３に記憶されているプログラムに基づき、バックアップ辞書データベース６へ登録するサイズを、「ａ＊（１−ｃ／１００）＊（１＋１７／ｂ）バイト」と算出し、またキーファイル作成部１１に記憶されているプログラムに従い、キーファイル７のサイズをａ／ｂ＊５バイトと算出する。従って、これら二種類のデータのサイズの合計は、「ａ＊（１−ｃ／１００）＊（１＋１７／ｂ）＋ａ／ｂ＊５バイト」となる。
【００４８】
さらにわかりやすく数字を用いるならば、元データ３が１，０００，０００バイト（ａ）、閾値が１，０００バイト（ｂ）、キー値のサイズが５バイト、ヒット数が４バイト整数型、登録日時が４バイト整数型、有効記憶期間が４バイト整数型で辞書データベース６に全くヒットしなかったとき（ｃ＝０）、バックアップ辞書データベース６に登録するデータのサイズは、１，０００，０００＊１＊（１＋１７／１０００）＝１，０１７，０００バイト、キーファイル７のサイズは５，０００バイトとなり、これら二つの合計のバックアップサイズは１，０２２，０００バイトとなる。つまり、１ＭＢのデータファイルをバックアップ辞書データベース６で全くヒットしないという最も好ましくない状況でバックアップしたとしても、従来のデータファイルでバックアップする方法に対して１８ＫＢ程度、すなわち１．８％ほどバックアップするデータのサイズが増えるだけである。逆に９０％ヒットしたとき（ｃ＝９０）、バックアップ辞書データベース６へ登録するデータのサイズは１，０００，０００＊（１−０．９）＊（１＋１７／１０００）＝１０１，７０００バイト、キーファイル７のサイズは、１，０００，０００／１，０００＊５＝５，０００となり、合計のバックアップサイズは１０６，３００バイトとなり、１ＭＢのデータをわずか１００ＫＢ程度、すなわちバックアップの元データの１０％のサイズでバックアップの元データをバックアップすることが可能となる。
【００４９】
このように、本発明の実施例１では、電子計算機１内のデータ記憶部４に記憶されている元データ３をファイルの先頭から読込み、この元データ３中の最初の１バイトを検索キーとし、電子計算機１内の固定辞書データベース５およびバックアップ辞書データベース６を検索する。
【００５０】
この検索でヒットしたとき、検索キーとして使用した元データ３内のデータと一致した見出し語およびその見出し語を一意に定めるキー値をバックアップ辞書データベース６に更新登録する。検索してもヒットしなかったとき、検索キーとして使用したバイト列を１バイト増やし、再度固定辞書データベース５およびバックアップ辞書データベース６を検索する。所定の閾値バイト列まで検索を続けてヒットしなかったとき、この閾値バイト列を見出し語とし、この見出し語を一意に定めるキー値を新規に割り当て、この見出し語、キー値、検索ヒット数に１、所定の形式のヒット日時および有効記憶期間をバックアップ辞書データベース６内に新規登録する。この有効記憶期間は、ユーザが手動設定してもよいが、バックアップ処理制御部１６が辞書更新部１３に記憶されているプログラムに従って自動設定してもよい（このとき、辞書更新部１３に記憶されているプログラムには、例えば、有効記憶期間を新規登録した日時の１年後というように設定されているものとする）。バックアップ辞書データベース６に更新登録する際、ヒット数およびヒットした日時が更新登録される。
【００５１】
この処理を元データ３中の末尾まで実行すると、元データ３は、バックアップ辞書データベース６およびキーファイル７に置き換えたことになり、以前バックアップしたデータの存在を有効に利用することにより、バックアップサイズを小さくすることができる。バックアップの更新部分が少ないときにはバックアップサイズはさらに小さくなる。また、キーファイル７は「ｆｉｌｅＡ．ｔｘｔ．２００３０５２７１５００」というように、元データ３のファイル名（この場合、「ｆｉｌｅＡ．ｔｘｔ」であるとする。）およびバックアップした年・月・日時・時刻の情報に基づいて作成されるため、一つの元データ３に対してデータの更新状況または作成状況に対応して複数の状態のバックアップを小さいバックアップサイズで行うことができる。
【実施例２】
【００５２】
次に、本発明に係るバックアップシステムの元データの復元処理の概要について図７を参照して説明する。
【００５３】
図７は、本発明に係るバックアップシステムが元データ３の復元処理をする実施の形態におけるシステムの構成を示す機能ブロック図である。詳細については、後記する。
【００５４】
この元データ３の復元処理の概要は、実施例１に示した元データ３のバックアップ処理とは逆に、バックアップ装置２におけるキーファイル記憶部８内のキーファイル７を読込み、このキーファイル７内のキー値を検索キーとし、電子計算機１内の固定辞書データベース５およびバックアップ装置２内のバックアップ辞書データベース６で検索するものとする。
【００５５】
検索の結果、キーファイル７のキー値をヒットしたキー値に対応する見出し語に変更し、この処理をキーファイル７中の総てのキー値に対して実行することにより元データ３を復元するというものである。
【００５６】
図７においては、プログラム部１８に記憶されているプログラムの内容が図１と異なり、それ以外の構成については同一であるため、重複する部分についての説明はここでは省略する。
【００５７】
プログラム部１８には、データ記憶部４内の元データ３を読込むとともに、元データ３にデータを書込むプログラムが記憶されているデータ読込み／書込み部１０と、固定辞書データベース５またはバックアップ辞書データベース６を検索するとともに、この検索した固定辞書データベース５またはバックアップ辞書データベース６から検索キーとして利用したバイト列が存在するか否かを確認するプログラムが記憶されている辞書検索部１２と、キーファイル記憶部８内のキーファイル７を読込むとともに、作成したキーファイル７をキーファイル記憶部８に書込むプログラムが記憶されているキーファイル読込み／書込み部１４と、バッファ部１７に展開されたキーファイル７内の所定のキー値を見出し語に変換する見出し語変換部１９とから構成されている。
【００５８】
次に、本発明に係るバックアップシステムの元データ３の復元処理について図８を参照して説明する。
【００５９】
図８は、本発明に係るバックアップシステムの元データ３の復元処理を説明するフローチャートである。バックアップシステムの動作が開始すると、バックアップ処理制御部１６は、プログラム部１８から各々のプログラムを読取って適宜にバッファ部１７に記憶した後、そのプログラムに従って所定の処理を実行する。
【００６０】
すなわち、図８において、バックアップ処理制御部１６は、キーファイル読込み／書込み部１４に記憶されているプログラムに基づき、ユーザの指示により選択されたキーファイル７のファイルポインタの位置（読込み開始時は先頭位置であるとする。）から読込む（ステップ２１）。バックアップ処理制御部１６は、ステップ２１で読込んだキーファイル７中の識別子「＃」から次の識別子「＃」が現れるまでのバイト列（キー値）を検索キーとし（例えば、図５における「＃１１＃０＃４３＃・・・＃ｚ」のうち「＃１１」のみ。）、辞書検索部１２に記憶されているプログラムに基づき、バックアップ装置２内のバックアップ辞書データベース６に登録されているキー値を検索する（ステップ２２）。
【００６１】
検索の結果、識別子「＃」を先頭に持つバイト列（検索キー）がバックアップ辞書データベース６内でヒットしたとき（ステップ２３のＹｅｓ）、バックアップ処理制御部１６は、キーファイル読込み／書込み部１４に記憶されているプログラムに基づき、図３を参照し、キーファイル７内で検索キーとして使用したキー値のファイルポインタの位置にあるキー値をヒットしたキー値に対応する見出し語に変更する（ステップ２４）。検索の結果、識別子「＃」を先頭に持つバイト列（検索キー）がバックアップ辞書データベース６内でヒットしなかったとき（ステップ２３のＮｏ）、元データ３を復元することはできず、エラー処理としてこのまま終了する。
【００６２】
ステップ２１からステップ２４までの処理は、ステップ２１で読込んだキーファイル７の一つのキー値に対して実行する処理であり、バックアップ処理制御部１６は、ステップ２１で読込んだキーファイル７中残りのキー値に対して上記の処理を繰り返す（ステップ２５のＮｏ）。ステップ２１で読込んだキーファイル７中の総てのキー値に対して上記の処理を実行したとき、一つのキーファイル７から一つの元データ３へと復元し終えることになる。バックアップ処理制御部１６は、この復元し終えた元データ３を、データ記憶部４に記憶する（ステップ２６）。また上記実施例２では、一つのキーファイル７から一つの元データ３を復元する処理について説明したが、複数のキーファイル７から同数の元データ３を復元する際、上記した処理と同様の処理を繰り返せばよい。
【００６３】
このように、本発明に係るバックアップシステムの元データ３の復元処理では、バックアップ処理制御部１６はユーザの指示により選択されたキーファイル７を読込み、この読込んだキーファイル７中のキー値を検索キーとしてバックアップ辞書データベース６を検索する。
【００６４】
この検索でヒットしたとき、キーファイル７中のファイルポインタの位置における検索キーとして使用したキー値に対応する見出し語に変更し、この処理をキーファイル７中の総てのキー値に対して実行する。これにより、一つのキーファイル７に対して一つの元データ３を復元することができる。また、キーファイル７はバックアップの度に作成されるものであるため、一つの元データ３に対して複数の状態に対してバックアップされることにより複数のキーファイル７が作成される。従って、複数の状態に対して作成されたキーファイル７を復元することにより、小さいサイズであるキーファイル７から大きいサイズである元データ３を復元することができる。さらに、元データ３の複数の状態時にバックアップされたときの元データ３を復元することができ、復元するのに必要な状態時の元データ３を復元することができる。
【実施例３】
【００６５】
次に、本発明に係るバックアップシステムのバックアップデータの削除処理の概要について図９を参照して説明する。
【００６６】
図９は、本発明に係るバックアップシステムがバックアップデータの削除処理をする実施の形態におけるシステムの構成を示す機能ブロック図である。詳細については、後記する。このバックアップデータというのはキーファイル７、バックアップ辞書データベース６に登録した見出し語、キー値、ヒット数、ヒット日時および有効記憶期間のことを表わすものとする。
【００６７】
バックアップデータの削除処理の概要は、ユーザの指示により選択されたキーファイル７を読込み、このキーファイル７中の最初のキー値を検索キーとしてバックアップ辞書データベース６を検索する。キーファイル７を読込んだ日付情報とバックアップ辞書データベース６に登録したキー値の行にある有効記憶期間とを比較し、前者が新しいときバックアップ辞書データベース６から見出し語、キー値、ヒット数、ヒット日時、および有効記憶期間を削除する。この処理をキーファイル７中の総てのキー値に対して実行し、総てのキー値に対して実行した後、バックアップ処理制御部１６は、キーファイル７中の総てのキー値に対応する見出し語等をバックアップ削除データベース６から削除したか否かに関わらず、キーファイル７を削除するというものである。
【００６８】
図９においては、プログラム部２０に記憶されているプログラムの内容が図１と異なり、それ以外の構成については同一であるため、重複する部分についての説明はここでは省略する。
【００６９】
プログラム部２０には、固定辞書データベース５またはバックアップ辞書データベース６を検索するともに、この検索した固定辞書データベース５またはバックアップ辞書データベース６から検索キーとして利用したバイト列が存在するか否かを確認するプログラムが記憶されている辞書検索部１２と、バックアップ辞書データベース６に新規なデータ（具体的には、見出し語、見出し語に対応するキー値、ヒット数、ヒット日時および有効記憶期間）を登録するとともにバックアップ辞書データベース６の内容を更新（登録および削除の両方を含むものとする。）するプログラムが記憶されている辞書更新部１３と、キーファイル記憶部８内のキーファイル７を読込むとともに、作成したキーファイル７をキーファイル記憶部８に書込むプログラムが記憶されているキーファイル読込み／書込み部１４と、現在の日付情報とバックアップ辞書データベース６に登録されている見出し語の有効記憶期間とを比較するとともに、バックアップ辞書データベース６に登録されている見出し語等を比較の結果に基づいて削除するためのプログラムが記憶されているバックアップ管理プログラム部２１とで構成されている。
【００７０】
次に、本発明に係るバックアップシステムのバックアップデータの削除処理について図１０を参照して説明する。
【００７１】
図１０は、本発明に係るバックアップシステムのバックアップデータの削除処理を説明するフローチャートである。バックアップシステムの動作が開始すると、バックアップ処理制御部１６は、プログラム部２０から各々のプログラムを読取って適宜にバッファ部１７に記憶した後、そのプログラムに従って所定の処理を実行する。
【００７２】
すなわち、図１０において、バックアップ処理制御部１６は、キーファイル読込み／書込み部１４に記憶されているプログラムに従い、ユーザの指示により選択されたキーファイル７のファイルポインタの位置（読込み開始時は先頭位置であるとする。）から読込む（ステップ３１）。バックアップ処理制御部１６は、ステップ３１で読込んだキーファイル７中の識別子「＃」から次の識別子「＃」が現れるまでのバイト列（キー値）を検索キーとし（例えば、図５における「＃１１＃０＃４３＃・・・＃ｚ」の「＃１１」のみ）、辞書検索部１２に記憶されているプログラムに従い、バックアップ装置２内のバックアップ辞書データベース６に登録されているキー値を検索する（ステップ３２）。
【００７３】
バックアップ処理制御部１６は、バックアップ管理プログラム部１８に記憶されているプログラムに基づき、ステップ３１で読込んだキーファイル７中のキー値に対し、このキーファイル７を読込んだ日時（以下「現時刻」という。）とバックアップ辞書データベース６に登録された有効記憶期間とを比較する（ステップ３３）。
【００７４】
比較の結果、現時刻がバックアップ辞書データベース６に登録された有効記憶期間より新しいとき（ステップ３４のＹｅｓ）、バックアップ処理制御部１６は、辞書更新部１３に記憶されているプログラムに従い、ステップ３２で検索キーとして使用したキー値、そのキー値に対応する見出し語、ヒット数、ヒット日時および有効記憶期間をバックアップ辞書データベース６から削除する（ステップ３５）。現時刻がバックアップ辞書データベース６に登録された有効記憶期間より新しくないとき（ステップ３４のＮｏ）、バックアップ処理制御部１６は、辞書更新部１３に記憶されているプログラムに従い、ステップ３２で検索キーとして使用したキー値、そのキー値に対応する見出し語、ヒット数、ヒット日時および有効記憶期間をバックアップ辞書データベース６から削除しない。
【００７５】
ステップ３１からステップ３５までの処理は、キーファイル７中の一つのキー値に対する処理であり、バックアップ処理制御部１６は、このステップ３１からステップ３５までの処理をキーファイル７中の総てのキー値に対して繰り返す（ステップ３６のＮｏ）。キーファイル７中の総てのキー値に対してステップ３１からステップ３５までの処理を実行した後、バックアップ処理制御部１６は、バックアップ管理プログラム部１８に記憶されているプログラムに基づき、ステップ３１で読込んだキーファイル７を削除する（ステップ３７）。また上記実施例３では、一つのキーファイル７に対するバックアップデータの削除処理について説明したが、複数のキーファイル７を元にバックアップデータを削除する際、上記した処理と同様の処理を繰り返せばよい。
【００７６】
このように、本発明に係るバックアップシステムのバックアップデータの削除処理では、ユーザにより削除したいキーファイル７が選択されたとき、バックアップ処理制御部１６は、そのキーファイル７を読込み、最初のキー値を検索キーとしてバックアップ辞書データベース６を検索する。キーファイル７を読込んだ日付情報がバックアップ辞書データベース６に登録したキー値の行にある有効記憶期間より新しいときのみ検索キーとして使用したキー値、キー値に対応する見出し語、ヒット数、ヒット日時および有効記憶期間をバックアップ辞書データベース６から削除する。
【００７７】
バックアップ処理制御部１６は、登録された見出し語およびそれに対応するキー値で有効記憶期間を過ぎたものを削除することにより、バックアップ辞書データベース６中の見出し語、キー値、ヒット数、ヒット日時、有効記憶期間およびキーファイル７の増加によるバックアップ装置２内でのデータの肥大化を防ぐとともに、バックアップ装置２内の一定の領域を確保することができる。
【００７８】
なお、本発明は上記実施の形態に限定されるものでなく、その要旨を逸脱しない範囲で種々変形して実施できる。例えば、固定辞書データベース５の内容を編集することができることとし、バックアップ辞書データベース６のヒット数が見出し語およびキー値を固定辞書データベース５に複製することにより、ヒット率の高い辞書データベースを作成することが可能である。この固定辞書データベース５は、別のバックアップシステムで使用することが可能である。例えば、稼動系および待機系などのクラスタ環境のシステムでは、バックアップの元データの類似性が高く、この固定辞書データベース５を使用すると、ヒット率が高くなり効率的なバックアップが可能となる。
【００７９】
さらに、複数のバックアップシステムで作成した複数の固定辞書データベース５を一つの固定辞書データベース５にマージすることにより、より汎用性の高い固定辞書データベース５を作成することが可能である。マージとは、複数の固定辞書データベース５を一つの固定辞書データベース５に結合する際に、同一の見出し語およびキー値が存在しない状態にすることである。ただし、この場合、この固定辞書データベース５は新規のバックアップシステムに使用することが必要である。
【図面の簡単な説明】
【００８０】
【図１】バックアップ処理におけるシステムの構成を示す機能ブロック図。
【図２】固定辞書データベース５の構造の一例を示す図面。
【図３】バックアップ辞書データベース６の構造の一例を示す図面。
【図４】元データ３の内容を示した一例を表わす図面。
【図５】図４の元データ３に基づいて作成したキーファイル７の内容を示す図面。
【図６】バックアップ処理を説明するフローチャート。
【図７】元データ３の復元処理におけるシステムの構成を示す機能ブロック図。
【図８】元データ３の復元処理を説明するフローチャート。
【図９】バックアップデータの削除処理におけるシステムの構成を示す機能ブロック図。
【図１０】バックアップデータの削除処理を説明するフローチャート。
【符号の説明】
【００８１】
１  ・・・電子計算機
２  ・・・バックアップ装置
３  ・・・元データ
４  ・・・データ記憶部
５  ・・・固定辞書データベース
６  ・・・バックアップ辞書データベース
７  ・・・キーファイル
８  ・・・キーファイル記憶部
９、１８、２０・・・プログラム部
１０  ・・データ読込み／書込み部
１１  ・・キーファイル作成部
１２  ・・辞書検索部
１３  ・・辞書更新部
１４  ・・キーファイル読込み／書込み部
１５  ・・キー値変換部
１６  ・・バックアップ処理制御部
１７  ・・バッファ部
１９  ・・見出し語変換部
２１  ・・バックアップ管理部
【図１】
2005107729.tif 000003
【図２】
2005107729.tif 000004
【図３】
2005107729.tif 000005
【図４】
2005107729.tif 000006
【図５】
2005107729.tif 000007
【図６】
2005107729.tif 000008
【図７】
2005107729.tif 000009
【図８】
2005107729.tif 000010
【図９】
2005107729.tif 000011
【図１０】
2005107729.tif 000012