説明

バックアップ装置、バックアップ方法、データ圧縮方法、バックアッププログラムおよびデータ圧縮プログラム

【課題】データの圧縮と展開、信頼性検査に伴う時間を短縮する。
【解決手段】本発明は、記憶領域のうち未使用領域のデータをクリアする未使用領域データクリア部11と、クリア済データを細分化したデータに対して、クリアされたデータか否かを判定する第1クリアデータ判定部13と、クリアされたデータである場合、予め算出したクリアデータチェックコード121を取得する第1チェックコード生成部14と、予め算出したクリアデータ圧縮データ122を取得する圧縮データ生成部15と、展開データを細分化したデータに対して、クリアされたデータか否かを判定する第2クリアデータ判定部17と、クリアされたデータである場合、予め算出したクリアデータチェックコード121を取得する第2チェックコード生成部18と、第1チェックコード情報31と第2チェックコード情報21を比較するチェックコード比較部19と、を備えることを特徴とする。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、データの圧縮と展開、信頼性検査に伴う時間を短縮するバックアップ装置、バックアップ方法、データ圧縮方法等の技術に関する。
【背景技術】
【0002】
近年、電子計算機に搭載するOS(Operating System)やシステムの複雑化に伴うプログラム量の増大、HDD(Hard Disk Drive)の大容量化等により、データの記録・伝送の高速化が必要不可欠となっている。データ量の増加に加え、データの重要性も増してきており、バックアップの必要性や有効性が個人、企業関係なく浸透している。
【0003】
バックアップデータのような膨大な量のデータを他の記憶媒体へ記録・伝送する際、記憶媒体の容量や伝送の効率を考慮すると、圧縮してより少ないデータにすることが望ましい。データ圧縮方法には、データを復元した際に、完全に元に戻る可逆圧縮(ロスレス圧縮)と、完全には元に戻らない非可逆圧縮(ロッシー圧縮)の二種類が存在する。映像や音声等、多少のデータの欠損や改変があっても、全く意味が変わってしまうことがないデータを除き、圧縮には可逆圧縮を用いる必要がある。
可逆圧縮に用いられるアルゴリズムとしては、ランレングス符号化やハフマン符号化等が広く知られている。特に、Lempel-Ziv符号化は、通常のデータセットにおいてランレングス符号化やハフマン符号化よりも優れた圧縮率を実現している。
【0004】
また、可逆圧縮でデータを圧縮および展開する場合、圧縮前のデータと展開後のデータが一致することを確認する信頼性検査の作業が必要である。信頼性検査の方法として、誤り検出方法の1つであるチェックサムを算出する方法が知られている。この方法は、圧縮前のデータを分割し、分割したデータを数値とみなして合計値を算出する。算出された値(チェックサム)と圧縮後に展開されたデータから算出したチェックサムとが一致するか否かの検査を実施し、圧縮から展開までの過程での誤りを検出することができる。
チェックサムを算出するアルゴリズムとしては、全データをバイト単位で加算する単純な方法から、広義な意味のチェックサムとして、ハッシュ関数を用いる方法が存在する。
ハッシュ関数は、与えられた値から固定長のデータを生成するが、一方向関数であり、逆変換できない。
よって、算出した値から原文を再現することはできず、また、同じハッシュ値を持つ異なるデータを作成することも極めて困難であり、現実的には不可能となることから誤り検出に利用されている。ハッシュ関数を用いてチェックサムを算出する方法として、MD5(Message Digest 5)やSHA-1(Secure Hash Algorithm-1)が知られている。
【0005】
一般的に、上記圧縮技術を用いた記憶媒体のデータのバックアップにおいて、ファイル単位ではなくOSを含めた記憶媒体の全データをセクタ単位でバックアップするためには、記憶媒体の先頭から随時読み込みを行い、読み込んだデータの圧縮を行う必要がある。また、データ復元時の信頼性検査としてチェックサムの作成も必要となる。よって、バックアップデータは、圧縮された記憶媒体全体のデータとチェックサムの2つからなる。
データ展開時には、圧縮データを展開し、記憶媒体の先頭から書き込みを行う。書き込んだデータを再度読み込み、チェックサムを計算してデータ圧縮時に作成したチェックサムと比較することで、圧縮および展開、書き込み時のデータ化けがないか検査を実施している(例えば、特許文献1参照)。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2008−176420号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
このように、データの圧縮および展開、信頼性検査を行う場合、電子計算機へ実装する記憶媒体の大容量化に伴う処理時間の増加は避けることができない。特に、記憶媒体全体のデータが処理の対象となる場合は、OSが未使用の記憶領域に対しても、データの圧縮を行わなければならない。一般的に、OSが未使用の記憶領域であっても、一度使用されたことがある記憶領域には不規則なデータの羅列が記憶されているため、データの圧縮率は使用している領域と変わらない。
【0008】
また、記憶媒体全体のデータのバックアップでは、未使用の記憶領域に対してもチェックサムの算出を行わなければならず、大容量記憶媒体に対する圧縮率と圧縮および展開、チェックサムの計算に時間がかかることが問題となっている。
【0009】
そこで、本発明は、前記問題に鑑みてなされたものであり、データの圧縮および展開、信頼性検査に伴う時間を短縮するバックアップ装置、バックアップ方法、データ圧縮方法、バックアッププログラムおよびデータ圧縮プログラムを提供することを課題とする。
【課題を解決するための手段】
【0010】
前記課題を解決するために、本発明のバックアップ装置は、バックアップの対象となるバックアップ対象記憶装置の記憶領域のデータを圧縮してバックアップするバックアップ装置であって、前記記憶領域のうち未使用領域のデータをクリアし、前記記憶領域のデータをクリア済データとする未使用記憶領域データクリア部と、前記クリア済データを細分化したデータに対して、クリアされたデータであるか否かを判定する第1クリアデータ判定部と、前記第1クリアデータ判定部がクリアされたデータであると判定した場合、予め算出したクリアされたデータのチェックコードであるクリアデータチェックコードを取得し、前記第1クリアデータ判定部がクリアされたデータでないと判定した場合、前記クリア済データを細分化したデータからチェックコードを算出し、信頼性検査を行うための第1チェックコード情報を生成する第1チェックコード生成部と、前記第1クリアデータ判定部がクリアされたデータであると判定した場合、予め算出したクリアされたデータの圧縮結果であるクリアデータ圧縮データを取得し、前記第1クリアデータ判定部がクリアされたデータでないと判定した場合、前記クリア済データを細分化したデータから圧縮結果を算出し、圧縮されたデータである圧縮データを生成する圧縮データ生成部と、前記圧縮データを展開し、展開データを生成する圧縮データ展開部と、前記展開データを細分化したデータに対して、クリアされたデータであるか否かを判定する第2クリアデータ判定部と、前記第2クリアデータ判定部がクリアされたデータであると判定した場合、予め算出した前記クリアデータチェックコードを取得し、前記第2クリアデータ判定部がクリアされたデータでないと判定した場合、前記展開データを細分化したデータからチェックコードを算出し、信頼性検査を行うための第2チェックコード情報を生成する第2チェックコード生成部と、前記第1チェックコード情報と前記第2チェックコード情報を比較するチェックコード比較部と、を備えることを特徴とする。
【発明の効果】
【0011】
本発明によれば、データの圧縮および展開、信頼性検査に伴う時間を短縮することができる。
【図面の簡単な説明】
【0012】
【図1】本発明の実施形態におけるバックアップ装置の構成を示すブロック図である。
【図2】本発明の実施形態における第1チェックサム情報の一例を示す図である。
【図3】本発明の実施形態におけるバックアップ装置の未使用領域データクリア部による未使用領域データクリア処理の動作を示すフローチャートである。
【図4】本発明の実施形態におけるバックアップ装置の第1クリアデータ判定部および第1チェックサム生成部による第1チェックサム情報生成処理の動作を示すフローチャートである。
【図5】本発明の実施形態におけるバックアップ装置の第1クリアデータ判定部および圧縮データ生成部による圧縮データ生成処理の動作を示すフローチャートである。
【図6】本発明の実施形態におけるバックアップ装置の圧縮データ展開部、第2クリアデータ判定部、第2チェックサム生成部およびチェックサム比較部による圧縮データ展開処理の動作を示すフローチャートである。
【発明を実施するための形態】
【0013】
以下、本発明の実施形態について、図1〜図6を参照して説明する。なお、各図において、共通する部分には同一の符号を付し重複した説明を省略する。
図1に示すように、バックアップ装置1は、バックアップ対象記憶装置2のデータのバックアップを取るために、バックアップ対象記憶装置2のデータを圧縮してバックアップ記憶装置3に記憶させるものである。
また、バックアップ装置1は、バックアップ記憶装置3に記憶させた圧縮したデータを展開し、バックアップ対象記憶装置2に再び記録し、信頼性検査を行うものである。
なお、バックアップ対象記憶装置2の記憶領域には、ファイルとして存在するデータを記憶している使用領域と、いわゆる空き領域である未使用領域とがある。バックアップ装置1は、バックアップ対象記憶装置2の未使用領域も含めた記憶領域全体のデータをバックアップするものである。
バックアップ対象記憶装置2は、バックアップの対象となるデータが記憶された記憶媒体であり、例えば、HDD(Hard Disk Drive)やSSD(Solid State Drive)等である。バックアップ対象記憶装置2は、電子計算機に実装されていてもよい。
バックアップ記憶装置3は、バックアップのデータを記憶する記憶媒体であり、バックアップ装置1の外部にあってもよいし、内部にあってもよい。
【0014】
[バックアップ装置1の構成]
図1に示すように、バックアップ装置1は、未使用領域データクリア部11と、記憶部12と、第1クリアデータ判定部13と、第1チェックサム生成部14と、圧縮データ生成部15と、圧縮データ展開部16と、第2クリアデータ判定部17と、第2チェックサム生成部18と、チェックサム比較部19と、を備える。
【0015】
未使用領域データクリア部11は、バックアップ対象記憶装置2の未使用領域のデータをクリアするものである。
ここで、未使用領域のデータをクリアすることについて説明する。データの圧縮は、一般的に、規則的なデータの羅列に対しては圧縮率が高く、ランダムなデータの羅列に対しては圧縮率が低い傾向にある。OSが未使用と判断した記憶領域であっても、一度使用されたことがある記憶領域には、不規則なデータの羅列が記憶されたままとなっている。そのため、未使用領域は、未使用であっても圧縮率が比較的低い記憶領域といえる。そこで、未使用領域に規則的なデータの羅列を記憶させ、この未使用領域のデータの圧縮率を高めるのである。このように、未使用領域に規則的なデータの羅列を記憶させることを、未使用領域のデータをクリアするという。
【0016】
未使用領域のデータをクリアする方法は、未使用領域に例えば、内容が0の羅列である一定量のバイナリファイルを作成することにより行う。このファイルを未使用領域すべてについて作成する。その後、これらのバイナリファイルをすべて削除して再び未使用領域としておく。すると、この未使用領域には、0の羅列が記憶された状態となる。
これにより、圧縮対象であるバックアップ対象記憶装置2の未使用領域については、規則的なデータの羅列が記憶された状態となるため、データをクリアする前の不規則なデータの羅列を圧縮するよりも、圧縮率の向上の効果を得ることができる。
なお、データをクリアする処理が施された未使用領域と、使用領域とを含めたバックアップ対象記憶装置2の記憶領域全体のデータを、クリア済データという。
【0017】
記憶部12は、後記するクリアデータチェックサム121と、クリアデータ圧縮データ122とを記憶するものである。
クリアデータチェックサム121は、規則的なデータの羅列のチェックサムである。例えば、クリアデータチェックサム121は、一定量の0の羅列のチェックサムである。したがって、このクリアデータチェックサム121は、予め計算しておくことができる。
クリアデータ圧縮データ122は、規則的なデータの羅列の圧縮結果である。したがって、このクリアデータ圧縮データ122も、予め計算しておくことができる。
【0018】
第1クリアデータ判定部13は、クリア済データを細分化したデータを取得し、クリア済データを細分化したデータに対して、クリアされたデータであるか否かを判定するものである。クリア済データを細分化したデータとは、クリア済データを、チェックサム算出のために適当な間隔で区切ったデータである。クリアされたデータであるか否かを判定する方法は、クリア済データを細分化したデータが、規則的なデータの羅列であるか否かを判定することにより行う。例えば、第1クリアデータ判定部13は、クリア済データを細分化したデータが、0の羅列のみからなる場合は、クリアされたデータであると判定する。したがって、クリア済データの中のデータであって、元々は使用領域に記憶されていたデータであっても、細分化されたことにより、0の羅列のみとなったデータは、クリアされたデータであると判定される。
【0019】
第1チェックサム生成部14は、クリア済データを細分化したデータがクリアされたデータであると判定された場合は、予め算出しておいたクリアデータチェックサム121を取得し、クリア済データを細分化したデータがクリアされたデータでないと判定された場合は、クリア済データを細分化したデータに対するチェックサムを演算により算出するものである。チェックサムを演算により算出する方法は、従来技術により、種々の方法があり、例えば、クリア済データを細分化したデータを数値とみなして、合計値を算出することにより行う。
【0020】
これにより、第1クリアデータ判定部13がクリアされたデータか否か判定する判定処理は多くなるが、チェックサムを算出する処理を大幅に減らすことができる。チェックサムを算出する処理の方が判定処理よりも全体の必要時間に与える影響は大きい。したがって、クリア済データ全体のチェックサムを算出するのに必要な時間を短縮することができる。
【0021】
また、第1チェックサム生成部14は、取得したクリアデータチェックサム121または算出したチェックサムを、第1チェックサム情報31へ追加し、第1チェックサム情報31を生成する。
ここで、第1チェックサム情報31について、図2を参照して説明する。
図2に示すように、第1チェックサム情報31には、チェックサムを算出したバックアップ対象記憶装置2の所定の記憶領域区間ごと(つまり、クリア済データを細分化したデータごと)にチェックサム算出開始アドレス311が記述される。所定の記憶領域区間は、例えば、セクタごとである。チェックサムは、通常は、符号312に示すチェックサムのように、異なる値となる。一方、クリアされたデータであると判定されたデータのチェックサムは、符号313に示すチェックサムのように、同一の値(つまり、クリアデータチェックサム121)となる。
なお、本明細書等において、チェックサムとは、チェックコードの概念に含まれるものである。
【0022】
圧縮データ生成部15は、クリア済データを細分化したデータがクリアされたデータであると判定された場合は、予め算出しておいたクリアデータ圧縮データ122を取得し、クリア済データを細分化したデータがクリアされたデータでないと判定された場合は、クリア済データを細分化したデータを使用して圧縮データを圧縮処理により算出するものである。圧縮データを圧縮処理により算出する方法は、従来技術により、種々の方法があり、例えば、Lempel-Ziv符号化等の圧縮アルゴリズムを用いることにより行う。
【0023】
これにより、クリアされたデータであると判定されたデータに対しては、時間のかかる圧縮処理をせずとも、圧縮結果を得ることができ、データ圧縮にかかる時間を短縮することができる。
【0024】
また、圧縮データ生成部15は、取得したクリアデータ圧縮データ122または算出した圧縮データを、圧縮データ32へ追加し、圧縮データ32を生成する。
【0025】
圧縮データ展開部16は、圧縮データ32を取得し、圧縮データ32を展開するものである。展開されたデータを展開データという。また、圧縮データ展開部16は、展開データをバックアップ対象記憶装置2へ記録するものである。
第2クリアデータ判定部17は、展開データを細分化したデータを取得し、展開データを細分化したデータに対して、クリアされたデータであるか否かを判定するものである。判定する方法は、第1クリアデータ判定部13と同様であるため、説明を省略する。
【0026】
第2チェックサム生成部18は、第1チェックサム生成部14と同様の方法で第2チェックサム情報21を生成するものである。すなわち、展開データを細分化したデータがクリアされたデータであると判定された場合は、予め算出しておいたクリアデータチェックサム121を取得し、展開データを細分化したデータがクリアされたデータでないと判定された場合は、展開データを細分化したデータに対するチェックサムを演算により算出するものである。
これにより、展開データ全体のチェックサムを算出するのに必要な時間を短縮することができる。
なお、このときのチェックサム算出のための演算は、圧縮時のチェックサム算出のための演算と同一である。また、展開データの細分化は、圧縮時のチェックサム算出の際にクリア済データを細分化した区間に合わせる。
【0027】
チェックサム比較部19は、第1チェックサムと第2チェックサムとが一致しているか否かを判定するものである。第1チェックサムと第2チェックサムとが一致していれば、細分化された当該区間におけるデータは、誤りなく復元されたことになる。一方、第1チェックサムと第2チェックサムとが一致していなければ、データの圧縮や展開時に問題があると考えられるため、バックアップ装置1は、図示しない出力装置にエラーを出力する。
【0028】
なお、バックアップ装置1は、図示を省略したCPU(Central Processing Unit)やメモリを搭載した一般的なコンピュータで実現することができる。このとき、バックアップ装置1は、コンピュータを、前記した各機能部として機能させるバックアッププログラム、データ圧縮プログラムによって動作する。
また、第1クリアデータ判定部13と第2クリアデータ判定部17とは、同一のモジュール等で実現することができる。また、第1チェックサム生成部14と第2チェックサム生成部18とは、同一のモジュール等で実現することができる。
【0029】
[バックアップ装置1の動作]
次に、バックアップ装置1の動作について図3〜図6(構成は適宜図1)を参照して説明する。
(未使用領域データクリア処理)
この処理は、バックアップ対象記憶装置2の未使用の記憶領域のデータをクリアする処理である。
【0030】
図3のフローチャートに示すように、ステップS101において、未使用領域データクリア部11は、バックアップ対象記憶装置2の未使用の記憶領域に、データをクリアするためのファイルを作成する。このファイルは、前記したように、例えば、内容が0の羅列である一定量のバイナリファイルである。
ステップS102において、未使用領域データクリア部11は、ファイルの作成が成功したか否かを判定する。
【0031】
ファイルの作成が成功したと判定した場合は(ステップS102・Yes)、ステップS101に戻って、未使用領域データクリア部11は、データをクリアするためのファイルの作成を続ける。
一方、ファイルの作成が成功しなかったと判定した場合は(ステップS102・No)、未使用領域データクリア部11は、未使用の記憶領域すべてにファイルが作成されたと判断し、ステップS103において、未使用領域データクリア部11は、データをクリアするために作成したファイルのすべてを削除する。
以上により、未使用領域データクリア部11によって、バックアップ対象記憶装置2にクリア済データが生成される。
【0032】
(第1チェックサム情報生成処理)
この処理は、第1チェックサム情報31を生成する処理である。また、バックアップ装置1は、この処理を、バックアップ対象記憶装置2の未使用領域のデータをクリアした後に行う。
【0033】
図4のフローチャートに示すように、ステップS201において、第1クリアデータ判定部13は、クリア済データを細分化したデータを取得する。
ステップS202において、第1クリアデータ判定部13は、クリア済データを細分化したデータに対して、クリアされたデータであるか否かを判定する。
【0034】
クリアされたデータであると判定した場合は(ステップS202・Yes)、ステップS203において、第1チェックサム生成部14は、予め算出したクリアデータチェックサム121を取得する。
一方、クリアされたデータでないと判定した場合は(ステップS202・No)、ステップS204において、第1チェックサム生成部14は、クリア済データを細分化したデータからチェックサムを算出する。
【0035】
ステップS205において、第1チェックサム生成部14は、ステップS203で取得したクリアデータチェックサム121またはステップS204で算出したチェックサムを、第1チェックサム情報31へ追加し、第1チェックサム情報31を生成する。
ステップS206において、第1チェックサム生成部14は、全記憶領域のデータに対して実施したか否かを判定する。
【0036】
全記憶領域のデータに対して実施していないと判定した場合は(ステップS206・No)、ステップS201に戻って、バックアップ装置1は、処理を続ける。
一方、全記憶領域のデータに対して実施したと判定した場合は(ステップS206・Yes)、バックアップ装置1は、第1チェックサム情報生成処理を終了する。
【0037】
(圧縮データ生成処理)
この処理は、バックアップ用の圧縮データを生成する処理である。また、バックアップ装置1は、この処理を、第1チェックサム情報生成処理と並行して行うことができる。
【0038】
図5のフローチャートに示すように、ステップS301において、第1クリアデータ判定部13は、クリア済データを細分化したデータを取得する。
ステップS302において、第1クリアデータ判定部13は、クリア済データを細分化したデータに対して、クリアされたデータであるか否かを判定する。
【0039】
クリアされたデータであると判定した場合は(ステップS302・Yes)、ステップS303において、圧縮データ生成部15は、予め算出したクリアデータ圧縮データ122を取得する。
一方、クリアされたデータでないと判定した場合は(ステップS302・No)、ステップS304において、圧縮データ生成部15は、クリア済データを細分化したデータから圧縮データを圧縮処理により算出する。
【0040】
ステップS305において、圧縮データ生成部15は、ステップS303で取得したクリアデータ圧縮データ122またはステップS304で算出した圧縮データを、圧縮データ32へ追加し、圧縮データ32を生成する。
ステップS306において、圧縮データ生成部15は、全記憶領域のデータに対して実施したか否かを判定する。
【0041】
全記憶領域のデータに対して実施していないと判定した場合は(ステップS306・No)、ステップS301に戻って、バックアップ装置1は、処理を続ける。
一方、全記憶領域のデータに対して実施したと判定した場合は(ステップS306・Yes)、バックアップ装置1は、圧縮データ生成処理を終了する。
【0042】
(圧縮データ展開処理)
この処理は、バックアップ用の圧縮データを用いてバックアップ対象記憶装置2へデータを復元し、圧縮前のデータと展開後のデータが一致しているかを確認する信頼性検査を行う処理である。
【0043】
図6のフローチャートに示すように、ステップS401において、圧縮データ展開部16は、圧縮データ32を取得する。
ステップS402において、圧縮データ展開部16は、圧縮データ32を展開し、展開データを生成する。
ステップS403において、圧縮データ展開部16は、展開データをバックアップ対象記憶装置2へ記録する。
【0044】
ステップS404において、第2クリアデータ判定部17および第2チェックサム生成部18は、第2チェックサム情報生成処理を実行する。これにより、第2チェックサム情報21が生成される。なお、第2チェックサム情報生成処理は、第1チェックサム情報生成処理と同様であるため(図4参照)、説明を省略する。
ステップS405において、チェックサム比較部19は、第1チェックサムと第2チェックサムとが一致しているか否かを判定する。
【0045】
第1チェックサムと第2チェックサムとが一致していると判定した場合(ステップS405・Yes)、ステップS406において、圧縮データ展開部16は、圧縮データ32をすべて展開したか否か判定する。
圧縮データをすべて展開していないと判定した場合は(ステップS406・No)、ステップS401に戻って、バックアップ装置1は、処理を続ける。
一方、圧縮データをすべて展開したと判定した場合は(ステップS406・Yes)、バックアップ装置1は、圧縮データ展開処理を終了する。
【0046】
ステップS405において、第1チェックサムと第2チェックサムとが一致していないと判定した場合(ステップS405・No)、ステップS407において、バックアップ装置1は、図示しない出力装置にエラーを出力する。
【0047】
以上の動作によって、圧縮率向上の効果を得ることができる。また、特別なアルゴリズムを用いておらず、圧縮アルゴリズムに関係なく実施することができる。
また、圧縮時において、クリアされたデータと判定されたデータについては、チェックサムの算出処理をしなくとも、チェックサムを特定することができ、チェックサム算出にかかる時間を短縮することができる。
また、圧縮時において、クリアされたデータと判定されたデータについては、データの圧縮処理をしなくとも、圧縮結果のデータを特定することができ、データ圧縮にかかる時間を短縮することができる。
また、展開時において、クリアされたデータと判定されたデータについては、チェックサムの算出処理をしなくとも、チェックサムを特定することができ、チェックサム算出にかかる時間を短縮することができる。
【0048】
本実施形態により、記憶領域の圧縮率を向上させることで、圧縮したデータの記録・伝送に必要な処理時間の短縮や、記録するメディアの容量を削減することができる。
また、電子計算機へ実装する記憶媒体のデータの圧縮および展開、信頼性検査の作業において、処理時間短縮の効果を得ることができ、記憶媒体の大容量化による処理時間の増加を軽減することができる。
【0049】
<変形例>
以上、本発明の一実施形態について説明したが、本発明はこれに限定されず、本発明の趣旨を逸脱しない範囲で変更することができる。
【0050】
本発明の実施形態では、フローチャートのステップは、記載された順序に沿って時系列的に行われる処理の例を示したが、必ずしも時系列的に処理されなくとも、並列的あるいは個別実行される処理をも含むものである。
例えば、ステップS403とステップS404とは、並列に行うこととしてもよい。すなわち、バックアップ装置1は、展開データをバックアップ対象記憶装置2へ記録するとともに、第2チェックサム情報生成処理を実行することとしてもよい。
【0051】
また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【符号の説明】
【0052】
1 バックアップ装置
2 バックアップ対象記憶装置
3 バックアップ記憶装置
11 未使用領域データクリア部
12 記憶部
13 第1クリアデータ判定部
14 第1チェックサム生成部(第1チェックコード生成部)
15 圧縮データ生成部
16 圧縮データ展開部
17 第2クリアデータ判定部
18 第2チェックサム生成部(第2チェックコード生成部)
19 チェックサム比較部(チェックコード比較部)
21 第2チェックサム情報(第2チェックコード情報)
31 第1チェックサム情報(第1チェックコード情報)
32 圧縮データ
121 クリアデータチェックサム(クリアデータチェックコード)
122 クリアデータ圧縮データ
311 チェックサム算出開始アドレス
312 通常のチェックサム
313 クリアされたデータと判定されたデータのチェックサム

【特許請求の範囲】
【請求項1】
バックアップの対象となるバックアップ対象記憶装置の記憶領域のデータを圧縮してバックアップするバックアップ装置であって、
前記記憶領域のうち未使用領域のデータをクリアし、前記記憶領域のデータをクリア済データとする未使用領域データクリア部と、
前記クリア済データを細分化したデータに対して、クリアされたデータであるか否かを判定する第1クリアデータ判定部と、
前記第1クリアデータ判定部がクリアされたデータであると判定した場合、予め算出したクリアされたデータのチェックコードであるクリアデータチェックコードを取得し、前記クリアデータチェックコードを用いて、信頼性検査を行うための第1チェックコード情報を生成する第1チェックコード生成部と、
前記第1クリアデータ判定部がクリアされたデータであると判定した場合、予め算出したクリアされたデータの圧縮結果であるクリアデータ圧縮データを取得し、前記クリアデータ圧縮データを用いて、圧縮されたデータである圧縮データを生成する圧縮データ生成部と、
前記圧縮データを展開し、展開データを生成する圧縮データ展開部と、
前記展開データを細分化したデータに対して、クリアされたデータであるか否かを判定する第2クリアデータ判定部と、
前記第2クリアデータ判定部がクリアされたデータであると判定した場合、予め算出した前記クリアデータチェックコードを取得し、前記クリアデータチェックコードを用いて、信頼性検査を行うための第2チェックコード情報を生成する第2チェックコード生成部と、
前記第1チェックコード情報と前記第2チェックコード情報を比較するチェックコード比較部と、
を備えることを特徴とするバックアップ装置。
【請求項2】
前記第1チェックコード生成部は、前記第1クリアデータ判定部がクリアされたデータでないと判定した場合、前記クリア済データを細分化したデータからチェックコードを算出し、前記クリアデータチェックコードまたは算出した前記チェックコードを用いて、信頼性検査を行うための第1チェックコード情報を生成し、
前記圧縮データ生成部は、前記第1クリアデータ判定部がクリアされたデータでないと判定した場合、前記クリア済データを細分化したデータから圧縮結果を算出し、前記クリアデータ圧縮データまたは前記圧縮結果を用いて、圧縮されたデータである圧縮データを生成し、
前記第2チェックコード生成部は、前記第2クリアデータ判定部がクリアされたデータでないと判定した場合、前記展開データを細分化したデータからチェックコードを算出し、前記クリアデータチェックコードまたは算出した前記チェックコードを用いて、信頼性検査を行うための第2チェックコード情報を生成する
ことを特徴とする請求項1に記載のバックアップ装置。
【請求項3】
前記圧縮データ展開部は、前記展開データを前記バックアップ対象記憶装置に記録し、
前記第2クリアデータ判定部は、前記バックアップ対象記憶装置に記録された前記展開データを取得し、取得して細分化したデータに対して、クリアされたデータであるか否かを判定する
ことを特徴とする請求項1に記載のバックアップ装置。
【請求項4】
前記チェックコードは、データを数値化して合計するチェックサムである
ことを特徴とする請求項1に記載のバックアップ装置。
【請求項5】
バックアップの対象となるバックアップ対象記憶装置の記憶領域のデータを圧縮してバックアップするバックアップ方法であって、
前記記憶領域のうち未使用領域のデータをクリアし、前記記憶領域のデータをクリア済データとする未使用領域データクリアステップと、
前記クリア済データを細分化したデータに対して、クリアされたデータであるか否かを判定する第1クリアデータ判定ステップと、
前記第1クリアデータ判定部がクリアされたデータであると判定した場合、予め算出したクリアされたデータのチェックコードであるクリアデータチェックコードを取得し、前記クリアデータチェックコードを用いて、信頼性検査を行うための第1チェックコード情報を生成する第1チェックコード生成ステップと、
前記第1クリアデータ判定部がクリアされたデータであると判定した場合、予め算出したクリアされたデータの圧縮結果であるクリアデータ圧縮データを取得し、前記クリアデータ圧縮データを用いて、圧縮されたデータである圧縮データを生成する圧縮データ生成ステップと、
前記圧縮データを展開し、展開データを生成する圧縮データ展開ステップと、
前記展開データを細分化したデータに対して、クリアされたデータであるか否かを判定する第2クリアデータ判定ステップと、
前記第2クリアデータ判定部がクリアされたデータであると判定した場合、予め算出した前記クリアデータチェックコードを取得し、前記クリアデータチェックコードを用いて、信頼性検査を行うための第2チェックコード情報を生成する第2チェックコード生成ステップと、
前記第1チェックコード情報と前記第2チェックコード情報を比較するチェックコード比較ステップと、
を含むことを特徴とするバックアップ方法。
【請求項6】
バックアップ対象記憶装置の記憶領域のデータを圧縮するバックアップ装置におけるデータ圧縮方法であって、
前記バックアップ装置の未使用領域データクリア部が、前記記憶領域のうち未使用領域のデータをクリアし、前記記憶領域のデータをクリア済データとする未使用領域データクリアステップと、
前記バックアップ装置の第1クリアデータ判定部が、前記クリア済データを細分化したデータに対して、クリアされたデータであるか否かを判定する第1クリアデータ判定ステップと、
前記バックアップ装置の第1チェックコード生成部が、前記第1クリアデータ判定部がクリアされたデータであると判定した場合、予め算出したクリアされたデータのチェックコードであるクリアデータチェックコードを取得し、前記クリアデータチェックコードを用いて、信頼性検査を行うための第1チェックコード情報を生成する第1チェックコード生成ステップと、
前記バックアップ装置の圧縮データ生成部が、前記第1クリアデータ判定部がクリアされたデータであると判定した場合、予め算出したクリアされたデータの圧縮結果であるクリアデータ圧縮データを取得し、前記クリアデータ圧縮データを用いて、圧縮されたデータである圧縮データを生成する圧縮データ生成ステップと、
を含むことを特徴とするデータ圧縮方法。
【請求項7】
請求項5に記載のバックアップ方法をコンピュータに実行させるためのバックアッププログラム。
【請求項8】
請求項6に記載のデータ圧縮方法をコンピュータに実行させるためのデータ圧縮プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公開番号】特開2012−155428(P2012−155428A)
【公開日】平成24年8月16日(2012.8.16)
【国際特許分類】
【出願番号】特願2011−12498(P2011−12498)
【出願日】平成23年1月25日(2011.1.25)
【出願人】(000005108)株式会社日立製作所 (27,607)
【Fターム(参考)】