1992년 Dave Hitz, James Lau, Michael Malcolm은 전용 NFS 파일 서버를 만들기 위해 Network Appliance를 설립했다. Unix 파일 시스템의 야간 백업은 몇 시간의 복사 또는 테이프 작업을 의미했고, 충돌 후에는 일관성 검사가 다운타임 자체만큼 오래 걸릴 수 있었다.

그들의 1994년 USENIX 논문은 WAFL을 소개했다. 이 파일 시스템은 어디에나 쓰고 이전 루트를 그대로 유지하므로, 스냅샷은 포인터를 복사하여 순식간에 생성되는 읽기 전용 클론이다. 기록 시 복사(copy-on-write) 방식 덕분에 스냅샷은 블록이 달라질 때만 공간을 소비한다. WAFL은 최대 20개의 예약된 스냅샷을 온라인으로 유지하고 .snapshot 디렉터리를 통해 노출하여 사용자가 삭제된 파일을 스스로 복구할 수 있게 한다.

같은 메커니즘은 비정상 종료 후의 긴 일관성 검사를 없애주었고, 이는 이 어플라이언스의 핵심 판매 포인트였다. NetApp의 Snapshot 기능은 업계 표준이 되었다. 회사는 1995년에 IPO했고, 매출 10억 달러를 넘어서며 선도적인 NAS 공급업체가 되었다.

절대 덮어쓰지 않는다. 스냅샷은 포인터다

스냅샷은 포인터 복사이므로 생성에 몇 시간이 아니라 밀리초가 걸린다.

기록 시 복사 방식 덕분에 데이터가 변경되기 전까지 이전 버전은 거의 디스크 공간을 차지하지 않는다.

사용자는 .snapshot 디렉터리를 통해 자신이 삭제한 파일을 스스로 복구한다.

충돌 후 빠른 재시작은 파일 서버의 가장 큰 고통을 없애주었다.

두려워하는 것(백업, 실행 취소, 재시작)이 비용이 많이 든다면 쓰기 경로를 바꿔라. 모든 변경이 구조적으로 버전 관리된다면, 복구 산출물은 이미 가지고 있는 포인터다.

스냅샷과 그 후손들(SnapMirror, FlexClone, 중복 제거)은 30년 동안 NetApp 제품의 핵심으로 남았다. 1994년 논문은 스토리지 시스템의 고전이며, ZFS와 Btrfs를 포함한 이후의 모든 주요 파일 시스템이 그 기록 시 복사 스냅샷 아이디어를 차용했다.

근거 확인하기

출처

  1. File System Design for an NFS File Server Appliance (full text) USENIX Winter 1994 · usenix.org
  2. File System Design for an NFS File Server Appliance (conference record) USENIX · usenix.org
  3. Hitz: NetApp market growth hinges on cloud, data management TechTarget · techtarget.com ·