데이터 보관 및 백업을 위한 매우 저렴한 스토리지 서비스 Glacier

이재홍 http://www.pyrasis.com 2014.03.24 ~ 2014.06.30

Glacier(글래이셔)는 데이터 보관Archive 및 백업 전용 스토리지 서비스입니다. 요금이 매우 저렴하지만 보관된 파일을 꺼내려면 3~5시간이 걸리는 특징이 있습니다.

프리 티어에서 사용 불가
Glacier는 프리 티어에서 무료로 사용할 수 없습니다.

S3는 데이터 저장도 하고 HTTP 정적 웹사이트 호스팅도 하는 다기능 서비스입니다. 이에 반해 Glacier는 대용량 데이터 저장에만 특화된 서비스입니다. 사용 요금도 1GB당 0.01 USB(약 10원)로 매우 저렴합니다.

Glacier는 자주 사용하지 않고 용량이 매우 큰 데이터를 저장하는데 적합합니다.

  • 압축하지 않은 고해상도 동영상의 원본 데이터
  • 몇 년치 이메일 데이터
  • 의료, 법무, 금융 및 재무 기록
  • 연구 및 과학 데이터(제약, 바이오 등 분석 데이터)
  • 오래된 디지털 콘텐츠(웹사이트, 소스 코드, 게임 등)

기존에는 이러한 데이터를 마그네틱 테이프에 저장했습니다. 마그네틱 테이프는 아직도 보관 및 백업 용도로 널리 쓰이고 있습니다. 하지만 테이프 스토리지는 열과 습기에 약하기 때문에 항온, 항습 시설이 필요합니다. 따라서 설비 비용도 많이 들고, 전기 요금과 전문 인력 등 운영비도 많이 듭니다. 또한, 내구성이 약하고 기술 표준이 바뀌기 때문에 주기적으로 새 규격의 테이프에 복제를 해야 합니다.

자주 찾아보지 않고, 안정적인 보관을 원한다면 Glacier는 훌륭한 대안입니다. Glacier는 설비도 필요 없고, 미디어 구입 비용도 없습니다. 데이터를 여러 시설, 여러 장치에 중복해서 저장하기 때문에 연평균 99.999999999%의 내구성을 제공합니다. 따라서 사용한 용량에 대해서만 요금을 지불하면 되기 때문에 데이터 보관 및 백업 시스템 구축에 드는 시간과 비용을 절감할 수 있습니다.

Glacier는 AWS의 다른 리소스와 연동할 수 있습니다. S3에서 수명 주기Lifecycle 규칙을 통해 데이터를 Glacier로 이전할 수 있고, IAM을 이용하여 데이터에 대한 접근제어를 설정할 수 있습니다. 그리고 AWS Import/Export로 인터넷을 통하지 않고 데이터를 저장할 수도 있습니다.


그림 21-1 Glacier에 데이터 저장

Glacier 클라이언트, Java SDK, .NET SDK를 통해서 데이터를 저장하고, 꺼내올 수 있습니다.

AWS Import/Export
AWS Import/Export 서비스는 대용량의 데이터가 담긴 디스크 등의 스토리지를 AWS에 택배(UPS, DHL 등)로 보내어 업로드하는 서비스입니다. 반대로 빈 디스크를 택배로 보내어 AWS에 저장된 데이터를 받을 수도 있습니다.

자세한 내용은 다음 링크를 참조하기 바랍니다.
http://aws.amazon.com/ko/importexport/

다음은 Glacier 기본 개념입니다.

  • 아카이브(Archive): Glacier에 데이터가 저장되는 최소 단위입니다. 파일이 Glacier 볼트에 저장된 상태를 아카이브라 부릅니다.
    • 객체 하나의 크기는 1바이트부터 40테라바이트(TB)까지입니다.
    • 아카이브를 업로드하고 삭제할 수 있지만 수정하거나 덮어쓸 수는 없습니다.
  • 볼트(Vault): Glacier에서 생성할 수 있는 최상위 폴더(디렉터리)입니다. 볼트는 리전별로 생성해야 하며 각 리전별로 최대 1,000개까지 생성할 수 있습니다.
    • 볼트 안에 아카이브가 저장됩니다.
    • 폴더(디렉터리) 생성 가능이 가능합니다.
    • 저장 가능한 아카이브의 개수는 무제한입니다.
    • 저장 가능한 용량은 무제한입니다.
  • 볼트 인벤토리(Vault Inventory): 볼트에 저장된 아카이브의 목록과 각 아카이브의 크기, 생성 날짜, 아카이브 설명 등의 정보를 뜻합니다. 24시간에 한 번씩 업데이트됩니다.
  • 반출(Retrieval): 볼트 인벤토리를 가져오는 작업과 아카이브를 다운로드하기 위해 준비하는 작업을 뜻합니다. 반출 작업은 3~5시간 정도 소요되고, 아카이브 반출 작업이 완료된 후 24시간 동안 아카이브를 다운로드할 수 있습니다.
  • 내구성: 1년 기준으로 99.999999999% 내구성을 가지고 있습니다. 내구성은 데이터가 유실되지 않는 것을 뜻합니다.
  • 요금: 저장 용량, 데이터 전송, 업로드 및 반출 요청 개수, 반출 요청 용량으로 책정됩니다. 그리고 업로드한지 3개월 이내에 아카이브를 삭제할 때도 요금을 지불해야 합니다. 자세한 요금은 AWS 사이트의 요금표(http://aws.amazon.com/ko/glacier/pricing/)를 참조하기 바랍니다.
    • 매달 저장된 용량의 5%는 무료로 반출 작업을 요청할 수 있습니다

그림 21-2는 Glacier에 파일을 저장한 뒤 다운로드하는 과정입니다. 대용량의 데이터를 값싼 요금으로 저장할 수 있지만 그만큼 제약이 있습니다. 한 번 저장한 파일을 꺼내오려면 볼트 인벤토리 반출 요청을 하여 3~5시간 뒤에 아카이브 목록을 확인하고, 다운로드하고 싶은 아카이브(파일)에 대해 반출 요청을 하여 3~5시간 뒤에 아카이브를 다운로드해야 합니다.


그림 21-2 Glacier에서 파일 저장, 반출, 다운로드 과정

검색과 반출
Glacier에서 파일 목록을 가져오고, 파일을 다운로드할 수 있도록 준비하는 작업을 Retrieval이라고 합니다. AWS 한국어 웹사이트에서는 Glacier의 Retrieval을 검색이라고 번역했지만 이 책에서는 Glacier의 특성에 맞게 반출로 사용하겠습니다.

Glacier에서 파일을 볼트(Vault)에 저장합니다(볼트는 금고라는 뜻을 가지고 있습니다). 그리고 볼트의 데이터는 비용이 저렴한 스토리지에 저장됩니다. 파일을 다운로드하려면 저렴한 스토리지에서 인터넷에 연결된 서버로 데이터를 가져오는 작업을 해야 합니다. 마치 이 작업은 사설 금고에서 물건 반출 신청을 하고, 금고에서 물건을 꺼내오는 작업과 비슷합니다. 그래서 검색보다는 반출이라는 단어를 사용하기로 했습니다.


저작권 안내

이 웹사이트에 게시된 모든 글의 무단 복제 및 도용을 금지합니다.
  • 블로그, 게시판 등에 퍼가는 것을 금지합니다.
  • 비공개 포스트에 퍼가는 것을 금지합니다.
  • 글 내용, 그림을 발췌 및 요약하는 것을 금지합니다.
  • 링크 및 SNS 공유는 허용합니다.