View a markdown version of this page

POST Object restore - Amazon Simple Storage Service

POST Object restore

설명

이 작업은 다음과 같은 유형의 요청을 수행합니다.

  • select - 아카이브 객체에서 Select 쿼리를 수행합니다.

  • restore an archive - 아카이브된 객체를 복원합니다.

이 작업을 사용하려면 s3:RestoreObjects3:GetObject 작업을 수행할 수 있는 권한이 있어야 합니다. 버킷 소유자는 기본적으로 이 권한을 보유하며 다른 사용자에게 이 권한을 부여할 수 있습니다. 권한에 대한 자세한 내용은 Amazon Simple Storage Service 사용 설명서버킷 하위 리소스 작업에 관련된 권한Amazon S3 리소스에 대한 액세스 권한 관리를 참조하세요.

Select 요청으로 아카이브 쿼리

Select 요청 유형을 사용하여 아카이브된 객체에서 SQL 쿼리를 수행할 수 있습니다. Select 요청으로 쿼리되는 아카이브된 객체는 압축되지 않은, 쉼표로 분리된 값(CSV) 파일 형식이어야 합니다. 데이터를 더 핫한 Amazon S3 계층으로 복원할 필요 없이 아카이브된 데이터에 대해 쿼리 및 사용자 지정 분석을 실행할 수 있습니다. Select 요청에 대한 개요는 Amazon Simple Storage Service 사용 설명서아키이브된 객체 쿼리를 참조하세요.

Select 요청을 실행할 때 다음을 수행합니다.

  • Select 쿼리의 출력 위치를 정의합니다. 이 위치는 쿼리하는 아카이브된 객체가 포함된 버킷과 동일한 AWS 리전의 Amazon S3 버킷이어야 합니다. 작업을 시작하는 AWS 계정에는 S3 버킷에 대한 쓰기 권한이 있어야 합니다. 버킷에 저장되는 출력 객체의 스토리지 클래스와 암호화를 지정할 수 있습니다. 자세한 내용은 Amazon Simple Storage Service 사용 설명서에서 아카이브된 객체 쿼리를 참조하세요.

    요청 본문의 S3 구조에 대한 자세한 내용은 다음을 참조하세요.

  • 요청 본문의 SelectParameters 구조에서 쿼리의 복원 SELECT 유형에 대한 SQL 표현식을 정의합니다. 예를 들어 다음 예제와 같은 표현식을 사용할 수 있습니다.

    • 다음 표현식은 지정한 객체에서 모든 레코드를 반환합니다.

      SELECT * FROM Object
    • 객체에 저장된 데이터에 헤더를 사용하지 않는다고 가정하면 위치 헤더를 사용하여 열을 지정할 수 있습니다.

      SELECT s._1, s._2 FROM Object s WHERE s._3 > 100
    • 헤더가 있고 요청 본문의 CSV에서 fileHeaderInfoUSE로 설정한 경우, 쿼리에서 헤더를 지정할 수 있습니다. (fileHeaderInfo 필드를 IGNORE로 설정한 경우, 쿼리를 위해 첫 번째 행을 건너뜁니다.) 서수 위치와 헤더 열 이름은 혼용할 수 없습니다.

      SELECT s.Id, s.FirstName, s.SSN FROM S3Object s

Amazon Glacier Select 복원과 함께 SQL을 사용하는 방법에 대한 자세한 내용은 Amazon Simple Storage Service 사용 설명서Amazon S3 Select 및 Amazon Glacier Select용 SQL 참조를 참조하세요.

Select 요청을 실행할 때 다음 작업도 수행할 수 있습니다.

  • 쿼리를 신속히 처리하기 위해 Expedited 계층을 지정합니다. 계층에 대한 자세한 내용은 이 주제 뒷부분의 '아카이브 복원'을 참조하세요.

  • 쿼리되는 입력 객체와 CSV로 인코딩된 쿼리 결과 직렬화의 데이터 직렬화 형식에 대한 세부 정보를 지정합니다.

다음은 Select 기능에 대해 추가로 알아야 할 중요한 사항입니다.

  • 출력 결과는 새 Amazon S3 객체입니다. 아카이브 검색과 달리 객체는 수동으로 또는 수명 주기 정책을 통해 명시적으로 삭제될 때까지 저장됩니다.

  • 동일한 Amazon S3 객체에 둘 이상의 Select 요청을 실행할 수 있습니다. Amazon S3는 중복 요청을 제거하지 않으므로 중복 요청을 실행하지 마세요.

  • Amazon S3는 객체가 이미 복원된 경우에도 Select 요청을 수락합니다. Select 요청은 오류 응답 409를 반환하지 않습니다.

아카이브 복원

GLACIER 및 DEEP_ARCHIVE 스토리지 클래스의 객체는 아카이브됩니다. 아카이브된 객체에 액세스하려면 먼저 복원 요청을 시작해야 합니다. 이 요청은 아카이브된 객체의 임시 복사본을 복원합니다. 복원 요청에서 복원하려는 객체 복사본의 복원 일수를 지정합니다. 지정된 기간이 경과하면 Amazon S3는 임시 복사본을 삭제하지만 객체는 해당 객체가 복원된 GLACIER 또는 DEEP_ARCHIVE 스토리지 클래스에 계속 아카이브됩니다.

특정 객체 버전을 복원하려면 버전 ID를 제공할 수 있습니다. 버전 ID를 제공하지 않으면 Amazon S3가 현재 버전을 복원합니다.

복원 작업을 완료하는 데 걸리는 시간은 객체가 복원되는 스토리지 클래스 및 지정된 데이터 액세스 계층에 따라 달라집니다.

아카이브된 객체를 복원할 때(또는 Select 요청을 사용할 때) 요청 본문의 Tier 요소에 다음 데이터 액세스 계층 옵션 중 하나를 지정할 수 있습니다.

  • Expedited - 신속 검색을 사용하면 가끔 발생하는 아카이브의 하위 집합에 대한 긴급 요청이 필요할 때 GLACIER 스토리지 클래스에 저장된 데이터에 신속하게 액세스할 수 있습니다. 매우 큰 아카이브된 객체(250MB+)를 제외한 모든 경우, 신속 검색을 사용하여 액세스된 데이터는 일반적으로 1~5분 안에 사용할 수 있게 됩니다. 프로비저닝된 용량을 통해 필요할 때 신속 검색에 대한 검색 용량이 보장됩니다. 신속 검색 및 프로비저닝된 용량은 DEEP_ARCHIVE 스토리지 클래스에 사용할 수 없습니다.

  • Standard - 표준 검색을 사용하면 몇 시간 내에 아카이브된 모든 객체에 액세스할 수 있습니다. 이는 검색 옵션을 지정하지 않은 GLACIER 및 DEEP_ARCHIVE 검색 요청에 대한 기본 옵션입니다. 표준 검색은 일반적으로 GLACIER 스토리지 클래스에서 3~5시간 이내에 완료되고 DEEP_ARCHIVE 스토리지 클래스에서 12시간 이내에 완료됩니다.

  • Bulk - 대량 검색은 Amazon Glacier의 가장 저렴한 검색 옵션으로, 페타바이트 단위의 대용량 데이터도 하루 만에 저렴하게 검색할 수 있습니다. 대량 검색은 일반적으로 GLACIER 스토리지 클래스에서 5~12시간 이내에 완료되고 DEEP_ARCHIVE 스토리지 클래스에서 48시간 이내에 완료됩니다.

Expedited 데이터 액세스를 위한 아카이브 검색 옵션 및 프로비저닝된 용량에 대한 자세한 내용은 Amazon Simple Storage Service 사용 설명서아카이브된 객체 복원을 참조하세요.

Amazon S3 복원 속도 업그레이드를 사용하여 복원이 진행되는 동안 복원 속도를 더 빠른 속도로 변경할 수 있습니다. 동일한 객체에 다른 복원 요청을 실행하면서 새 Tier 요청 요소를 설정하여 진행 중인 복원의 속도를 업그레이드합니다. 복원 티어를 업그레이드하라는 요청을 발행할 때는 진행 중인 복원이 사용하는 티어보다 빠른 티어를 선택해야 합니다. Days 요청 요소 등 다른 매개 변수는 변경하면 안 됩니다. 자세한 내용은 Amazon Simple Storage Service 사용 설명서진행 중인 복원 속도 업그레이드를 참조하세요.

객체 복원의 상태를 가져오려면 HEAD 요청을 전송할 수 있습니다. 작업은 응답에서 복원 상태에 대한 정보를 제공하는 x-amz-restore 헤더를 반환합니다. Amazon S3 이벤트 알림을 사용하여 복원이 시작되거나 완료되면 알림을 받을 수 있습니다. 자세한 내용은 Amazon Simple Storage Service 사용 설명서Amazon S3 이벤트 알림 구성을 참조하세요.

아카이브된 객체를 복원한 후 새 기간으로 요청을 다시 실행하여 복원 기간을 업데이트할 수 있습니다. Amazon S3는 현재 시점을 기준으로 복원 기간을 업데이트하고 요청에 대해서만 요금을 부과합니다. 데이터 전송 요금은 없습니다. Amazon S3가 객체에 대한 현재 복원 요청을 적극적으로 처리하는 경우에는 복원 기간을 업데이트할 수 없습니다.

버킷의 수명 주기 구성에 만료 작업이 포함된 규칙이 있는 경우 객체 만료는 복원 요청에서 지정한 수명을 재정의합니다. 예를 들어 10일간 객체 복사본을 복원했지만 객체가 3일 후에 만료되도록 예약된 경우 Amazon S3는 3일 후에 객체를 삭제합니다. 수명 주기 구성에 대한 자세한 내용은 Amazon Simple Storage Service 사용 설명서PutBucketLifecycleConfiguration객체 수명 주기 관리를 참조하세요.

요청

구문

POST /ObjectName?restore&versionId=VersionID HTTP/1.1 Host: BucketName.s3.amazonaws.com Date: date Authorization: authorization string (see 요청 인증(AWS 서명 버전 4)) Content-MD5: MD5 request body
참고

구문에는 요청 헤더가 일부만 나와 있습니다. 전체 목록은 이 주제 뒷부분의 '요청 헤더'를 참조하세요.

요청 파라미터

이 작업 구현에서는 요청 파라미터를 사용하지 않습니다.

요청 헤더

이름 설명 필수
Content-MD5

데이터의 Base64로 인코딩된 128비트 MD5 다이제스트입니다. 이 헤더를 메시지 무결성 검사로 사용하여 요청 본문이 전송 중에 손상되지 않았는지 확인해야 합니다. 자세한 내용은 RFC 1864를 참조하세요.

유형: 문자열

기본값: None

요청 요소

다음은 아카이브 복원을 위한 요청 본문의 XML 예제입니다.

<RestoreRequest> <Days>2</Days> <GlacierJobParameters> <Tier>Bulk</Tier> </GlacierJobParameters> </RestoreRequest>

다음 표에서는 요청 본문의 아카이브 복원을 위한 XML을 설명합니다.

이름 설명 필수
RestoreRequest

복원 정보를 위한 컨테이너입니다.

유형: 컨테이너

Days

복원된(활성) 복사본의 수명입니다. Amazon Glacier에서 객체를 복원할 수 있는 최소 일수는 1입니다. 객체 복사본이 지정된 수명에 도달하면 Amazon S3는 버킷에서 해당 복사본을 제거합니다. 아카이브를 복원하는 경우 이 요소는 필수입니다.

이 요소를 SELECT 요청 유형과 함께 사용하지 마세요.

유형: 양의 정수

상위 항목: RestoreRequest

아카이브를 복원하는 경우, 예
GlacierJobParameters

S3 Glacier 스토리지 클래스 작업 파라미터를 위한 컨테이너입니다.

이 요소를 SELECT 요청 유형과 함께 사용하지 마세요.

유형: 컨테이너

상위 항목: RestoreRequest

아니요
Tier

아카이브를 복원할 때 사용할 데이터 액세스 계층입니다. Standard가 기본값입니다.

형식: 열거형

유효한 값: Expedited | Standard | Bulk

상위 항목: GlacierJobParameters

아니요

다음 XML은 아카이브된 객체에 대한 Select 쿼리의 요청 본문입니다.

<RestoreRequest> <Type>SELECT</Type> <Tier>Expedited</Tier> <Description>Job description</Description> <SelectParameters> <Expression>Select * from Object</Expression> <ExpressionType>SQL</ExpressionType> <InputSerialization> <CSV> <FileHeaderInfo>IGNORE</FileHeaderInfo> <RecordDelimiter>\n</RecordDelimiter> <FieldDelimiter>,</FieldDelimiter> <QuoteCharacter>"</QuoteCharacter> <QuoteEscapeCharacter>"</QuoteEscapeCharacter> <Comments>#</Comments> </CSV> </InputSerialization> <OutputSerialization> <CSV> <QuoteFields>ASNEEDED</QuoteFields> <RecordDelimiter>\n</RecordDelimiter> <FieldDelimiter>,</FieldDelimiter> <QuoteCharacter>"</QuoteCharacter> <QuoteEscapeCharacter>"</QuoteEscapeCharacter> </CSV> </OutputSerialization> </SelectParameters> <OutputLocation> <S3> <BucketName>Name of bucket</BucketName> <Prefix>Key prefix</Prefix> <CannedACL>Canned ACL string</CannedACL> <AccessControlList> <Grantee> <Type>Grantee Type</Type> <ID>Grantee identifier</ID> <URI>Grantee URI</URI> <Permission>Granted permission</Permission> <DisplayNmae>Display Name</DisplayName> <EmailAddress>email</EmailAddress> </Grantee> </AccessControlList> <Encryption> <EncryptionType>Encryption type</EncryptionType> <KMSKeyId>KMS Key ID</KMSKeyId> <KMSContext>Base64-encoded JSON<KMSContext> </Encryption> <UserMetadata> <MetadataEntry> <Name>Key</Name> <Value>Value</Value> </MetadataEntry> </UserMetadata> <Tagging> <TagSet> <Tag> <Key>Tag name</Key> <Value>Tag value</Value> </Tag> </TagSet> </Tagging> <StorageClass>Storage class</StorageClass> </S3> </OutputLocation> </RestoreRequest>

다음 표에서는 요청 본문의 SELECT 복원 유형을 위한 XML을 설명합니다.

이름 설명 필수
RestoreRequest

복원 정보를 위한 컨테이너입니다.

유형: 컨테이너

Tier

아카이브를 복원할 때 사용할 데이터 액세스 계층입니다. Standard가 기본값입니다.

형식: 열거형

유효한 값: Expedited | Standard | Bulk

상위 항목: RestoreRequest

아니요
Description

요청에 대한 설명입니다(선택 사항).

유형: 문자열

상위 항목: RestoreRequest

아니요
SelectParameters

Select 작업 요청에 대한 파라미터를 설명합니다.

유형: 컨테이너

상위 항목: RestoreRequest

요청 유형이 SELECT인 경우, 예
OutputLocation

Select 복원 요청의 결과를 수신할 위치를 설명합니다.

유형: Amazon S3용 컨테이너

상위 항목: RestoreRequest

요청 유형이 SELECT인 경우, 예
SelectParameters 컨테이너 요소에는 다음 요소가 포함되어 있습니다.
이름 설명 필수
Expression

SQL 표현식입니다. 예제:

  • 다음 SQL 표현식은 CSV 형식으로 저장된 객체에서 데이터의 첫 번째 열을 검색합니다.

    SELECT s._1 FROM Object s

  • 다음 SQL 표현식은 객체의 모든 것을 반환합니다.

    SELECT * FROM Object

유형: 문자열

상위 항목: SelectParameters

ExpressionType

표현식 유형을 식별합니다.

타입: 문자열

유효한 값: SQL

상위 항목: SelectParameters

InputSerialization

객체의 직렬화 형식을 설명합니다.

유형: CSV용 컨테이너

상위 항목: SelectParameters

OutputSerialization

선택 작업의 결과가 직렬화되는 방법을 설명합니다.

유형: CSV용 컨테이너

상위 항목: SelectParameters

InputSerialization 요소의 CSV 컨테이너 요소에는 다음 요소가 포함되어 있습니다.
이름 설명 필수
RecordDelimiter

입력에서 개별 레코드를 분리하는 데 사용되는 단일 문자입니다. 기본값 대신 임의의 구분 기호를 지정할 수 있습니다.

유형: 문자열

기본값: \n

상위 항목: CSV

아니요
FieldDelimiter

한 레코드 내에서 개별 필드를 분리하는 데 사용되는 단일 문자입니다. 임의의 구분 기호를 지정할 수 있습니다.

유형: 문자열

기본값: ,

상위 항목: CSV

아니요
QuoteCharacter

필드 구분 기호가 값의 일부인 경우 이스케이프에 사용되는 단일 문자입니다.

CSV 파일에서 이 예제를 생각해 보세요.

"a, b"

값을 따옴표로 묶으면 이 값은 단일 필드가 됩니다. 따옴표를 사용하지 않는 경우 쉼표는 필드 구분 기호입니다(이 경우 a 및 b라는 두 개의 개별 필드 값이 됨).

유형: 문자열

기본값: "

상위 항목: CSV

아니요
QuoteEscapeCharacter

이미 이스케이프된 값 내의 따옴표 문자를 이스케이프하는 데 사용되는 단일 문자입니다. 예를 들어 값 """ a , b """" a , b "로 구문 분석됩니다.

유형: 문자열

기본값: "

상위 항목: CSV

아니요
FileHeaderInfo

입력 데이터의 첫 번째 줄을 설명합니다. 이는 ENUM 값 중 하나입니다.

  • NONE: 첫 번째 줄이 헤더가 아닙니다.

  • IGNORE: 첫 번째 줄이 헤더이지만 헤더 값을 사용하여 표현식의 열을 나타낼 수 없습니다. 열 위치(예: _1, _2, ...)를 사용하여 열(SELECT s._1 FROM OBJECT s)을 나타낼 수 있습니다.

  • Use: 첫 번째 줄이 헤더이며 헤더 값을 사용하여 표현식(SELECT "name" FROM OBJECT)의 열을 식별할 수 있습니다.

형식: 열거형

유효한 값: NONE | USE | IGNORE

상위 항목: CSV

아니요
Comments

행의 시작에 존재할 경우, 해당 행을 무시해야 함을 나타내는 데 사용되는 단일 문자입니다. 주석 줄을 나타내는 문자를 지정할 수 있습니다.

유형: 문자열

상위 항목: CSV

아니요
CSV 컨테이너 요소(OutputSerialization 요소 내)에는 다음 요소가 포함되어 있습니다.
이름 설명 필수
QuoteFields

출력 필드에 따옴표를 사용할지 여부를 나타냅니다.

  • ALWAYS: 출력 필드에 항상 따옴표를 사용합니다.

  • ASNEEDED: 필요한 경우 출력 필드에 따옴표를 사용합니다.

형식: 열거형

유효한 값: ALWAYS | ASNEEDED

기본값: AsNeeded

상위 항목: CSV

아니요
RecordDelimiter

출력에서 개별 레코드를 분리하는 데 사용되는 단일 문자입니다. 기본값 대신 임의의 구분 기호를 지정할 수 있습니다.

유형: 문자열

기본값: \n

상위 항목: CSV

아니요
FieldDelimiter

한 레코드 내에서 개별 필드를 분리하는 데 사용되는 단일 문자입니다. 임의의 구분 기호를 지정할 수 있습니다.

유형: 문자열

기본값: ,

상위 항목: CSV

아니요
QuoteCharacter

필드 구분 기호가 값의 일부인 경우 이스케이프에 사용되는 단일 문자입니다. 예를 들어 값이 a, b인 경우 Amazon S3는 다음과 같이 이 필드 값을 따옴표로 묶습니다. " a , b ".

유형: 문자열

기본값: "

상위 항목: CSV

아니요
QuoteEscapeCharacter

이미 이스케이프된 값 내의 따옴표 문자를 이스케이프하는 데 사용되는 단일 문자입니다. 예를 들어 값이 " a , b "인 경우 Amazon S3는 다음과 같이 이 값을 따옴표로 묶습니다: """ a , b """.

유형: 문자열

상위 항목: CSV

아니요
S3 컨테이너 요소(OutputLocation 요소 내)에는 다음 요소가 포함되어 있습니다.
이름 설명 필수
AccessControlList

스테이징된 결과에 대한 액세스를 제어하는 권한의 목록입니다.

유형: 부여용 컨테이너

상위 항목: S3

아니요
BucketName

Select 복원 결과가 저장되는 S3 버킷의 이름입니다. 버킷은 입력 아카이브 객체를 포함하는 버킷과 동일한 AWS 리전에 있어야 합니다.

유형: 문자열

상위 항목: S3

CannedACL

Select 복원 결과에 적용되는 미리 준비된 액세스 제어 목록(ACL)입니다.

타입: 문자열

유효한 값: private | public-read | public-read-write | aws-exec-read | authenticated-read | bucket-owner-read | bucket-owner-full-control

상위 항목: S3

아니요
Encryption

저장된 결과에 대한 암호화 정보를 포함합니다.

유형: 암호화용 컨테이너

상위 항목: S3

아니요
Prefix

이 select 복원 결과 앞에 추가되는 접두사입니다. 접두사의 최대 길이는 512바이트입니다.

유형: 문자열

상위 항목: S3

StorageClass

Select 요청 결과를 저장하는 데 사용되는 스토리지 클래스입니다.

유형: 문자열

유효한 값: STANDARD | REDUCED_REDUNDANCY | STANDARD_IA | ONEZONE_IA

상위 항목: S3

아니요
Tagging

태그 정보를 위한 컨테이너입니다.

유형: 태그 구조

상위 항목: S3

아니요
UserMetadata

Select 복원 결과와 함께 저장할 메타데이터 목록을 포함합니다.

유형: MetadataEntry 구조

상위 항목: S3

아니요
피부여자 컨테이너 요소(AccessControlList 요소 내)에는 다음 요소가 포함되어 있습니다.
이름 설명 필수
DisplayName

피부여자의 표시 이름입니다.

유형: 문자열

상위 항목: Grantee

아니요
EmailAddress

피부여자의 이메일 주소입니다.

유형: 문자열

상위 항목: Grantee

아니요
ID

피부여자의 정식 사용자 ID입니다.

유형: 문자열

상위 항목: Grantee

아니요
Type

피부여자의 유형입니다.

유형: 문자열

상위 항목: Grantee

아니요
URI

피부여자 그룹의 URI입니다.

유형: 문자열

상위 항목: Grantee

아니요
Permission

부여된 권한입니다.

유형: 문자열

상위 항목: Grantee

아니요
Encryption 컨테이너 요소(S3 내)에는 다음 요소가 포함되어 있습니다.
이름 설명 필수
EncryptionType

작업 결과를 저장할 때 사용되는 서버 측 암호화 알고리즘입니다. 기본값은 암호화 없음입니다.

유형: 문자열

유효한 값 aws:kms | AES256

상위 항목: Encryption

아니요
KMSContext

선택 사항입니다. 암호화 유형이 aws:kms인 경우 이 값을 사용하여 select 복원 결과의 암호화 컨텍스트를 지정할 수 있습니다.

유형: 문자열

상위 항목: Encryption

아니요
KMSKeyId

개체 암호화에 사용할 AWS Key Management Service(AWS KMS) 키 ID입니다.

유형: 문자열

상위 항목: Encryption

아니요
TagSet 컨테이너 요소(Tagging 요소 내)에는 다음 요소가 포함되어 있습니다.
이름 설명 필수
Tag

태그를 포함합니다.

유형: 컨테이너

상위 항목: TagSet

아니요
태그 컨테이너 요소(TagSet 요소 내)에는 다음 요소가 포함되어 있습니다.
이름 설명 필수
Key

태그의 이름입니다.

유형: 문자열

상위 항목: Tag

아니요
Value

태그의 값입니다.

유형: 문자열

상위 항목: Tag

아니요
MetadataEntry 컨테이너 요소( UserMetadata 요소 내)에는 객체와 함께 저장할 다음과 같은 키-값 페어 요소가 포함되어 있습니다.
이름 설명 필수
MetadataKey

메타데이터 키입니다.

유형: 문자열

상위 항목:

아니요
MetadataEntry

메타데이터 값입니다.

유형: 문자열

상위 항목:

아니요

응답

작업이 성공하면 200 OK 또는 202 Accepted 상태 코드가 반환됩니다.

  • 객체 복사본이 이전에 복원되지 않은 경우 Amazon S3는 응답으로 202 Accepted를 반환합니다.

  • 객체 복사본이 이전에 복원된 경우 Amazon S3는 응답으로 200 OK를 반환합니다.

응답 헤더

이 작업의 구현에서는 대부분의 응답에 공통되는 응답 헤더만 사용합니다. 자세한 내용은 공통 응답 헤더를 참조하세요.

응답 요소

이 작업은 응답 요소를 반환하지 않습니다.

특수 오류

오류 코드 설명 HTTP 상태 코드 SOAP 오류 코드 접두사
RestoreAlreadyInProgress 객체 복원이 이미 진행 중입니다. (이 오류는 SELECT 유형 요청에는 적용되지 않습니다.) 409 충돌 클라이언트
GlacierExpeditedRetrievalNotAvailable S3 Glacier 스토리지 클래스 신속 검색을 현재 사용할 수 없습니다. 나중에 다시 시도해 주세요. (Expedited 요청을 처리할 용량이 충분하지 않은 경우 반환됩니다. 이 오류는 Expedited 검색에만 적용되며 Standard 또는 Bulk 검색에는 적용되지 않습니다.) 503 해당 사항 없음

예제

신속 검색 옵션을 사용하여 2일간 객체 복원

다음 복원 요청은 신속 검색 옵션을 사용하여 Amazon Glacier에서 photo1.jpg 객체의 복사본을 2일간 복원합니다.

POST /photo1.jpg?restore HTTP/1.1 Host: examplebucket.s3.amazonaws.com Date: Mon, 22 Oct 2012 01:49:52 GMT Authorization: authorization string Content-Length: content length <RestoreRequest> <Days>2</Days> <GlacierJobParameters> <Tier>Expedited</Tier> </GlacierJobParameters> </RestoreRequest>

examplebucket에 해당 객체의 복원된 복사본이 없는 경우 Amazon S3는 다음 202 Accepted 응답을 반환합니다.

HTTP/1.1 202 Accepted x-amz-id-2: GFihv3y6+kE7KG11GEkQhU7/2/cHR3Yb2fCb2S04nxI423Dqwg2XiQ0B/UZlzYQvPiBlZNRcovw= x-amz-request-id: 9F341CD3C4BA79E0 Date: Sat, 20 Oct 2012 23:54:05 GMT Content-Length: 0 Server: AmazonS3

해당 객체의 복사본이 이미 복원된 경우 Amazon S3는 200 OK 응답을 반환하고 복원된 복사본의 만료 시간만 업데이트합니다.

SELECT 요청을 사용하여 아카이브 쿼리

다음은 예제 Select 복원 요청입니다.

POST /object-one.csv?restore HTTP/1.1 Host: examplebucket.s3.amazonaws.com Date: Date: Sat, 20 Oct 2012 23:54:05 GMT Authorization: authorization string Content-Length: content length <RestoreRequest xmlns="http://s3.amazonaws.com/doc/2006-03-01/"> <Type>SELECT</Type> <Tier>Expedited</Tier> <Description>this is a description</Description> <SelectParameters> <InputSerialization> <CSV> <FileHeaderInfo>IGNORE</FileHeaderInfo> <Comments>#</Comments> <QuoteEscapeCharacter>"</QuoteEscapeCharacter> <RecordDelimiter>\n</RecordDelimiter> <FieldDelimiter>,</FieldDelimiter> <QuoteCharacter>"</QuoteCharacter> </CSV> </InputSerialization> <ExpressionType>SQL</ExpressionType> <Expression>select * from object</Expression> <OutputSerialization> <CSV> <QuoteFields>ALWAYS</QuoteFields> <QuoteEscapeCharacter>"</QuoteEscapeCharacter> <RecordDelimiter>\n</RecordDelimiter> <FieldDelimiter>\t</FieldDelimiter> <QuoteCharacter>\'</QuoteCharacter> </CSV> </OutputSerialization> </SelectParameters> <OutputLocation> <S3> <BucketName>example-output-bucket</BucketName> <Prefix>test-s3</Prefix> <AccessControlList> <Grant> <Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="AmazonCustomerByEmail"> <EmailAddress>jane-doe@example.com</EmailAddress> </Grantee> <Permission>FULL_CONTROL</Permission> </Grant> </AccessControlList> <UserMetadata> <MetadataEntry> <Name>test</Name> <Value>test-value</Value> </MetadataEntry> <MetadataEntry> <Name>other</Name> <Value>something else</Value> </MetadataEntry> </UserMetadata> <StorageClass>STANDARD</StorageClass> </S3> </OutputLocation> </RestoreRequest>

Amazon S3는 다음 202 Accepted 응답을 반환합니다.

HTTP/1.1 202 Accepted x-amz-id-2: GFihv3y6+kE7KG11GEkQhU7/2/cHR3Yb2fCb2S04nxI423Dqwg2XiQ0B/UZlzYQvPiBlZNRcovw= x-amz-request-id: 9F341CD3C4BA79E0 x-amz-restore-output-path: js-test-s3/qE8nk5M0XIj-LuZE2HXNw6empQm3znLkHlMWInRYPS-Orl2W0uj6LyYm-neTvm1-btz3wbBxfMhPykd3jkl-lvZE7w42/ Date: Sat, 20 Oct 2012 23:54:05 GMT Content-Length: 0 Server: AmazonS3

추가 정보