Webサイト・データベースを遠隔バックアップ torocca!(トロッカ!)

バックアップとアーカイブの違い


個人事業主としてフリーエンジニアをしている木下です。
バックアップは、「やっておくべき」と思っていてもなかなか手がでなかったり、実施していても不十分なままペンディングしていたり、となかなかきちんとしたバックアップ体制が取れていない状況によく出会います。
サーバー・システムにおけるバックアップは簡単に言えば「利用中のデータをコピーしておくこと」です。正常なデータのコピーがあれば、利用中のデータに問題が起きても正常なデータの代替が用意されているから大丈夫だろう、という発想でデータをコピーします。バックアップ、と一言に表現しても、データの収集や保管の目的に応じて様々なバックアップが存在します。
簡単に言えば、データの消失や破損といった「事故に備える保険」という意味のバックアップと、データを保存し保管することによって「動作履歴を残す」という意味のバックアップの二種類です。現在ではどちらもデータを収集する行為を指してバックアップと表現することが増えてきていますが、厳密に区分けをしますと前者を主に「バックアップ」と呼称します。が、後者は「アーカイブ」と呼称することが多いです。

アーカイブとは元来「保存記録」や「保存資料」を指してアーカイブと呼ばれていました。例えば紙面の資料や情報をデジタル化して保存することをデジタルアーカイブと言われています。パソコンでは.zipファイルなどに固めて複数のファイルを一つのファイルに集約することを「アーカイブ」と呼称します。アーカイブデータを作成するアプリケーションを「アーカイバ」と呼びます。

バックアップとアーカイブ比較
バックアップ アーカイブ
目的 正常な状態を保存し、障害時に復旧すること ログなどの履歴データを保管し蓄積すること
バックアップ対象 環境およびデータ、原則稼働システム全体がバックアップ対象 特定のデータ、多くは稼働システムの一部データが対象。
データ種類 イメージファイルやスナップショットおよびユーザーデータ システムに蓄積されたログデータや特定のユーザーデータの履歴
保存方法や保存データのアクセス性 ハードディスクに収集しオンラインであることが多い 外部記憶装置で媒体に記録しオフライン保管が多い
データ保存期間 短期間(直近1週間から数カ月程度) 数年~10年以上(組織の規定による)
世代管理 記憶容量の許す限り複数世代 原則として一世代のみ
取得されたデータ 古いものから上書きされることが多い 上書き禁止を設定して長期保存とすることが多い
データの鮮度と需要 新しいほどよい(正常稼働時のデータのうち新しければ新しいほどよい) 古いデータも欲しい、時期を指定してピンポイントで取り出したい。
主な記憶媒体 ハードディスク テープや光学メディアなど、外部記憶媒体
容量 大容量が要求される それほど容量は要求されない
バックアップ取得したデータの利用場所 取得した環境でそのまま利用することが多い 取得した環境とは全く別の環境で利用することが多い

実際の現場では、これらの二種類のバックアップは「データを収集する」という意味で同じように「バックアップを取っておいて」と指示されることが多いのですが、その使われ方やそのデータを収集する意図といったところが全く異なることになります。


つまりバックアップとアーカイブは似て異なるもの、ということです。
同じバックアップと呼称しますし、データを収集する道具も同じバックアップツールを使うことになります。しかし、そのバックアップという行為の目指すところや最終的に使う局面が違う、ということです。

まず、純粋な意味でのバックアップについてです。
純粋なバックアップは主に障害からの復旧を目指してバックアップを取得します。

正常な状態のうちにバックアップで複製を作成しておくことによって、稼働している環境やユーザーが利用中のデータに不測の事態が発生しても「正常な状態のバックアップを提供する」ことによって問題を解決する、という目的を達成するためのバックアップです。

一方で、アーカイブです。
アーカイブでは、稼働中のシステムにおいて長期間保存しておかなければならないデータを対象としてバックアップを収集します。有名なところでは、ログやアクセス履歴、ファイル取り扱い履歴といったセキュリティ上長期間保存が必要となるデータをアーカイブする傾向があります。

この図でアーカイブ対象となるログデータは、システムが稼働するにつれてデータ量が肥大化していきます。そのため、システムでは古いデータは上書きされるように設定されていることが多く、放っておけば古いデータが参照できなくなってしまうことがあります。
しかし、アクセス履歴といった情報は有事の際に参照したり提出したりという利用ケースがあります。そのため、○年○月のアクセス履歴から誰が使っていたか探し出す、という状況に備えて、企業内ではログデータを長期間保管するケースが増えています。昨今個人情報保護(Pマーク、ISMS)や内部統制(IT統制)によってログの保管が重要とされる事項が増えてきました。


取得したデータが必要とされるとき

上述ではいずれも有事の際にバックアップデータが必要とされる、という表現になっていますが、有事の種類が違います。
通常のバックアップでは「稼働中のサーバーやシステムが故障・障害などで機能低下or停止してしまう」という有事に対処するためにデータを収集します。そのため、取得するバックアップデータによってはシステム内で二重でバックアップデータを収集することもあります。例えば、週一回システム全体をフルバックアップしていれば、そのシステム内に保存されたユーザーが利用するデータも同時に取得できます。しかし、ユーザーが利用するデータが週一回ではデータ破損の際に復旧するデータとしては古すぎる可能性があり、このユーザーデータだけは個別に毎日、あるいは○時間に一回、といった具合に細かくバックアップすることになります。復旧時に極力新しいデータをリストアできるようにするために、週一回フルバックアップしていてもユーザーデータだけは二重で別途バックアップを取得するわけです。

一方のアーカイブに要求される有事は「不正アクセスの被害に遭った」「情報漏洩の疑いがある」といった、保存されたデータを後から参照するようなイベントが発生した時、といえます。セキュリティ以外でも「不要だと思ってサーバーから消去した過去のドキュメントを閲覧したい」とか「メーカーから供給されなくなった古いバージョンのインストーラが必要になった」というケースもあります。つまり過去の古いデータが欲しい時にアーカイブからデータを取り出す必要がある、といえます。
このため、バックアップの取得自体は二重で収集する必然性は低いといえます。
※当然ですが記憶媒体(メディア)の破損に備えて複数のメディアに同一のデータを書き出すケースはあります。
古いデータが無限に稼働中のシステムに残せるわけではないので、別の記憶媒体にデータを保管することによって長期保管を実施するのがアーカイブによるバックアップだといえます。


まとめ

  • バックアップデータは現状動作の復旧に利用する。よってリストアは障害からの復旧を目的として実施する。
  • アーカイブデータはサーバーの活動記録や不要と思われた過去のドキュメントや過去のインストーラなどの履歴データを保存するために主に利用することが多い。よってリストアは「保存した履歴データの参照」が必要になった時実施することが多い。
  • バックアップデータは原則として対象のシステムすべてを収集する
  • アーカイブデータは保存しておきたいファイル単位で収集することが多い。
  • アーカイブデータの利用方法で代表的なのは、認証ログやアクセス履歴といった、セキュリティ関連のログ(記録)、これを保管しておくケースが多い。

一言で言えば「バックアップデータをリストアするときのシチュエーションが全く異なる」ということですね。


TOP