スナップショット 【snapshot】
概要
スナップショット(snapshot)とは、(銃の)速射、スナップ写真という意味の英単語。ITの分野では、ある時点における対象の全体像を丸ごと写し取ったものを表す。ストレージ上のファイルシステムを丸ごとコピーしたものや、データベースの複製などを指すことが多い。ストレージ(外部記憶装置)内のすべてのファイルやディレクトリ、データベース内の全データ、仮想化環境(仮想マシン)の実行状態など、刻々内容が変動する何らかのデータ集合について、ある瞬間の状態を丸ごと写し取った複製のことをスナップショットという。
スナップショットを取って保管しておくことで、データが破損・喪失した際に、ある特定の時点の状態を復旧したり、別の機器にデータやシステムの状態を複製・移転することができる。また、後から過去のある時点の状態を参照することもできる。
システムが稼動状態のまま漫然とデータをコピーすると、複製開始から終了までの途中の段階で利用者や他のソフトウェアが一部のデータを書き換えてしまう恐れがあるため、スナップショット作成中は一時的に書き込みを禁止したり、書き込むべき内容を保管しておいて終了後にまとめて反映させるといった機能が提供されることが多い。
ソフトウェアのスナップショット
ソフトウェア開発やプログラミングの分野では、開発中のソフトウェアについて、ある時点におけるソフトウェアを構成するプログラムコードや関連するデータなどのまとまりをスナップショットと呼ぶことがある。
バージョン番号などが付与され、正式に利用者向けに提供される「リリース」(release)とは異なり、主に開発者や熟練利用者向けに、ある日時における最新版を共有するために作成される。最新機能などを試すことができるが、十分なテストなどが行われておらず動作が不安定なことが多い。
画面のスナップショット
パソコンやスマートフォンなどで、ある瞬間の画面全体やソフトウェアの表示状態を画像として取得して保存したものを「画面キャプチャ」「スクリーンショット」などというが、これをスナップショットと呼ぶことがある。“snapshot” の原義の一つに「スナップ写真」があり、これに近い用法である。