메뉴
Amazon Simple Storage Service
개발자 안내서 (API 버전 2006-03-01)

스토리지 클래스

Amazon S3의 각 객체에는 연결된 스토리지 클래스가 있습니다. 예를 들어, 버킷의 모든 객체를 나열하면 콘솔은 나열된 모든 객체의 스토리지 클래스를 표시합니다.

Amazon S3는 저장된 객체에 대해 다음 스토리지 클래스를 제공합니다. 사용 사례 시나리오 및 성능 액세스 요구 사항에 따라 스토리지 클래스를 선택합니다. 모든 스토리지 클래스는 내구성이 뛰어납니다.

자주 액세스하는 객체를 위한 스토리지 클래스

성능에 민감한 사용 사례(밀리초 액세스 시간을 필요로 하는 사례)와 자주 액세스되는 데이터를 위해 Amazon S3는 다음과 같은 스토리지 클래스를 제공합니다.

  • STANDARD – 기본 스토리지 클래스입니다. 객체를 업로드할 때 스토리지 클래스를 지정하지 않으면 Amazon S3가 STANDARD 스토리지 클래스를 할당합니다.

     

  • REDUCED_REDUNDANCY – Reduced Redundancy Storage(RRS) 스토리지 클래스는 STANDARD 스토리지 클래스보다 더 적은 중복성으로 저장될 수 있는 중요하지 않고 재현 가능한 데이터를 위해 설계되었습니다.

    중요

    이 스토리지 클래스는 사용하지 않는 것이 좋습니다. STANDARD 스토리지 클래스는 비용 대비 효과가 더 좋습니다.

    내구성 측면에서 RRS 객체는 객체의 연평균 예측 손실율이 0.01%입니다. RRS 객체가 손실되었는데 그 객체에 대해 요청한 경우 Amazon S3가 405 오류를 반환합니다.

자주 액세스하지 않는 객체를 위한 스토리지 클래스

STANDARD_IAONEZONE_IA 스토리지 클래스는 수명이 길고 자주 액세스되지 않는 데이터를 위해 설계되었습니다. (IA는 Infrequent Access(빈번하지 않은 액세스)의 약어입니다.) STANDARD_IA 및 ONEZONE_IA 객체는 밀리초 액세스에 사용 가능합니다(STANDARD 스토리지 클래스와 유사함). Amazon S3는 이들 객체에 대해 검색 요금을 부과하므로 이들 객체는 자주 액세스되지 않는 데이터에 가장 적합합니다. 요금 정보는 Amazon S3 요금을 참조하십시오.

예를 들어, 다음의 경우에 STANDARD_IAONEZONE_IA 스토리지 클래스를 선택할 수 있을 것입니다.

  • 백업을 저장하는 경우.

  • 자주 액세스되지는 않지만 그래도 밀리초 액세스가 필요한 오래된 데이터의 경우. 예를 들어, 데이터를 업로드할 때 STANDARD 스토리지 클래스를 선택하고 수명 주기 구성을 통해 Amazon S3가 객체들을 STANDARD_IA 또는 ONEZONE_IA 클래스로 전환하게 할 수 있을 것입니다. 수명 주기 관리에 대한 자세한 내용은 객체 수명 주기 관리를 참조하십시오.

참고

STANDARD_IAONEZONE_IA 스토리지 클래스는 사용자가 30일 이상 저장하려고 하는 128KB 이상의 객체들에 적합합니다. 객체가 128KB 미만이더라도 Amazon S3는 128KB에 대한 요금을 부과합니다. 최소 보존 기간인 30일 이전에 객체를 삭제하더라도 30일 요금이 부과됩니다. 요금 정보는 Amazon S3 요금을 참조하십시오.

이들 스토리지 클래스는 다음과 같은 차이가 있습니다.

  • STANDARD_IA – Amazon S3가 객체 데이터를 지리적으로 분리된 여러 개의 가용 영역에 중복되게 저장합니다(STANDARD 스토리지 클래스와 유사). STANDARD_IA 객체는 가용 영역의 손실에 대한 복원력이 있습니다. 이 스토리지 클래스는 ONEZONE_IA 클래스보다 더 높은 가용성, 내구성 및 복원성을 제공합니다.

     

  • ONEZONE_IA – Amazon S3가 객체 데이터를 하나의 가용 영역에만 저장하므로 STANDARD_IA보다 더 저렴합니다. 그러나 데이터가 지진이나 홍수와 같은 재해에 의한 가용 영역의 물리적 손실에 대해 복원력이 없습니다. ONEZONE_IA 스토리지 클래스는 STANDARD_IA만큼 내구성이 있지만 가용성과 복원성은 더 낮습니다. 스토리지 클래스의 내구성과 가용성을 비교하려면 이 단원 끝부분의 내구성 및 가용성 표를 참조하십시오. 요금에 대해서는 Amazon S3 요금을 참조하십시오.

다음과 같이 하는 것이 좋습니다.

  • STANDARD_IA – 기본 데이터나 다시 생성할 수 없는 데이터의 사본에만 사용하십시오.

  • ONEZONE_IA – 가용 영역에 장애가 발생할 경우 그 데이터를 다시 생성할 수 있을 때, 그리고 교차 리전 복제(CRR)를 설정할 때 객체 복제본에 사용하십시오.

GLACIER 스토리지 클래스

GLACIER 스토리지 클래스는 데이터 액세스가 잦지 않은 데이터의 보관에 적합합니다. 보관된 객체에는 실시간으로 액세스할 수 없습니다. 이 객체에 액세스하려면 먼저 객체를 복원해야 합니다. 자세한 내용은 보관된 객체의 복원 단원을 참조하십시오. 이 스토리지 클래스는 STANDARD 스토리지 클래스와 동일한 내구성과 복원성을 제공합니다.

중요

GLACIER 스토리지 클래스를 선택하면 Amazon S3는 저비용의 Amazon Glacier 서비스를 이용하여 객체를 저장합니다. 객체가 Amazon Glacier에 저장되어 있지만 이들은 여전히 사용자가 Amazon S3에서 관리하는 Amazon S3 객체이며, 사용자가 Amazon Glacier를 통해 직접 액세스할 수는 없습니다.

GLACIER 스토리지 클래스에 대한 다음 내용에 유의하십시오.

  • 객체를 생성할 때 GLACIER를 스토리지 클래스로 지정할 수 없습니다. 먼저 ...을 스토리지 클래스로 사용하여 객체를 업로드하여 GLACIER 객체를 생성합니다. 그런 다음 수명 주기 관리를 사용하여 이러한 객체를 GLACIER 스토리지 클래스로 이전합니다. 자세한 내용은 객체 수명 주기 관리 단원을 참조하십시오.

     

  • GLACIER 객체에 액세스하려면 먼저 객체를 복원해야 합니다(STANDARD, RRS, STANDARD_IA 및 ONEZONE_IA 객체에는 언제든지 액세스 가능). 자세한 내용은 GLACIER 스토리지 클래스로의 전환(객체 보관) 단원을 참조하십시오.

Amazon Glacier 서비스에 대한 자세한 내용은 Amazon Glacier 개발자 안내서 가이드를 참조하십시오.

스토리지 클래스: 내구성과 가용성의 비교

다음 표에는 각 스토리지 클래스에서 제공하는 내구성과 가용성이 요약되어 있습니다.

스토리지 클래스 내구성(설계상) 가용성(설계상) 기타 고려 사항

STANDARD

99.999999999%

99.99%

없음

STANDARD_IA

99.999999999%

99.9%

STANDARD_IA 객체의 경우 검색 요금이 부과됩니다. 이 클래스는 자주 액세스되지 않는 데이터에 가장 적합합니다. 요금 정보는 Amazon S3 요금을 참조하십시오.

ONEZONE_IA

99.999999999%

99.5%

가용 영역의 손실에 대한 복원력이 없습니다.

GLACIER

99.999999999%

99.99%(객체 복원 후)

GLACIER 객체에는 실시간으로 액세스할 수 없습니다. 이 객체에 액세스하려면 먼저 보관된 객체를 복원해야 합니다. 자세한 내용은 보관된 객체의 복원 단원을 참조하십시오.

RRS

99.99%

99.99%

없음

ONEZONE_IA를 제외한 모든 스토리지 클래스는 한 가용 영역에서의 데이터 완전 손실과 다른 가용 영역에서의 부분 손실에 대해 동시 복원력을 갖도록 설계되어 있습니다.

애플리케이션 시나리오의 성능 요구 사항과 더불어, 가격을 고려하십시오. 스토리지 클래스의 요금에 대해서는 Amazon S3 요금을 참조하십시오.

객체의 스토리지 클래스 설정

Amazon S3 API는 객체의 스토리지 클래스에 대해 다음과 같은 설정(또는 업데이트)을 지원합니다.

  • 새 객체를 생성할 때 그 객체의 스토리지 클래스를 지정할 수 있습니다. 예를 들어, PUT Object, POST Object멀티파트 업로드 시작 API를 사용하여 객체를 생성할 때, x-amz-storage-class 요청 헤더를 추가하여 스토리지 클래스를 지정하십시오. 이 헤더를 추가하지 않으면 Amazon S3는 기본 스토리지 클래스인 STANDARD를 사용합니다.

     

  • 또한 PUT Object - Copy API를 사용하여 이미 Amazon S3에 저장되어 있는 객체를 복사함으로써 그 객체의 스토리지 클래스를 변경할 수도 있습니다. 그 객체를 동일한 키 이름으로 동일한 버킷에 복사한 후 다음과 같이 요청 헤더를 지정하십시오.

    • x-amz-metadata-directive 헤더를 COPY로 설정합니다.

    • x-amz-storage-class를 사용하려는 스토리지 클래스로 설정합니다.

    버전 관리를 사용하는 버킷에서는 특정 객체 버전의 스토리지 클래스를 변경할 수 없습니다. 객체를 복사할 때 Amazon S3에서는 여기에 새 버전 ID를 부여합니다.

     

  • 버킷에 수명 주기 구성을 추가하여 Amazon S3가 객체의 스토리지 클래스를 변경하도록 유도할 수 있습니다. 자세한 내용은 객체 수명 주기 관리 단원을 참조하십시오.

Amazon S3 콘솔이나 AWS SDK 또는 AWS Command Line Interface(AWS CLI)를 이용해 객체 스토리지 클래스를 생성하고 업데이트할 수 있습니다. 이들 모두는 Amazon S3 API를 사용하여 Amazon S3에 요청을 보냅니다.