파트 업로드(PUT uploadID) - Amazon S3 Glacier

이 페이지는 Vaults를 사용하는 S3 Glacier 서비스의 기존 고객과 2012년의 원본을 사용할 수 있습니다. REST API

아카이브 스토리지 솔루션을 찾고 있다면 Amazon S3의 S3 Glacier 스토리지 클래스, S3 Glacier 인스턴트 검색, S3 Glacier 플렉서블 검색 S3 Glacier Deep Archive를 사용하는 것이 좋습니다. 이러한 스토리지 옵션에 대한 자세한 내용은 Amazon S3 사용 설명서의 S3 Glacier 스토리지 클래스S3 Glacier 스토리지 클래스를 사용한 장기 데이터 스토리지를 참조하십시오. 이러한 스토리지 클래스는 Amazon S3를 사용하며API, 모든 지역에서 사용할 수 있으며, Amazon S3 콘솔 내에서 관리할 수 있습니다. 스토리지 비용 분석, 스토리지 렌즈, 고급 선택적 암호화 기능 등과 같은 기능을 제공합니다.

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

파트 업로드(PUT uploadID)

설명

이번 멀티파트 업로드 작업에서는 아카이브 파트를 업로드합니다. 파트 업로드 요청에서 업로드되는 아카이브 어셈블의 바이트 범위를 지정하기 때문에 아카이브 파트는 순서에 상관없이 업로드할 수 있습니다. 또한 병렬 방식으로 파트를 업로드하는 것도 가능합니다. 멀티파트 업로드에서 업로드할 수 있는 파트 수는 최대 10,000개입니다.

멀티파트 업로드에 대한 자세한 내용은 대용량 아카이브를 여러 파트로 나누어 업로드(멀티파트 업로드) 단원을 참조하십시오.

다음 조건 중 한 가지라도 사실인 경우에는 Amazon S3 Glacier(S3 Glacier)가 사용자의 파트 업로드 요청을 거부합니다.

  • SHA256 트리-해시가 일치하지 않습니다: 파트 데이터가 전송 중 손상되지 않도록 하려면 파트의 SHA256 트리 해시를 계산하여 요청에 추가해야 합니다. S3 Glacier가 파트 데이터 수신과 함께 SHA256 트리 해시를 계산합니다. 이때 두 해시 값이 일치하지 않으면 작업이 오류로 중단됩니다. SHA256 트리-해시의 계산에 대한 자세한 내용은 체크섬 계산 단원을 참조하십시오.

  • SHA256 선형 해시가 일치하지 않습니다: 권한 부여에 필요하기 때문에 업로드된 전체 페이로드의 SHA256 선형 해시를 계산한 후 요청에 추가합니다. SHA256 선형 해시의 계산에 대한 자세한 내용은 체크섬 계산 단원을 참조하십시오.

  • 파트 크기가 일치하지 않습니다: 마지막 파트를 제외하고 각 파트의 크기는 해당하는 멀티파트 업로드 시작(POST multipart-uploads) 요청에서 지정한 크기와 반드시 일치해야 합니다. 마지막 파트의 크기는 지정된 크기보다 작거나 같아야 합니다.

    참고

    멀티파트 업로드 시작 요청에서 지정한 크기보다 작으면서 동시에 마지막 파트가 아닌 파트를 업로드하는 경우에도 파트 업로드 요청은 성공적으로 실행됩니다. 하지만 이후 멀티파트 업로드 완료 요청이 실행되지 않습니다.

  • 범위가 맞지 않습니다: 요청의 바이트 범위 값이 해당하는 시작 요청에서 지정한 파트 크기와 맞지 않습니다. 예를 들어 크기가 4194304바이트(4MB)인 파트를 지정한다면 유효한 파트 범위는 0~4194303바이트(4MB-1)와 4194304(4MB)~8388607바이트(8MB-1)입니다. 하지만 범위 값을 2~6MB로 설정하면 범위와 파트 크기가 맞지 않아 업로드가 오류로 중단되고 맙니다.

이 작업은 멱등성을 갖습니다. 따라서 동일한 파트를 여러 차례 업로드할 경우 가장 최근 요청에서 입력했던 데이터가 이전에 업로드했던 데이터를 덮어씁니다.

요청

이 HTTP PUT 요청을 멀티파트 업로드 시작 요청에서 반환된 업로드 ID의 URI로 전송합니다. S3 Glacier는 업로드 ID를 사용하여 파트 업로드와 특정 멀티파트 업로드를 연결합니다. 요청할 때는 파트 데이터의 SHA256 트리-해시(x-amz-SHA256-tree-hash 헤더), 전체 페이로드의 SHA256 선형 해시(x-amz-content-sha256 헤더), 바이트 범위(Content-Range 헤더), 그리고 바이트 단위의 파트 길이(Content-Length 헤더)가 포함되어야 합니다.

조건

PUT /AccountId/vaults/VaultName/multipart-uploads/uploadID HTTP/1.1 Host: glacier.Region.amazonaws.com Date: Date Authorization: SignatureValue Content-Range: ContentRange Content-Length: PayloadSize Content-Type: application/octet-stream x-amz-sha256-tree-hash: Checksum of the part x-amz-content-sha256: Checksum of the entire payload x-amz-glacier-version: 2012-06-01

참고

AccountId 값은 볼트를 소유한 계정의 AWS 계정 ID입니다. AWS 계정 ID 또는 선택적으로 하나의 '-'(하이픈)을 지정할 수 있습니다. 이 경우에 Amazon S3 Glacier는 요청 서명에 사용된 보안 인증 정보와 연결된 AWS 계정 ID를 사용합니다. 계정 ID를 사용하는 경우 ID에 하이픈('-')을 포함할 수 없습니다.

요청 파라미터

이 작업은 요청 파라미터를 사용하지 않습니다.

요청 헤더

이 작업은 모든 작업에 일반적인 요청 헤더 외에 다음 요청 헤더를 사용합니다. 일반적인 요청 헤더에 대한 자세한 내용은 공통 요청 헤더 단원을 참조하십시오.

이름 설명 필수
Content-Length

파트 길이(바이트)를 식별합니다.

유형: 문자열

기본값: None

제약 조건: 없음

아니요
Content-Range

이 파트에 업로드될 어셈블링된 아카이브의 바이트 범위를 식별합니다. S3 Glacier는 이 정보를 사용하여 아카이브를 적절한 순서로 어셈블링합니다. 이 헤더의 형식은 RFC 2616을 따릅니다. 헤더 예제를 들면 Content-Range:bytes 0-4194303/*과 같습니다.

유형: 문자열

기본값: None

제약 조건: 범위는 멀티파트 업로드를 시작할 때 지정한 파트 크기보다 클 수 없습니다.

x-amz-content-sha256

업로드되는 페이로드의 SHA256 체크섬(선형 해시)입니다. 이 값은 x-amz-sha256-tree-hash 헤더에서 지정하는 값과 다릅니다.

유형: 문자열

기본값: None

제약 조건: 없음

x-amz-sha256-tree-hash

업로드되는 데이터의 SHA256 트리-해시를 지정합니다. SHA256 트리-해시의 계산에 대한 자세한 내용은 체크섬 계산 단원을 참조하십시오.

유형: 문자열

기본값: None

제약 조건: 없음

요청 본문

요청 본문에는 업로드할 데이터가 포함됩니다.

응답

파트 업로드가 성공하면 S3 Glacier가 204 No Content 응답을 반환합니다.

조건

HTTP/1.1 204 No Content x-amzn-RequestId: x-amzn-RequestId Date: Date x-amz-sha256-tree-hash: ChecksumComputedByAmazonGlacier

응답 헤더

성공적인 응답에는 모든 작업에 일반적인 응답 헤더 외에 다음 응답 헤더가 포함됩니다. 일반적인 응답 헤더에 대한 자세한 내용은 공통 응답 헤더 단원을 참조하십시오.

이름 설명
x-amz-sha256-tree-hash

S3 Glacier가 업로드된 파트에 대해 계산한 SHA256 트리 해시입니다.

유형: 문자열

응답 본문

이 작업은 응답 본문을 반환하지 않습니다.

다음은 4MB 파트를 업로드하는 요청입니다. 이 요청은 아카이브에서 4MB 파트가 첫 번재 파트가 되도록 바이트 범위를 설정합니다.

예 요청

다음은 HTTP PUT 요청을 전송하여 4MB 파트를 업로드하는 예제입니다. 이 요청은 멀티파트 업로드 시작 요청에서 반환된 업로드 ID의 URI로 전송됩니다. Content-Range 헤더는 아카이브에서 첫 번째 4MB 데이터 파트를 업로드할 파트로 식별합니다.

PUT /-/vaults/examplevault/multipart-uploads/OW2fM5iVylEpFEMM9_HpKowRapC3vn5sSL39_396UW9zLFUWVrnRHaPjUJddQ5OxSHVXjYtrN47NBZ-khxOjyEXAMPLE HTTP/1.1 Host: glacier.us-west-2.amazonaws.com Date: Wed, 10 Feb 2017 12:00:00 GMT Content-Range:bytes 0-4194303/* x-amz-sha256-tree-hash:c06f7cd4baacb087002a99a5f48bf953 x-amz-content-sha256:726e392cb4d09924dbad1cc0ba3b00c3643d03d14cb4b823e2f041cff612a628 Content-Length: 4194304 Authorization: Authorization=AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-content-sha256;x-amz-date;x-amz-glacier-version,Signature=16b9a9e220a37e32f2e7be196b4ebb87120ca7974038210199ac5982e792cace

다음 파트를 업로드할 때도 절차는 같습니다. 하지만 업로드할 파트의 SHA256 트리-해시를 새롭게 계산해야 합니다. 또한 파트가 최종 어셈블리에서 포함되는 위치를 알 수 있도록 새로운 바이트 범위도 지정해야 합니다. 다음은 동일한 업로드 ID를 사용하여 다른 파트를 업로드하는 요청입니다. 이번 요청에서는 이전 요청과 4MB 파트 크기 다음에 이어지는 4MB 아카이브를 지정합니다.

PUT /-/vaults/examplevault/multipart-uploads/OW2fM5iVylEpFEMM9_HpKowRapC3vn5sSL39_396UW9zLFUWVrnRHaPjUJddQ5OxSHVXjYtrN47NBZ-khxOjyEXAMPLE HTTP/1.1 Host: glacier.us-west-2.amazonaws.com Date: Wed, 10 Feb 2017 12:00:00 GMT Content-Range:bytes 4194304-8388607/* Content-Length: 4194304 x-amz-sha256-tree-hash:f10e02544d651e2c3ce90a4307427493 x-amz-content-sha256:726e392cb4d09924dbad1cc0ba3b00c3643d03d14cb4b823e2f041cff612a628 x-amz-glacier-version: 2012-06-01 Authorization: Authorization=AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20120525/us-west-2/glacier/aws4_request, SignedHeaders=host;x-amz-content-sha256;x-amz-date;x-amz-glacier-version, Signature=16b9a9e220a37e32f2e7be196b4ebb87120ca7974038210199ac5982e792cace

파트가 업로드되는 순서는 상관없지만 S3 Glacier가 각 파트의 범위 사양을 사용하여 어셈블링 순서를 결정합니다.

응답의 예

HTTP/1.1 204 No Content x-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Q x-amz-sha256-tree-hash: c06f7cd4baacb087002a99a5f48bf953 Date: Wed, 10 Feb 2017 12:00:00 GMT