

 **このページは、ボールトと 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 は、ボールトにデータを保存する独自の API を備えたスタンドアロンサービスであり、Amazon S3 および Amazon S3 Glacier ストレージクラスとは異なります。既存のデータは Amazon Glacier で無期限に安全性が確保され、引き続きアクセス可能です。移行は必要ありません。低コストの長期アーカイブストレージの場合、 は [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 では、以下の条件のいずれかが true のときは、パートのアップロードのリクエストが拒否されます。

 
+ **SHA256 木構造ハッシュが一致しない-** 送信中にパートデータが破損していないことを確認するため、パートの SHA256 木構造ハッシュを計算し、リクエストに含める必要があります。パートデータを受け取った時点で、Amazon Glacier でも SHA256 木構造ハッシュを計算します。この 2 つのハッシュ値が一致しない場合、オペレーションは失敗となります。SHA256 木構造ハッシュの計算の詳細については、「[チェックサムの計算](checksum-calculations.md)」を参照してください。
+ **SHA256 の線形ハッシュが一致しない-**認可のため、アップロードされるペイロード全体の SHA256 線形ハッシュを計算し、リクエストに含める必要があります。SHA256 線形ハッシュの計算については、「[チェックサムの計算](checksum-calculations.md)」を参照してください。
+ **パートのサイズが一致しない-**(最後のパートを除く) 各パートのサイズは、対応する [マルチパートアップロードの開始 (POST multipart-uploads)](api-multipart-initiate-upload.md) リクエストで指定されているサイズに一致している必要があります。最後のパートのサイズは、指定されたサイズ以下になっていることが必要です。
**注記**  
マルチパートアップロードの開始リクエストで指定したサイズよりも小さなサイズのパートをアップロードし、そのパートが最後のパートでない場合でも、パートのアップロードのリクエストは成功します。ただし、次のマルチパートアップロードの完了リクエストは失敗します。
+ **範囲が一致しない-**リクエストのバイト範囲の値が、対応する開始リクエストで指定されているパートサイズと一致しない場合です。たとえば、パートサイズを 4194304 バイト (4 MB) に指定した場合であれば、0​-4194303 バイト (4 MB-1) および 4194304 (4 MB) -​8388607 (8 MB-1) が有効なパート範囲になります。これに対して、範囲の値を 2 MB​～​6 MB に設定した場合には、範囲がパートのサイズに一致しないため、アップロードが失敗します。

このオペレーションはべき等です。同じパートを複数回アップロードすると、最新のリクエストに含まれるデータによって、既にアップロードされたデータが上書きされます。

## リクエスト
<a name="api-job-get-requests"></a>

`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  |  パートの長さをバイト単位で特定します。 タイプ: 文字列 デフォルト: なし 制約: なし  |  なし | 
| Content-Range  |  このパートでアップロードされるアセンブル済みアーカイブのバイト範囲を識別します。Amazon Glacier では、この情報を使用してアーカイブを適切な順序でアセンブルします。このヘッダーの形式は、[RFC 2616](http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.16) に準拠しています。ヘッダーはたとえば、`Content-Range:bytes 0-4194303/*` のようになります。 タイプ: 文字列 デフォルト: なし 制約事項: この範囲は、マルチパートアップロードを開始するときに指定したパートサイズよりも大きくすることはできません。  |  あり | 
|  x-amz-content-sha256  |  アップロードされるペイロードの SHA256 チェックサム (線形ハッシュ)。この値は、`x-amz-sha256-tree-hash` ヘッダーで指定する値とは異なります。 タイプ: 文字列 デフォルト: なし 制約: なし  |  あり | 
|  x-amz-sha256-tree-hash​  |  アップロードするデータの SHA256 木構造ハッシュを指定します。SHA256 木構造ハッシュの計算の詳細については、「[チェックサムの計算](checksum-calculations.md)」を参照してください。 タイプ: 文字列 デフォルト: なし 制約: なし  |  あり | 

### リクエスト本文
<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 木構造ハッシュ。 タイプ: 文字列  | 

### レスポンス本文
<a name="api-job-get-responses-elements"></a>

このオペレーションはレスポンス本文を返しません。

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

以下に示すリクエストでは、4 MB のパートをアップロードします。このリクエストでは、このパートをアーカイブの最初のパートにするようにバイト範囲を設定しています。

### リクエストの例
<a name="api-job-get-examples-sample-request"></a>

この例では、4 MB のパートをアップロードする HTTP `PUT` リクエストを送信します。リクエストは、マルチパートアップロードの開始リクエストによって返されるアップロード ID の URI に送信されます。`Content-Range` ヘッダーでは、このパートがアーカイブの最初の 4 MB のデータに相当するものであることを指定しています。

```
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 を使用して別のパートをアップロードするものです。このリクエストでは、アーカイブのうち、前回のリクエスト以降の 4 MB 分の範囲と、4 MB というパートサイズを指定しています。

```
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 とアクセス管理](security-iam.md)