分段上傳 (PUT uploadID) - Amazon Glacier

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

如果您要尋找封存儲存解決方案,建議您在 Amazon Glacier Instant Retrieval、S3 Glacier Flexible Retrieval 和 S3 Glacier Deep Archive 中使用 Amazon Glacier 儲存類別。 Amazon S3 若要進一步了解這些儲存選項,請參閱 Amazon Glacier 儲存類別

自 2025 年 12 月 15 日起,Amazon Glacier (原始獨立保存庫型服務) 將不再接受新客戶,不會影響現有客戶。Amazon Glacier 是一項獨立服務,具有自己的 APIs,可將資料存放在保存庫中,並與 Amazon S3 和 Amazon S3 Glacier 儲存類別不同。您現有的資料將在 Amazon Glacier 中無限期保持安全且可存取。不需要遷移。對於低成本、長期的封存儲存, AWS 建議採用 Amazon S3 Glacier 儲存類別,透過 S3 儲存貯體型 APIs、完整 AWS 區域 可用性、降低成本 AWS 和服務整合,提供卓越的客戶體驗。如果您想要增強功能,請考慮使用我們的解決方案指南,將資料從 Amazon S3 Glacier 保存庫傳輸至 Amazon S3 Glacier 儲存類別,以遷移至 Amazon S3 Glacier 儲存類別。 AWS Amazon Glacier Amazon S3

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

分段上傳 (PUT uploadID)

說明

這個分段上傳操作會上傳封存的一部分。您可以任何順序上傳封存部分,因為在您的分段上傳請求中您指定將在部分中上傳之整合封存的位元組範圍。您也可以平行上傳這些部分。您可以上傳多達 10,000 個部分的分段上傳。

如需有關分段上傳的資訊,請參閱上傳分段中的大型封存 (分段上傳)

如果以下任何條件成立,Amazon Glacier (Amazon Glacier) 會拒絕您的上傳組件請求:

  • SHA256 樹雜湊不相符:為確保部分資料不會在傳輸時毀損,您運算該部分的 SHA256 樹雜湊並將其包含在請求中。收到組件資料時,Amazon Glacier 也會計算 SHA256 樹雜湊。如果兩個雜湊值不相符,操作就會失敗。如需有關運算 SHA256 樹雜湊的資訊,請參閱 運算檢查總和

  • SHA256 線性雜湊不相符:由於授權需要,您運算整個上傳承載的 SHA256 線性雜湊,並將其包含在請求中。如需有關運算 SHA256 線性雜湊的資訊,請參閱運算檢查總和

  • 部分大小不相符:每個部分 (最後部分除外) 的大小,必須符合在對應的 啟動分段上傳 (POST 分段 - 上傳) 請求中所指定的大小。最後分段的大小必須與指定的大小相同或小於指定的大小。

    注意

    如果您所上傳分段的大小小於在起始分段上傳請求中所指定的分段大小,而且該分段不是最後一個分段,則上傳分段請求將會成功。不過,後續的「完成分段上傳」請求將會失敗。

  • 範圍不符合:請求中的位元組範圍值,不符合對應的起始請求中所指定的部分大小。例如,如果您指定 4194304 位元組 (4 MB) 的分段大小,則 0 到 4194303 位元組 (4 MB -1) 和 4194304 (4 MB) 到 8388607 (8 MB -1) 是有效的分段範圍。不過,如果您設定範圍值為 2 MB 到 6 MB,範圍就不符合分段大小且上傳將會失敗。

此為等冪操作。如果您多次上傳相同的分段,最新請求中所包含的資料會覆寫之前上傳的資料。

請求

您傳送此 HTTP PUT 請求至由您起始分段上傳請求所傳回的上傳 ID 的 URI。Amazon 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 Glacier 會使用與用來簽署請求之登入資料相關聯的 AWS 帳戶 ID。如果您使用帳號 ID,請勿在 ID 中包含任何連字號 ('-')。

請求參數

此操作不使用請求參數。

請求標頭

除了所有作業通用的請求標頭之外,此作業還會使用下列請求標頭。如需常見請求標頭的資訊,請參閱常見請求標題

名稱 描述 必要
Content-Length

識別以位元組表示的分段長度。

類型:字串

預設:無

限制條件:無

Content-Range

識別在此分段將上傳之整合封存的位元組範圍。Amazon Glacier 會使用此資訊以適當的順序組合封存。此標頭的格式遵循 RFC 2616。範例標頭為 Content-Range:bytes 0-4194303/*

類型:字串

預設:無

限制條件:範圍不得大於您在起始分段上傳時所指定的分段大小。

x-amz-content-sha256

所上傳承載的 SHA256 檢查總和 (線性雜湊)。這與您在 x-amz-sha256-tree-hash 標頭中指定的值不同。

類型:字串

預設:無

限制條件:無

x-amz-sha256-tree-hash

指定將上傳之資料的 SHA256 樹雜湊。如需有關運算 SHA256 樹雜湊的資訊,請參閱 運算檢查總和

類型:字串

預設:無

限制條件:無

請求主體

請求內文包含要上傳的資料。

回應

成功上傳組件後,Amazon 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

Amazon Glacier 為上傳部分計算的 SHA256 樹雜湊。

類型:字串

回應內文

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

範例

以下請求上傳 4 MB 的分段。請求會設定位元組範圍以將此成為封存的第一個分段。

範例請求

範例傳送 HTTP PUT 請求以上傳 4 MB 的分段。請求是傳送至由起始分段上傳請求所傳回之上傳 ID 的 URI。Content-Range 標頭將分段識別為封存的第一個 4 MB 資料分段。

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 的另一個分段。請求指定之前請求之後的下一個 4 MB 封存和 4 MB 的分段大小。

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

組件可以按任何順序上傳;Amazon 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