

 **이 페이지는 볼트와 2012년부터 원래 REST API를 사용하는 Amazon Glacier 서비스의 기존 고객만 사용할 수 있습니다.**

아카이브 스토리지 솔루션을 찾고 있다면 Amazon S3의 Amazon Glacier 스토리지 클래스, S3 Glacier Instant Retrieval, S3 Glacier Flexible Retrieval 및 S3 Glacier Deep Archive를 사용하는 것이 좋습니다. 이러한 스토리지 옵션에 대한 자세한 내용은 [Amazon Glacier 스토리지 클래스](https://aws.amazon.com/s3/storage-classes/glacier/)를 참조하세요.

Amazon Glacier(기존 독립 실행형 볼트 기반 서비스)는 더 이상 신규 고객을 받지 않습니다. Amazon Glacier는 데이터를 볼트에 저장하고 Amazon S3 및 Amazon S3 Glacier 스토리지 클래스와 구별되는 자체 API를 갖춘 독립 실행형 서비스입니다. 기존 데이터는 Amazon Glacier에서 무기한으로 안전하게 보관되며 액세스 가능합니다. 마이그레이션은 필요하지 않습니다. 저비용 장기 아카이브 스토리지의 경우는 [S3 버킷 기반 API, 전체 가용성, 저렴한 비용 및 서비스 통합을 통해 우수한 고객 경험을 제공하는 Amazon S3 Glacier 스토리지 클래스](https://aws.amazon.com/s3/storage-classes/glacier/)를 AWS 권장합니다. S3 APIs AWS 리전 AWS 향상된 기능을 원하는 경우 [Amazon Glacier 볼트에서 Amazon S3 Glacier 스토리지 클래스로 데이터를 전송하기 위한AWS 솔루션 지침](https://aws.amazon.com/solutions/guidance/data-transfer-from-amazon-s3-glacier-vaults-to-amazon-s3/)을 사용하여 Amazon S3 Glacier 스토리지 클래스로 마이그레이션하는 것이 좋습니다.

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

# 파트 업로드(PUT uploadID)
<a name="api-upload-part"></a>

## 설명
<a name="api-job-get-description"></a>

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

멀티파트 업로드에 대한 자세한 내용은 [대용량 아카이브를 여러 파트로 나누어 업로드(멀티파트 업로드)](uploading-archive-mpu.md) 섹션을 참조하세요.

 

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

 
+ **SHA256 트리-해시가 일치하지 않습니다:** 파트 데이터가 전송 중 손상되지 않도록 하려면 파트의 SHA256 트리 해시를 계산하여 요청에 추가해야 합니다. Amazon Glacier가 파트 데이터 수신과 함께 SHA256 트리 해시를 계산합니다. 이때 두 해시 값이 일치하지 않으면 작업이 오류로 중단됩니다. SHA256 트리-해시의 계산에 대한 자세한 내용은 [체크섬 계산](checksum-calculations.md) 섹션을 참조하세요.
+ **SHA256 선형 해시가 일치하지 않습니다:** 권한 부여에 필요하기 때문에 업로드된 전체 페이로드의 SHA256 선형 해시를 계산한 후 요청에 추가합니다. SHA256 선형 해시의 계산에 대한 자세한 내용은 [체크섬 계산](checksum-calculations.md) 섹션을 참조하세요.
+ **파트 크기가 일치하지 않습니다:** 마지막 파트를 제외하고 각 파트의 크기는 해당하는 [멀티파트 업로드 시작(POST multipart-uploads)](api-multipart-initiate-upload.md) 요청에서 지정한 크기와 반드시 일치해야 합니다. 마지막 파트의 크기는 지정된 크기보다 작거나 같아야 합니다.
**참고**  
멀티파트 업로드 시작 요청에서 지정한 파트 크기보다 작으면서 동시에 마지막 파트가 아닌 파트를 업로드하는 경우에도 파트 업로드 요청은 성공적으로 실행됩니다. 하지만 이후 멀티파트 업로드 완료 요청이 실행되지 않습니다.
+ **범위가 맞지 않습니다:** 요청의 바이트 범위 값이 해당하는 시작 요청에서 지정한 파트 크기와 맞지 않습니다. 예를 들어 크기가 4194304바이트(4MB)인 파트를 지정한다면 유효한 파트 범위는 0\~4194303바이트(4MB-1)와 4194304(4MB)\~8388607바이트(8MB-1)입니다. 하지만 범위 값을 2\~6MB로 설정하면 범위와 파트 크기가 맞지 않아 업로드가 오류로 중단되고 맙니다.

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

## 요청
<a name="api-job-get-requests"></a>

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

### 구문
<a name="api-job-get-requests-syntax"></a>

```
 1. PUT /{{AccountId}}/vaults/{{VaultName}}/multipart-uploads/{{uploadID}} HTTP/1.1
 2. Host: glacier.{{Region}}.amazonaws.com
 3. Date: {{Date}}
 4. Authorization: {{SignatureValue}}
 5. Content-Range: {{ContentRange}}
 6. Content-Length: {{PayloadSize}}
 7. Content-Type: application/octet-stream
 8. x-amz-sha256-tree-hash: {{Checksum of the part}}
 9. x-amz-content-sha256: {{Checksum of the entire payload}}			
10. x-amz-glacier-version: 2012-06-01
```

 

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

### 요청 파라미터
<a name="api-upload-part-requests-parameters"></a>

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

### 요청 헤더
<a name="api-upload-part-requests-headers"></a>

이 작업은 모든 작업에 일반적인 요청 헤더 외에 다음 요청 헤더를 사용합니다. 일반적인 요청 헤더에 대한 자세한 내용은 [공통 요청 헤더](api-common-request-headers.md) 섹션을 참조하세요.


|  이름  |  설명  |  필수  | 
| --- | --- | --- | 
| Content-Length  | 파트 길이(바이트)를 식별합니다.<br />유형: 문자열<br />기본값: 없음<br />제약 조건: 없음 |  아니요 | 
| Content-Range  | 이 파트에 업로드될 어셈블링된 아카이브의 바이트 범위를 식별합니다. Amazon Glacier는 이 정보를 사용하여 아카이브를 적절한 순서로 어셈블링합니다. 이 헤더의 형식은 [RFC 2616](http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.16)을 따릅니다. 헤더 예를 들면 `Content-Range:bytes 0-4194303/*`과 같습니다.<br />유형: 문자열<br />기본값: 없음<br />제약 조건: 범위는 멀티파트 업로드를 시작할 때 지정한 파트 크기보다 클 수 없습니다. |  예 | 
|  x-amz-content-sha256  | 업로드되는 페이로드의 SHA256 체크섬(선형 해시)입니다. 이 값은 `x-amz-sha256-tree-hash` 헤더에서 지정하는 값과 다릅니다.<br />유형: 문자열<br />기본값: 없음<br />제약 조건: 없음 |  예 | 
|  x-amz-sha256-tree-hash​  | 업로드되는 데이터의 SHA256 트리-해시를 지정합니다. SHA256 트리-해시의 계산에 대한 자세한 내용은 [체크섬 계산](checksum-calculations.md) 섹션을 참조하세요.<br />유형: 문자열<br />기본값: 없음<br />제약 조건: 없음 |  예 | 

### 요청 본문
<a name="api-job-get-requests-elements"></a>

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

## 응답
<a name="api-job-get-responses"></a>

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

### 구문
<a name="api-job-get-response-syntax"></a>

```
1. HTTP/1.1 204 No Content
2. x-amzn-RequestId: x-amzn-RequestId
3. Date: Date
4. x-amz-sha256-tree-hash: ChecksumComputedByAmazonGlacier
```

### 응답 헤더
<a name="api-job-get-responses-headers"></a>

성공적인 응답에는 모든 작업에 일반적인 응답 헤더 외에 다음 응답 헤더가 포함됩니다. 일반적인 응답 헤더에 대한 자세한 내용은 [공통 응답 헤더](api-common-response-headers.md) 섹션을 참조하세요.


|  이름  |  설명  | 
| --- | --- | 
|  x-amz-sha256-tree-hash​  | Amazon Glacier가 업로드된 파트에 대해 계산한 SHA256 트리 해시입니다.<br />유형: 문자열 | 

### 응답 본문
<a name="api-job-get-responses-elements"></a>

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

## 예시
<a name="api-job-get-examples"></a>

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

### 요청 예시
<a name="api-job-get-examples-sample-request"></a>

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

```
1. PUT /-/vaults/examplevault/multipart-uploads/OW2fM5iVylEpFEMM9_HpKowRapC3vn5sSL39_396UW9zLFUWVrnRHaPjUJddQ5OxSHVXjYtrN47NBZ-khxOjyEXAMPLE HTTP/1.1
2. Host: glacier.us-west-2.amazonaws.com
3. Date: Wed, 10 Feb 2017 12:00:00 GMT
4. Content-Range:bytes 0-4194303/*
5. x-amz-sha256-tree-hash:c06f7cd4baacb087002a99a5f48bf953
6. x-amz-content-sha256:726e392cb4d09924dbad1cc0ba3b00c3643d03d14cb4b823e2f041cff612a628
7. Content-Length: 4194304
8. 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 아카이브를 지정합니다.

```
1. PUT /-/vaults/examplevault/multipart-uploads/OW2fM5iVylEpFEMM9_HpKowRapC3vn5sSL39_396UW9zLFUWVrnRHaPjUJddQ5OxSHVXjYtrN47NBZ-khxOjyEXAMPLE HTTP/1.1
2. Host: glacier.us-west-2.amazonaws.com
3. Date: Wed, 10 Feb 2017 12:00:00 GMT
4. Content-Range:bytes 4194304-8388607/*
5. Content-Length: 4194304
6. x-amz-sha256-tree-hash:f10e02544d651e2c3ce90a4307427493
7. x-amz-content-sha256:726e392cb4d09924dbad1cc0ba3b00c3643d03d14cb4b823e2f041cff612a628
8. x-amz-glacier-version: 2012-06-01
9. 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
```

어떤 순서로든 파트를 업로드할 수 있지만 Amazon Glacier가 각 파트의 범위 사양을 사용하여 어셈블링 순서를 결정합니다.

### 응답의 예
<a name="api-job-get-examples-sample-response"></a>

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

## 관련 섹션
<a name="related-sections-upload-part"></a>

 
+ [멀티파트 업로드 시작(POST multipart-uploads)](api-multipart-initiate-upload.md)
+ [파트 업로드(PUT uploadID)](#api-upload-part)
+ [멀티파트 업로드 완료(POST uploadID)](api-multipart-complete-upload.md)
+ [멀티파트 업로드 중단(DELETE uploadID)](api-multipart-abort-upload.md)
+ [멀티파트 업로드 목록 조회(GET multipart-uploads)](api-multipart-list-uploads.md)
+ [파트 목록 조회(GET uploadID)](api-multipart-list-parts.md)
+ [대용량 아카이브를 여러 파트로 나누어 업로드(멀티파트 업로드)](uploading-archive-mpu.md)
+ [Amazon Glacier의 ID 및 액세스 관리(IAM)](security-iam.md)