스냅샷(컴퓨터 스토리지)
Snapshot (computer storage)이 글은 검증을 위해 추가 인용문이 필요합니다. : 스토리지– · · · JSTOR (2013년 9월 (이 메시지 및 ) |
컴퓨터 시스템에서 스냅샷은 특정 시점의 시스템 상태입니다.그 용어는 사진술에서의 그것과 비유하기 위해 만들어졌다.시스템 상태의 실제 복사본 또는 특정 시스템에서 제공하는 기능을 참조할 수 있습니다.
근거
대용량 데이터 세트의 전체 백업을 완료하는 데 시간이 오래 걸릴 수 있습니다.멀티태스킹 또는 멀티유저 시스템에서는 백업 중에 해당 데이터에 쓰기가 발생할 수 있습니다.이로 인해 백업이 원자성이 되는 것을 방지하고 데이터 파손의 원인이 될 수 있는 버전스큐가 도입됩니다.예를 들어 사용자가 이미 백업된 디렉터리로 파일을 이동하면 파일을 추가하기 전에 백업 작업이 이미 수행되었기 때문에 백업 미디어에서 해당 파일이 완전히 사라집니다.또, 버전 스큐에 의해서, 읽기중에 파일의 사이즈나 내용이 변경되어 파손되는 일이 있습니다.
라이브 데이터를 안전하게 백업하기 위한 한 가지 방법은 백업 중에 애플리케이션에 대한 액세스를 중지하거나 운영 체제에서 제공하는 잠금 API를 사용하여 데이터에 대한 쓰기 액세스를 일시적으로 비활성화하는 것입니다.이는 가용성이 낮은 시스템(정기적인 다운타임이 허용되는 데스크톱 컴퓨터 및 소규모 워크그룹 서버)에 적합합니다.단, 고가용성 24시간365일 시스템은 서비스 정지를 견딜 수 없습니다.
다운타임을 피하기 위해 고가용성 시스템은 스냅숏(한 시점에 동결된 데이터 세트의 읽기 전용 복사본)에 백업을 수행하고 애플리케이션에 데이터 쓰기를 계속하도록 허용할 수 있습니다.대부분의 스냅샷 구현은 효율적이며 O(1)에서 스냅샷을 생성할 수 있습니다.즉, 스냅샷을 생성하는 데 필요한 시간과 I/O는 데이터 세트의 크기에 따라 증가하는 것이 아니라 직접 백업에 필요한 시간과 I/O는 데이터 세트의 크기에 비례합니다.일부 시스템에서는 데이터 세트의 초기 스냅샷이 생성되면 후속 스냅샷이 변경된 데이터만 복사하고 포인터 시스템을 사용하여 초기 스냅샷을 참조합니다.이 포인터 기반 스냅샷 방법은 데이터 세트를 반복적으로 복제한 경우보다 Disk 용량을 적게 사용합니다.
실장
볼륨 매니저
일부 Unix 시스템에는 스냅샷 지원 논리 볼륨 관리자가 있습니다.이러한 기능은 변경된 블록을 "상위" 볼륨 내에서 덮어쓰기 직전에 다른 스토리지에 복사하여 전체 블록 장치에 Copy-on-Write를 구현하므로 블록 장치의 이전 이미지가 그대로 유지됩니다.이러한 스냅샷 이미지의 파일 시스템은 나중에 읽기 전용 미디어에 있는 것처럼 마운트할 수 있습니다.
또한 일부 볼륨 매니저에서는 쓰기 가능한 스냅샷을 생성할 수 있으므로 스냅샷 내에서 수정된 모든 블록을 원래 볼륨의 "상위" 블록과 연결 해제함으로써 쓰기 시 복사 방식을 확장할 수 있습니다.이러한 스킴은, 스냅샷에의 기입에 의해서 트리거 되는 추가의 기입시의 카피 조작을 실행하는 것으로도 설명할 수 있습니다.
Linux 에서는, 논리 볼륨 매니저(LVM)를 사용해 읽기 전용 스냅샷과 읽기/쓰기 스냅샷을 모두 작성할 수 있습니다.쓰기 가능한 스냅샷은 LVM 버전 2(LVM2)[1]에서 도입되었습니다.
파일 시스템
Bell Labs의 Plan 9에 대응한 WAFL [a]및 ODS-5와 같은 일부 파일 시스템은 내부적으로 파일의 이전 버전을 추적하고 특별한 네임스페이스를 통해 스냅샷을 제공합니다.UFS2와 같은 다른 제품은 파일 이력에 액세스하기 위한 운영 체제 API를 제공합니다.NTFS에서 스냅샷에 대한 액세스는 윈도우즈 XP 및 윈도우즈 서버 2003의 VSS(볼륨 섀도 복사 서비스)와 윈도우즈 Vista의 섀도 복사를 통해 제공됩니다.Melio FS는 공유 [2]스토리지에 동일한 VSS 인터페이스를 통해 스냅샷을 제공합니다.스냅샷은 버전 4.11 이후 NetWare의 NSS(Novell Storage Services) 파일 시스템에서도 사용할 수 있으며 최근에는 Open Enterprise Server 제품의 리눅스 플랫폼에서도 사용할 수 있습니다.
EMC의 Isilon OneFS 클러스터 스토리지 플랫폼은 파일 또는 디렉토리 레벨에서 읽기 전용 스냅샷을 지원하는 확장 가능한 단일 파일 시스템을 구현합니다.파일 시스템내의 모든 파일 또는 디렉토리를 스냅샷 할 수 있습니다.시스템은, 시스템에 최적인 방법으로 판단된 카피 온 라이트 또는 포인트 인 타임의 스냅샷을 동적으로 실장합니다.
Linux 에서는 Btrfs 및 OCFS2 파일 시스템은 개별 파일의 스냅샷 생성(복제)을 지원합니다.또한 Btrfs는 하위 볼륨의 스냅샷 생성도 지원합니다.AIX에서 JFS2는 스냅샷도 지원합니다.
Sun Microsystems ZFS에는 블록 레벨에서 읽기/쓰기 스냅샷을 추적하는 하이브리드 구현이 있지만 분기된 파일 세트를 사용자 애플리케이션에서 "클론"으로 명명할 수 있습니다.
Apple의 Mac OS X v10.5 운영 체제에 포함되어 있는 Time Machine은 스냅샷 스킴이 아니라 시스템 수준의 증분 백업 서비스입니다.마운트된 볼륨의 변경을 감시하고 하드 [b]링크를 사용하여 변경된 파일을 정기적으로 지정된 볼륨에 복사합니다.이는 HFS Plus 파일 시스템에 스냅샷 기능이 없기 때문입니다. Apple의 새로운 APFS 파일 시스템에는 이러한 기능이 도입되었습니다.
「 」를 참조해 주세요.
메모들
레퍼런스
- ^ "LVM HOWTO". 3.8. Snapshots. tldp.org. Retrieved 2013-09-29.
- ^ "Optimized Storage Solution for Enterprise Scale Hyper-V Deployments" (PDF). Microsoft. March 2010. p. 15. Retrieved 25 October 2012.
외부 링크
- Garimella, Neeta (2006-04-26). "Understanding and exploiting snapshot technology for data protection, Part 1: Snapshot technology overview".
- Harwood, Mike (2003-09-24). "Storage Basics: Backup Strategies".