기본지식

동기화, 백업, 스냅샷

꾸적꾸적 2025. 4. 17. 09:49

셋 모두 데이터 보호와 복구를 위해 사용되는 단어이지만,

비슷하면서도 목적과 방식이 다른 방식이므로

헷갈리기 전에 미리 정리.

 

비교

  동기화(Sync) 백업(Backup) 스냅샷(Snapshot)
목적 파일 동기화, 동일 상태 유지 데이터 보호 및 복구 목적 시스템 상태 또는 볼륨의 시점 보존
방식 실시간/주기적으로 양쪽 파일 동기화 전체/증분 방식으로 복사 및 보존 특정 시점의 상태를 캡쳐(논리적 복사)
데이터
위치
양쪽에 동일한 파일로 존재 별도의 저장소(외장, NAS등) 동일 스토리지 내 메타데이터 수준 저장
복구 원본 손상 시 자동 삭제/반영 가능 원본 손상 시 백업본으로 복구 특정 시점으로 롤백 가능(빠름)
위험성 실수 or 랜섬웨어 전파 가능 장기 보관, 복구 목적에 강함 하드웨어 문제 발생 시 함께 손실 가능
예시 Google Drive, Dropbox 등 Acronis, Veeme, ArcServe 등 LVM, VMware/Proxmox Snapshot  등

 

- 동기화 : 두 위치 간 파일을 동일하게 만들어 A와 B 저장소의 상태를 동일하게 만듬.

RAID 구성의 RAID 1(Mirroring) 과 동일한 의미.

 

- 백업 : 특정시점의 A 저장소의 파일을 B 저장소에 복사하여 따로 저장.

 

- 스냅샷 : 특정시점의 A 저장소의 시스템 상태를 그대로 보존하는 방식.

 

스냅샷?

 

솔직히 이해가 잘 안가서 찾아본 내용.

특정 시점을 저장한다는 말은 알겠지만, 예전에는 저장되어있지만 현재는 사라진 파일을 어떻게 복구하는지

그런것들이 궁금해서 더 찾아보았다.

 

A 시점의 스냅샷을 찍은 뒤, 시간이 지나 B 시점에서 A 시점의 스냅샷으로 복구한다면,

A 시점의 스냅샷과 현재 B 시점의 시스템 상태를 비교하고, 달라진 부분을 그대로 A 시점의 것으로..

라는 등의 뭐시깽이들이 적혀있었는데, 솔직히 이해가 안되서 계속 파고들어봤다.

 

일단, 스냅샷을 알기위해서는 스토리지에 대해 알아야한다.

운영체제에서 나오는 내용인데,

디스크의 모든 데이터들은 0과 1로 되어있다.

그리고 스냅샷은 A시점에서 기록된 0과 1을 처음부터 끝까지 순서를 저장해 두는것.

 

예시를 들어보자.

 

먼저 2025. 04. 15. 09:00 에 스냅샷을 찍었고, 이 기준을 A 시점이라고 해보자.

이 A 시점에 생성된 스냅샷은 용량이 거의 0에 가깝다.

왜냐하면, 스냅샷은 그 시점 상태를 그대로 보존하는 것이기 때문에

저 시점에는 굳이 추가로 저장해야할 데이터라던가 그런것들이 없기 때문.

 

그리고 현재 2025. 04. 17. 09:00 이므로 A 시점에 비해 이틀이라는 시간이 지났다.

다만, A 시점에 비해 파일을 수정/생성/삭제 등의 여러 작업들을 진행했으므로

A 시점과는 완전히 동일하다고 할 수 없다.

 

이렇게 된 경우, A 시점에서 만들었던 스냅샷을 보게되면 용량이 늘어나있을텐데,

이 늘어난 용량이 A 시점 이후에 수정/생성/삭제 등을 하며 변화된 용량을 의미한다.

 

추가로 스냅샷을 만들게 되면, A시점에서 저장한 스냅샷 이후에 변경된 부분만을 저장한다.

그런식으로 스냅샷이 추가되며, 이런 내용들을 통해 복구가 빨리 된다.

 

  A 시점 B 시점
A 시점 스냅샷의 용량 거의 0에 가까움. 늘어남(A시점과 달라진 파일들 만)

 

그렇다면 A 시점으로 복구(롤백)를 하고싶다, 라고 했을때 해당 스냅샷에 기록된 내용을 확인하면
어떤게 어떤식으로 변화했는지를 확인할수가 있다.

 

조금 더 깊게 다시 예시를 들어보자.

A 시점에 test.txt라는 파일이 존재했고, 5MB 정도의 파일이라고 가정해보자.

그리고 A시점부터 B시점 사이에 파일도 추가됬다고 가정해보자.

 

  파일 상태 변화 스냅샷이 차지하는 용량 변화
A 시점 스냅샷 생성(변경 없음) 0MB 이하(거의 없음)
- test.txt 수정(5MB->7MB) +5MB(기존 test.txt파일 내용 보존)
- new.docx 생성(20MB) +0MB(스냅샷에 없던 파일이므로 영향 없음)
- config.json 삭제(3MB) +3MB(config.json 상태 보존)
B 시점 - 총 용량 : 약 8MB(보존된 용량 증가)

 

즉, 스냅샷은 그 상태 그대로를 찍어둔 사진과도 같지만,

그 사진 뒤에 시간이 지날수록 어떤게 변화했다고 메모를 계속 추가하는 식

으로 이해하면될듯 하다.

 

그리고 스냅샷에는 두가지 방식이 있는데,

CoW(Copy on Write) 와 RoW(Redirect on Write) 방식이 있다.

해당 내용들은 운영체제에서 나오는 내용이나, 기억이 안나 다시 정리하자면,

 

CoW(Copy on Write) 방식

원본 데이터에 대한 메타데이터만 활용해 스냅샷을 남기는, 위에서 설명한 기본 방식

 

RoW(Redirect on Write) 방식

메타데이터를 활용해 스냅샷을 남기긴하지만, 수정할때 따로 다시 저장하는 방식.

 

ex.

CoW => test.txt 내 "Hello" 라는 단어를 "Goodbye"로 수정하는 경우,

test.txt 파일 내 "Hello" 라는 내용을 다른 위치에 복사 저장함.

이후 "Goodbye"라는 내용으로 수정되어 그 자리에 저장됨.

 

RoW => test.txt 내 "Hello" 라는 단어를 "Goodbye"로 수정하는 경우,

test.txt 파일은 그대로 두고, "Hello"가 아니라 "Goodbye"로 수정된 test.txt파일을

다른 위치에 새로 만들어낸다.


출처

https://leinoi.tistory.com/8

 

[ IT 용어 ] 스냅샷(Snapshot) 이란?

클라우드에서의 스냅샷 사용 방식 기업에서는 데이터 보호가 중요합니다. 그래서 IT관리자는 장애가 발생한 경우의 복구와 백업 시나리오를 염두해야합니다. 클라우드사용시에도 마찬가지인데

leinoi.tistory.com

https://leinoi.tistory.com/9

 

[ IT 용어 ] 스냅샷과 백업의 차이

스냅샷과 백업의 차이점 클라우드 서비스 사업자들은 데이터의 가용성과 무결성 유지를 내세웁니다. 그만큼 기업에서의 데이터 보호는 중요하기 때문입니다. 데이터 보호와 관련해 가장 많이

leinoi.tistory.com

https://ko.wikipedia.org/wiki/%EC%8A%A4%EB%83%85%EC%83%B7_(%EA%B8%B0%EC%96%B5_%EC%9E%A5%EC%B9%98)

 

스냅샷 (기억 장치) - 위키백과, 우리 모두의 백과사전

위키백과, 우리 모두의 백과사전. Btrfs 파일 시스템의 스냅샷의 예시. 스내퍼(snapper)로 관리되고 있다. 컴퓨터 파일 시스템에서 스냅샷(snapshot)은 과거의 한 때 존재하고 유지시킨 컴퓨터 파일과

ko.wikipedia.org