用語集
スナップショットとは
スナップショットとは、スナップ写真を意味する英単語であり、転じてスナップ写真のごとく「その瞬間を切り取る」ように、ストレージ内の全ファイルおよびディレクトリ、仮想マシンの実行状態など、ある時点における状態を丸ごと保存したもののことを指します。
スナップショットは「ある時点での状態を丸ごと統一的に保持したもの」
ストレージ上に配置されているデータ領域である瞬間のイメージを取っておくものであるスナップショットは、パソコンのリカバリ機能である復元ポイントを想起するとわかりやすいかもしれません。
スナップショットの記録方法は、「データがどこにあるかという情報(「ポインタ」と呼ぶ)」を記録するものや、「データそのものを丸ごと保持」など、いくつかの方式があります。それぞれの記録方法によって特長が異なりますが、あるタイミングで静止点を設けて仮想的なボリュームとして実現し保持するため、万が一の場合でもスナップショットを取得した時点までデータの復旧が可能です。
そのため、OSやアプリなどのバージョンアップ、パッチ適用を伴うメンテナンス前の保険に、バックアップとして利用されるのが主な役割となります。
バックアップに効果を発揮
厳密なRDBの定義とは直接関わりはありませんが、一般的なRDBMSにおいてデータの形式以外にも下記の特徴がよく挙げられます。
- データをSQLで操作できる
- トランザクションが実装されている
スナップショットはバックアップに活用でき、パソコンに負荷をかけず迅速に処理が実行できることから、特に大容量のデータベースやサーバーに関して効果的と言えます。
また、スナップショットは取得した時点の内容を保持し続け、仮にバックアップ処理中にファイルやデータが更新された場合でも、取得した内容は変わりません。そのため、更新によるファイルやディレクトリの不整合が発生……という事態への有効な対策手段となります。
ただ保持しているのは取得時の内容なので、スナップショットによるバックアップは、サーバーに障害が発生した場合のリカバリーなど、複数のバックアップ策の1つとして考えておく方がいいでしょう。
FJcloud-V(旧ニフクラ)では、現時点のサーバー状態を保存する「ワンデイスナップショット」を提供しています。起動中のサーバーや増設ディスク付きのサーバーでも保存が可能で、トラブルが起きた際には作成時点へ早急に復旧できるのが特長です。
サーバーの定期的な自動バックアップや、任意のタイミングでバックアップを取得したい方向けに「バックアップ」の機能も提供しています。