

 **此頁面僅適用於使用 Vaults 和 2012 年原始 REST API 的 Amazon Glacier 服務的現有客戶。**

如果您要尋找封存儲存解決方案，建議您在 Amazon Glacier Instant Retrieval、S3 Glacier Flexible Retrieval 和 S3 Glacier Deep Archive 中使用 Amazon Glacier 儲存類別。 Amazon S3 若要進一步了解這些儲存選項，請參閱 [Amazon Glacier 儲存類別](https://aws.amazon.com/s3/storage-classes/glacier/)。

Amazon Glacier （原始獨立保存庫型服務） 不再接受新客戶。Amazon Glacier 是一項獨立服務，具有自己的 APIs，可將資料存放在保存庫中，並與 Amazon S3 和 Amazon S3 Glacier 儲存類別不同。您現有的資料將在 Amazon Glacier 中無限期保持安全且可存取。不需要遷移。對於低成本、長期的封存儲存， AWS 建議使用 [Amazon S3 Glacier 儲存類別](https://aws.amazon.com/s3/storage-classes/glacier/)，透過 S3 儲存貯體型 APIs、完整 AWS 區域 可用性、降低成本 AWS 和服務整合，提供卓越的客戶體驗。如果您想要增強功能，請考慮使用我們的解決方案指南，將資料從 Amazon S3 Glacier 保存庫傳輸至 Amazon S3 Glacier 儲存類別，以遷移至 Amazon S3 Glacier 儲存類別。 [AWS Amazon Glacier Amazon S3 ](https://aws.amazon.com/solutions/guidance/data-transfer-from-amazon-s3-glacier-vaults-to-amazon-s3/)

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 啟動任務 (POST 任務)
<a name="api-initiate-job-post"></a>

此操作會啟動下列類型的 Amazon Glacier (Amazon Glacier) 任務：
+ `archive-retrieval`：擷取封存
+ `inventory-retrieval`：清點保存庫

**Topics**
+ [初始化封存或保存庫庫存擷取工作](#api-initiate-job-post-description)
+ [要求](#api-initiate-job-post-requests)
+ [回應](#api-initiate-job-post-responses)
+ [範例](#api-initiate-job-post-examples)
+ [相關章節](#more-info-api-initiate-job-post)

## 初始化封存或保存庫庫存擷取工作
<a name="api-initiate-job-post-description"></a>

擷取封存或保存庫庫存是非同步作業，需要您啟動工作。一旦啟動，就無法取消任務。擷取是兩個步驟：

1. 使用 [啟動任務 (POST 任務)](#api-initiate-job-post) 操作啟動擷取任務。
**重要**  
資料擷取政策可能導致啟動擷取作業請求失敗，並出現 `PolicyEnforcedException`。如需有關資料擷取政策的詳細資訊，請參閱 [Amazon Glacier 資料擷取政策](data-retrieval-policy.md)。如需 `PolicyEnforcedException` 例外狀況的詳細資訊，請參閱 [錯誤回應](api-error-responses.md)。

1. 任務完成後，使用 [「取得任務輸出」 (GET 輸出)](api-job-output-get.md) 操作下載位元組。

以非同步方式執行擷取請求。當您起始檢索任務時，Amazon Glacier 會建立任務，並在回應中傳回任務 ID。當 Amazon Glacier 完成任務時，您可以取得任務輸出 （封存或庫存資料）。如需有關取得任務輸出的詳細資訊，請參閱 [「取得任務輸出」 (GET 輸出)](api-job-output-get.md) 操作。

必須完成任務，才能取得其輸出。若要判斷任務何時完成，您有下列選項：

 
+ **使用 Amazon SNS 通知 —** 您可以指定 Amazon Glacier 可以在任務完成後發佈通知的 Amazon SNS 主題。 Amazon Glacier 您可以為每個任務請求指定一個 SNS 主題。只有在 Amazon Glacier 完成任務後，才會傳送通知。除了指定每個工作請求的 SNS 主題外，還可以為保存庫設定保存庫通知，以便為所有擷取傳送工作通知。如需詳細資訊，請參閱[設定保存庫通知組態 (PUT 通知的組態)](api-vault-notifications-put.md)。
+ **取得工作詳細資訊：**工作進行中時，您可以提出 [描述任務 (GET JobID)](api-describe-job-get.md) 請求以取得工作狀態資訊。但是，使用 Amazon SNS 通知來判斷工作何時完成會更有效率。

 

**注意**  
您透過通知取得的資訊，與您呼叫 [描述任務 (GET JobID)](api-describe-job-get.md) 所取得的資訊相同。

如果針對特定事件，您可以在保存庫上新增通知組態，並在啟動任務請求中指定 SNS 主題，Amazon Glacier 會傳送這兩個通知。如需詳細資訊，請參閱[設定保存庫通知組態 (PUT 通知的組態)](api-vault-notifications-put.md)。

### 此保存庫庫存
<a name="api-initiate-job-post-about-the-vault-inventory"></a>

Amazon Glacier 大約每天更新一次保存庫庫存，從您第一次將封存上傳至保存庫的那一天開始。如果從上次清查以來，沒有新增或刪除文件庫的存檔，則清查日期不會更新。當您啟動保存庫庫存的任務時，Amazon Glacier 會傳回其產生的最後一個庫存，這是point-in-time快照，而不是即時資料。

Amazon Glacier 為保存庫建立第一個庫存後，通常需要半天到一天的時間才能擷取該庫存。

您可能沒有發現為每個存檔上傳擷取文件庫清查的好處。不過，假設您在用戶端維護資料庫，關聯您上傳到 Amazon Glacier 之封存的相關中繼資料。然後，您可能會發現文件庫清查的好處，可以視需要在資料庫中使用實際的文件庫清查來調節資訊。如需有關庫存任務輸出中傳回的資料欄位的詳細資訊，請參閱 [回應內文](api-job-output-get.md#api-job-output-get-responses-elements)。

### 庫存擷取範圍
<a name="api-initiate-job-post-vault-inventory-list-filtering"></a>

 您可以透過篩選在保存庫建立日期或設定限制來限制擷取到的保存庫庫存項目的數量。

**透過封存建立日期進行篩選**  
您可以透過在**啟動工作**請求中指定這些參數的值，來擷取在 `StartDate` 和 `EndDate` 之間建立之封存的庫存項目。在 `StartDate` 之時或之後，以及 `EndDate` 之前所建立的封存被傳回。如果您只提供沒有 `StartDate` 的 `EndDate` ，則擷取 `StartDate` 或之後建立的所有封存的庫存。如果您只提供 `EndDate` 而沒有 `StartDate`，則擷取 `EndDate` 之時或之後所建立的所有封存的庫存。

**限制每個擷取的庫存項目**  
 您可以透過在**啟動工作**請求中設定 `Limit` 參數，來限制傳回的庫存項目數量。庫存任務輸出包含達到指定 `Limit` 的庫存項目。如果有更多的庫存項目可用，則結果會進行分頁。在任務完成後，您可以使用 [描述任務 (GET JobID)](api-describe-job-get.md) 操作來取得您在後續的**啟動任務**請求中使用的標記。標記指示要擷取下一組庫存項目的起點。您可以透過使用之前**描述工作**輸出中的標記重複建立**啟動工作**請求來瀏覽整個庫存。這樣做一直到您從**描述任務**取得傳回空標記，表示沒有更多的庫存項目可用。

您可以將 `Limit` 參數與日期範圍參數一起使用。

### 遠端封存擷取
<a name="api-initiate-job-post-"></a>

您可以為整個封存或封存範圍啟動封存擷取。在遠端封存擷取的情況下，指定要傳回的位元組範圍或整個封存。指定的範圍必須符合百萬位元組 (MB)。換言之，範圍起始值必須可被 1 MB 整除，並且範圍結束值加上 1 必須可整除 1 MB 或等於封存的結束。如果遠端封存擷取不符合 MB，則此操作將傳回 `400` 回應。此外，為了確保使用**取得任務輸** ([「取得任務輸出」 (GET 輸出)](api-job-output-get.md)) 下載的資料取得檢查總和值，該範圍必須必須符合樹狀雜湊。如需有關樹狀雜湊符合範圍的詳細資訊，請參閱 [下載資料時接收檢查總和](checksum-calculations-range.md)。

### 急件、標準和大量方案
<a name="api-initiate-job-expedited-bulk"></a>

當啟動封存擷取工作時，可以在請求內文的 `Tier` 欄位中指定下列選項之一：
+ **`Expedited`**：當您偶爾需要緊急要求還原封存時，急件讓您快速存取資料。對於幾乎最大型的封存 (250 MB 以上)，使用急件方案所存取的資料，通常會在 1-5 分鐘內即可使用。
+ **`Standard`**：讓您能以標準方案在幾小時內存取任何封存。使用標準方案存取的資料通常 3 -5 小時內可用。若未指定方案選項，這會是任務請求的預設選項。
+ **`Bulk`** – 大量是 Amazon Glacier 成本最低的方案，可讓您在一天內以經濟實惠的價格擷取大量資料，甚至 PB。使用大量方案存取的資料通常 5 -12 小時內可用。

如需有關急件和大量擷取的詳細資訊，請參閱 [擷取 Amazon Glacier Archives](downloading-an-archive-two-steps.md)。

## 要求
<a name="api-initiate-job-post-requests"></a>

要啟動作業，您可以使用 HTTP `POST` 方法的請求，並將請求範圍擴大到保存庫的 `jobs` 子資源。您可以在請求的 JSON 文件中指定任務請求的詳細資訊。任務類型是由 `Type` 欄位指定的。或者，您可以指定 `SNSTopic` 欄位，以指示 Amazon Glacier 在完成任務後可發佈通知的 Amazon SNS 主題。 Amazon Glacier 

 

**注意**  
若要將通知發佈到 Amazon SNS，如果主題尚不存在，您必須自行建立該主題。Amazon Glacier 不會為您建立主題。主題必須具有從 Amazon Glacier 保存庫接收出版物的許可。Amazon Glacier 不會驗證保存庫是否具有發佈至主題的許可。如果未設定適當的權限，即使任務完成後，您也可能不會收到通知。

### 語法
<a name="api-initiate-job-post-requests-syntax"></a>

以下是啟動任務的請求語法。

```
 1. POST /{{AccountId}}/vaults/{{VaultName}}/jobs HTTP/1.1
 2. Host: glacier.{{Region}}.amazonaws.com
 3. Date: {{Date}}
 4. Authorization: {{SignatureValue}}
 5. x-amz-glacier-version: 2012-06-01
 6. 
 7. {
 8.    "jobParameters": { 
 9.       "ArchiveId": "{{string}}",
10.       "Description": "{{string}}",
11.       "Format": "{{string}}",
12.       "InventoryRetrievalParameters": { 
13.          "EndDate": "{{string}}",
14.          "Limit": "{{string}}",
15.          "Marker": "{{string}}",
16.          "StartDate": "{{string}}"
17.       },
18.       "OutputLocation": { 
19.          "S3": { 
20.             "AccessControlList": [ 
21.                { 
22.                   "Grantee": { 
23.                      "DisplayName": "{{string}}",
24.                      "EmailAddress": "{{string}}",
25.                      "ID": "{{string}}",
26.                      "Type": "{{string}}",
27.                      "URI": "{{string}}"
28.                   },
29.                   "Permission": "{{string}}"
30.                }
31.             ],
32.             "BucketName": "{{string}}",
33.             "CannedACL": "{{string}}",
34.             "Encryption": { 
35.                "EncryptionType": "{{string}}",
36.                "KMSContext": "{{string}}",
37.                "KMSKeyId": "{{string}}"
38.             },
39.             "Prefix": "{{string}}",
40.             "StorageClass": "{{string}}",
41.             "Tagging": { 
42.                "{{string}}" : "{{string}}" 
43.             },
44.             "UserMetadata": { 
45.                "{{string}}" : "{{string}}" 
46.             }
47.          }
48.       },
49.       "RetrievalByteRange": "{{string}}",
50.       "SelectParameters": { 
51.          "Expression": "{{string}}",
52.          "ExpressionType": "{{string}}",
53.          "InputSerialization": { 
54.             "csv": { 
55.                "Comments": "{{string}}",
56.                "FieldDelimiter": "{{string}}",
57.                "FileHeaderInfo": "{{string}}",
58.                "QuoteCharacter": "{{string}}",
59.                "QuoteEscapeCharacter": "{{string}}",
60.                "RecordDelimiter": "{{string}}"
61.             }
62.          },
63.          "OutputSerialization": { 
64.             "csv": { 
65.                "FieldDelimiter": "{{string}}",
66.                "QuoteCharacter": "{{string}}",
67.                "QuoteEscapeCharacter": "{{string}}",
68.                "QuoteFields": "{{string}}",
69.                "RecordDelimiter": "{{string}}"
70.             }
71.          }
72.       },
73.       "SNSTopic": "{{string}}",
74.       "Tier": "{{string}}",
75.       "Type": "{{string}}"
76.    }
77. }
```

**注意**  
 `AccountId` 值是擁有保存庫的帳戶 AWS 帳戶 ID。您可以指定 AWS 帳戶 ID 或選擇性指定單一 '`-`' （連字號），在這種情況下，Amazon Glacier 會使用與用來簽署請求之登入資料相關聯的 AWS 帳戶 ID。如果您使用帳號 ID，請勿在 ID 中包含任何連字號 ('-')。

### 請求主體
<a name="api-initiate-job-post-select-request-body"></a>

該請求接受請求內文中的 JSON 格式的以下資料。

jobParameters  
提供指定任務資訊的選項。  
*類型*：[jobParameters](api-jobParameters.md)物件  
*必要*：是 

## 回應
<a name="api-initiate-job-post-responses"></a>

Amazon Glacier 會建立任務。在回應中，它會傳回任務的 URI。

### 語法
<a name="api-initiate-job-post-response-syntax"></a>

```
1. HTTP/1.1 202 Accepted
2. x-amzn-RequestId: x-amzn-RequestId
3. Date: Date
4. Location: {{location}}
5. x-amz-job-id: {{jobId}}
6. x-amz-job-output-path: {{jobOutputPath}}
```

### 回應標頭
<a name="api-initiate-job-post-responses-headers"></a>


| 標頭 | Description | 
| --- | --- | 
| Location | 任務的相對 URI 路徑。您可以使用此 URI 路徑來尋找任務狀態。如需詳細資訊，請參閱[描述任務 (GET JobID)](api-describe-job-get.md)。<br />類型：字串<br />預設：無 | 
| x-amz-job-id | 任務的 ID。此值也包含在 `Location` 標頭中。<br />類型：字串<br />預設：無 | 
| x-amz-job-output-path | 儲存選取結果的位置的路徑。<br />類型：字串<br />預設：無 | 

### 回應內文
<a name="api-initiate-job-post-responses-elements"></a>

此作業不會傳回任何回應內文。

### 錯誤
<a name="api-initiate-job-post-responses-errors"></a>

除了所有 Amazon Glacier 操作常見的可能錯誤之外，此操作還包含下列錯誤。如需 Amazon Glacier 錯誤的資訊和錯誤代碼清單，請參閱 [錯誤回應](api-error-responses.md)。


| Code | Description | HTTP 狀態碼 | Type | 
| --- | --- | --- | --- | 
| InsufficientCapacityException | 如果沒有足夠的能力處理此急件請求，則退回。此錯誤僅適用於急件擷取，而不適用於標準或大量擷取。 | 503 Service Unavailable | Server | 

## 範例
<a name="api-initiate-job-post-examples"></a>

### 範例請求：啟動封存擷取任務
<a name="api-initiate-job-post-example-request"></a>

```
 1. POST /-/vaults/examplevault/jobs HTTP/1.1
 2. Host: glacier.us-west-2.amazonaws.com
 3. x-amz-Date: 20170210T120000Z
 4. x-amz-glacier-version: 2012-06-01
 5. Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2
 6. 
 7. {
 8.   "Type": "archive-retrieval",
 9.   "ArchiveId": "NkbByEejwEggmBz2fTHgJrg0XBoDfjP4q6iu87-TjhqG6eGoOY9Z8i1_AUyUsuhPAdTqLHy8pTl5nfCFJmDl2yEZONi5L26Omw12vcs01MNGntHEQL8MBfGlqrEXAMPLEArchiveId",
10.   "Description": "My archive description",
11.   "SNSTopic": "arn:aws:sns:us-west-2:111111111111:Glacier-ArchiveRetrieval-topic-Example",
12.   "Tier" : "Bulk"
13. }
```

以下是一個請求內文的範例，該請求指定各種封存擷取使用 `RetrievalByteRange` 欄位。

 

```
{
  "Type": "archive-retrieval",
  "ArchiveId": "NkbByEejwEggmBz2fTHgJrg0XBoDfjP4q6iu87-TjhqG6eGoOY9Z8i1_AUyUsuhPAdTqLHy8pTl5nfCFJmDl2yEZONi5L26Omw12vcs01MNGntHEQL8MBfGlqrEXAMPLEArchiveId",
  "Description": "My archive description",
  "RetrievalByteRange": "2097152-4194303",
  "SNSTopic": "arn:aws:sns:us-west-2:111111111111:Glacier-ArchiveRetrieval-topic-Example",
  "Tier" : "Bulk"
}
```

### 回應範例
<a name="api-initiate-job-post-example-response"></a>

```
1. HTTP/1.1 202 Accepted
2. x-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Q
3. Date: Wed, 10 Feb 2017 12:00:00 GMT
4. Location: /111122223333/vaults/examplevault/jobs/HkF9p6o7yjhFx-K3CGl6fuSm6VzW9T7esGQfco8nUXVYwS0jlb5gq1JZ55yHgt5vP54ZShjoQzQVVh7vEXAMPLEjobID
5. x-amz-job-id: HkF9p6o7yjhFx-K3CGl6fuSm6VzW9T7esGQfco8nUXVYwS0jlb5gq1JZ55yHgt5vP54ZShjoQzQVVh7vEXAMPLEjobID
```

### 範例請求：啟動庫存擷取任務
<a name="api-initiate-job-post-example-retrieve-inventory-request"></a>

以下請求將啟動一個庫存擷取工作，以便從 `examplevault` 保存庫中取得封存清單。在請求內文中的 `Format` 設為 `CSV` 表示庫存以 CSV 格式傳回。

```
 1. POST /-/vaults/examplevault/jobs HTTP/1.1
 2. Host: glacier.us-west-2.amazonaws.com
 3. x-amz-Date: 20170210T120000Z
 4. Content-Type: application/x-www-form-urlencoded
 5. x-amz-glacier-version: 2012-06-01
 6. Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2
 7. 
 8. {
 9.   "Type": "inventory-retrieval",
10.   "Description": "My inventory job",
11.   "Format": "CSV",  
12.   "SNSTopic": "arn:aws:sns:us-west-2:111111111111:Glacier-InventoryRetrieval-topic-Example"
13. }
```

### 回應範例
<a name="api-initiate-job-post-example-retrieve-inventory-response"></a>

```
1. HTTP/1.1 202 Accepted
2. x-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Q
3. Date: Wed, 10 Feb 2017 12:00:00 GMT 
4. Location: /111122223333/vaults/examplevault/jobs/HkF9p6o7yjhFx-K3CGl6fuSm6VzW9T7esGQfco8nUXVYwS0jlb5gq1JZ55yHgt5vP54ZShjoQzQVVh7vEXAMPLEjobID
5. x-amz-job-id: HkF9p6o7yjhFx-K3CGl6fuSm6VzW9T7esGQfco8nUXVYwS0jlb5gq1JZ55yHgt5vP54ZShjoQzQVVh7vEXAMPLEjobID
```

### 範例請求：通過使用一組限制的日期篩選和後續請求來擷取庫存項目的下一頁，啟動庫存擷取任務。
<a name="api-initiate-job-post-example-retrieve-inventory-request-filtered"></a>

以下請求透過使用日期篩選和設定限制來啟動保存庫庫存擷取工作。

```
 1. {
 2.     "ArchiveId": null, 
 3.     "Description": null, 
 4.     "Format": "CSV", 
 5.     "RetrievalByteRange": null, 
 6.     "SNSTopic": null, 
 7.     "Type": "inventory-retrieval", 
 8.     "InventoryRetrievalParameters": {
 9.         "StartDate": "2013-12-04T21:25:42Z",
10.         "EndDate": "2013-12-05T21:25:42Z", 
11.         "Limit" : "10000"
12.     }, 
13. }
```

以下的請求範例，後續請求使用來自 [描述任務 (GET JobID)](api-describe-job-get.md) 所取得的標記來擷取庫存項目的下一頁。

```
 1. {
 2.     "ArchiveId": null, 
 3.     "Description": null, 
 4.     "Format": "CSV", 
 5.     "RetrievalByteRange": null, 
 6.     "SNSTopic": null, 
 7.     "Type": "inventory-retrieval", 
 8.     "InventoryRetrievalParameters": {
 9.         "StartDate": "2013-12-04T21:25:42Z",
10.         "EndDate": "2013-12-05T21:25:42Z", 
11.         "Limit": "10000",
12.         "Marker": "vyS0t2jHQe5qbcDggIeD50chS1SXwYMrkVKo0KHiTUjEYxBGCqRLKaiySzdN7QXGVVV5XZpNVG67pCZ_uykQXFMLaxOSu2hO_-5C0AtWMDrfo7LgVOyfnveDRuOSecUo3Ueq7K0"
13.     }, 
14. }
```

### 回應範例
<a name="api-initiate-job-post-example-select-response"></a>

```
1. HTTP/1.1 202 Accepted
2. x-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Q
3. Date: Wed, 10 Feb 2017 12:00:00 GMT 
4. Location: /111122223333/vaults/examplevault/jobs/HkF9p6o7yjhFx-K3CGl6fuSm6VzW9T7esGQfco8nUXVYwS0jlb5gq1JZ55yHgt5vP54ZShjoQzQVVh7vEXAMPLEjobID
5. x-amz-job-id: HkF9p6o7yjhFx-K3CGl6fuSm6VzW9T7esGQfco8nUXVYwS0jlb5gq1JZ55yHgt5vP54ZShjoQzQVVh7vEXAMPLEjobID
6. x-amz-job-output-path: test/HkF9p6o7yjhFx-K3CGl6fuSm6VzW9T7esGQfco8nUXVYwS0jlb5gq1JZ55yHgt5vP54ZShjoQzQVVh7vEXAMPLEjobID/
```

## 相關章節
<a name="more-info-api-initiate-job-post"></a>

 
+ [描述任務 (GET JobID)](api-describe-job-get.md)
+ [「取得任務輸出」 (GET 輸出)](api-job-output-get.md)
+ [Amazon Glacier 的 Identity and Access Management](security-iam.md)