全部產品
Search
文件中心

Object Storage Service:RestoreObject

更新時間:Sep 21, 2024

如果未開啟歸檔直讀,歸檔類型的Object需要解凍後才能讀取。冷歸檔、深度冷歸檔不支援開啟直讀,冷歸檔、深度冷歸檔類型的Object需要解凍後才能讀取。涉及讀取的操作包括下載(GetObject)、圖片處理(ProcessImage)、拷貝(CopyObject)、分區拷貝(UploadPartCopy)、查詢(SelectObject)以及通過POST請求進行資料處理(PostProcessTask)。本文介紹執行資料讀取操作之前,如何完成歸檔、冷歸檔以及深度冷歸檔Object的解凍操作。

前提條件

注意事項

  • RestoreObject介面只針對歸檔、冷歸檔和深度冷歸檔類型的Object,不適用於標準類型和低頻訪問類型的Object。

  • 對歸檔、冷歸檔以及深度冷歸檔Object執行非資料讀取請求時(例如DeleteObjectDeleteMultipleObjectsGetObjectMetaHeadObject等),無需解凍就能操作。對於無需解凍就能完成的操作,如果再解凍,將會產生額外不必要的費用。

  • 對於Object第一次調用RestoreObject介面,則返回202。如果已經成功調用過RestoreObject介面,且Object已完成解凍,再次調用時返回200 OK。

  • 對於正在解凍中的Object不支援重複調用RestoreObject介面,需要等待Object解凍完成後再次調用RestoreObject介面。否則報錯409。

  • 對於開啟版本控制的Bucket,Object的各個版本可以對應不同的儲存類型。調用RestoreObject介面預設解凍Object目前的版本,您可以通過指定versionId的方式來解凍Object指定版本。

解凍過程

不同儲存類型的Object的解凍過程相同。Object的解凍過程如下。

  1. 初始時,Object處於冷凍狀態。

  2. 提交一次解凍請求後,Object處於解凍中狀態。

  3. 服務端完成解凍任務後,Object進入解凍狀態。此時您可以讀取Object。

  4. 如果Object處於解凍狀態時,再次提交一次解凍請求,Object的解凍狀態期間在原基礎上累加。延長後的總時間長度不能超過每種儲存類型的解凍狀態期間的最大值。

  5. 解凍狀態結束後,Object再次返回到冷凍狀態。

解凍消耗時間

解凍不同儲存類型的Object所消耗的時間可參考下表。解凍時間請以實際為準。

Object的儲存類型

說明

歸檔類型

1分鐘。

冷歸檔類型

  • 高優先順序(Expedited):表示1小時內完成解凍。

  • 標準(Standard):表示2~5小時內完成解凍。

  • 批量(Bulk):表示5~12小時內完成解凍。

深度冷歸檔類型

  • 高優先順序(Expedited):表示12小時內完成解凍。

  • 標準(Standard):表示48小時內完成解凍。

解凍配額

  • 單個阿里雲帳號在單個地區的冷歸檔類型的Object的解凍配額參考值:平均每秒500個Object,三種解凍優先順序總解凍配額為每天100 TB~120 TB。如您的業務有更高的解凍配額需求,請聯絡支援人員

  • 單個阿里雲帳號在單個地區的深度冷歸檔類型的Object解凍配額參考值:平均每秒100個Object,兩種解凍優先順序總解凍配額為每天10 TB~15 TB。如您的業務有更高的解凍配額需求,請聯絡支援人員

說明

超出冷歸檔以及深度冷歸檔的解凍配額參考值後,仍可以提交解凍請求。解凍請求將排入隊列中,且解凍完成時間可能超出指定優先順序對應的完成時間。

解凍狀態期間

不同儲存類型的Object處於解凍狀態的期間如下。

Object的儲存類型

說明

歸檔類型

取值為1~7的正整數,單位為天。

冷歸檔類型

取值為1~365的正整數,單位為天。

深度冷歸檔類型

取值為1~365的正整數,單位為天。

計費說明

  • 解凍歸檔、冷歸檔、深度冷歸檔類型的Object會產生資料取回容量費用。更多資訊,請參見資料處理費用

  • 解凍歸檔類型的Object會產生Put類型請求次數費用。更多資訊,請參見請求費用

  • 解凍冷歸檔、深度冷歸檔類型的Object會產生取回請求次數費用。更多資訊,請參見請求費用

  • 歸檔類型、冷歸檔、深度冷歸檔類型的Object在解凍過程中以及解凍完成後,均按照相應的儲存類型計算儲存費用。更多資訊,請參見儲存費用

  • 冷歸檔、深度冷歸檔類型的Object在解凍時,會產生一份標準儲存類型的檔案副本用於訪問,該檔案在解凍時間結束前會以標準儲存的儲存費率計算臨時儲存費用。更多資訊,請參見臨時儲存費用

  • 歸檔類型的Object可達到最長7天的解凍期間,冷歸檔、深度冷歸檔類型的Object可達到最長365天的解凍期間,在此期間不再重複收取資料取回費用。

  • 解凍狀態結束後,Object又回到冷凍狀態,再次執行解凍操作會收取資料取回費用。

請求文法

POST /ObjectName?restore HTTP/1.1
Host: archive-bucket.oss-cn-hangzhou.aliyuncs.com
Date: GMT Date
Authorization: SignatureValue

要求標頭

此介面僅包含公用要求標頭。更多資訊,請參見公用要求標頭(Common Request Headers)

請求參數

名稱

類型

是否必選

樣本值

描述

RestoreRequest

容器

不涉及

解凍請求資訊。

子節點:Days、JobParameters

Days

整型

2

設定歸檔、冷歸檔以及深度冷歸檔類型Object的解凍天數。

  • 歸檔類型Object解凍天數的取值範圍為1~7,單位為天。

  • 冷歸檔以及深度冷歸檔類型Object解凍天數的取值範圍為1~365,單位為天。

父節點:RestoreRequest

JobParameters

容器

不涉及

解凍優先順序的容器。僅在解凍冷歸檔、深度冷歸檔類型的Object時有效。

如果不傳入JobParameters節點,則解凍優先順序預設為Standard。

父節點:RestoreRequest

子節點:Tier

Tier

字串

Standard

冷歸檔、深度冷歸檔類型Object解凍優先順序。取值範圍如下:

  • 冷歸檔類型Object

    • 高優先順序(Expedited):表示1小時內完成解凍。

    • 標準(Standard,預設值):表示2~5小時內完成解凍。

    • 批量(Bulk):表示5~12小時內完成解凍。

  • 深度冷歸檔類型Object

    • 高優先順序(Expedited):表示12小時內完成解凍。

    • 標準(Standard,預設值):表示48小時內完成解凍。

父節點:JobParameters

回應標頭

名稱

類型

樣本值

描述

x-oss-object-restore-priority

字串

Standard

解凍優先順序。僅處於解凍狀態的冷歸檔或者深度冷歸檔類型的Object才顯示該欄位。

x-oss-version-id

字串

CAEQNRiBgMClj7qD0BYiIDQ5Y2QyMjc3NGZkODRlMTU5M2VkY2U3MWRiNGRh****

Object的版本ID。僅解凍Object指定版本時才顯示該欄位。

此介面還包含公用回應標頭。更多資訊,請參見公用回應標頭(Common Response Headers)

樣本

  • 第一次對處於冷凍狀態的歸檔類型Object提交解凍請求

    請求樣本

    POST /oss.jpg?restore HTTP/1.1
    Host: oss-archive-example.oss-cn-hangzhou.aliyuncs.com
    Date: Sat, 15 Apr 2017 07:45:28 GMT
    Authorization: OSS qn6q**************:77Dv****************

    返回樣本

    HTTP/1.1 202 Accepted
    Date: Sat, 15 Apr 2017 07:45:28 GMT
    Content-Length: 0
    Connection: keep-alive
    Server: AliyunOSS
    x-oss-request-id: 5374A2880232A65C23002D74
  • 對處於解凍中狀態的歸檔類型Object提交解凍請求

    請求樣本

    POST /oss.jpg?restore HTTP/1.1
    Host: oss-archive-example.oss-cn-hangzhou.aliyuncs.com
    Date: Sat, 15 Apr 2017 07:45:29 GMT
    Authorization: OSS qn6q**************:77Dv****************

    返回樣本

    HTTP/1.1 409 Conflict
    Date: Sat, 15 Apr 2017 07:45:29 GMT
    Content-Length: 556
    Connection: keep-alive
    Server: AliyunOSS
    x-oss-request-id: 5374A2880232A65C23002D74
    <?xml version="1.0" encoding="UTF-8"?>
    <Error>
      <Code>RestoreAlreadyInProgress</Code>
      <Message>The restore operation is in progress.</Message>
      <RequestId>58EAF141461FB42C2B000008</RequestId>
      <HostId>10.101.XX.XX</HostId>
    </Error>
  • 對處於解凍狀態的歸檔類型Object提交解凍請求

    請求樣本

    POST /oss.jpg?restore HTTP/1.1
    Host: oss-archive-example.oss-cn-hangzhou.aliyuncs.com
    Date: Sat, 15 Apr 2017 07:45:29 GMT
    Authorization: OSS qn6q**************:77Dv****************
    <RestoreRequest>
      <Days>2</Days>
    </RestoreRequest>

    返回樣本

    HTTP/1.1 200 Ok
    Date: Sat, 15 Apr 2017 07:45:30 GMT
    Content-Length: 0
    Connection: keep-alive
    Server: AliyunOSS
    x-oss-request-id: 5374A2880232A65C23002D74
  • 對處於解凍狀態的冷歸檔或者深度冷歸檔類型Object提交解凍請求

    請求樣本

    POST /coldarchiveobject?restore HTTP/1.1
    Host: cold-archive-bucket.oss-cn-hangzhou.aliyuncs.com
    User-Agent: aliyun-sdk-go/v2.1.0 (Darwin/17.5.0/x86_64;go1.11.8)/ossutil-v1.6.12
    Content-Length: 99
    Authorization: OSS qn6q**************:77Dv****************
    Content-Type: text/plain; charset=utf-8
    Date: Tue, 21 Apr 2020 11:09:19 GMT
    Accept-Encoding: gzip
    <RestoreRequest>
      <Days>2</Days>
      <JobParameters>
        <Tier>Standard</Tier>
      </JobParameters>
    </RestoreRequest>

    返回樣本

    HTTP/1.1 200 OK
    Server: AliyunOSS
    Date: Tue, 21 Apr 2020 11:09:19 GMT
    Content-Length: 0
    Connection: keep-alive
    x-oss-request-id: 5E9ED45F093E2F3930318EA0
    x-oss-object-restore-priority: Standard
    x-oss-server-time: 10
  • 指定versionId來解凍指定版本的Object

    請求樣本

    POST /oss.jpg?restore&versionId=CAEQNRiBgMClj7qD0BYiIDQ5Y2QyMjc3NGZkODRlMTU5M2VkY2U3MWRiNGRh**** HTTP/1.1
    Host: oss-archive-example.oss-cn-hangzhou.aliyuncs.com
    Date: Tue, 09 Apr 2019 06:50:48 GMT
    Authorization: OSS qn6q**************:77Dv****************

    返回樣本

    HTTP/1.1 202 Accepted
    Date: Tue, 09 Apr 2019 06:50:48 GMT
    Content-Length: 0
    Connection: keep-alive
    Server: AliyunOSS
    x-oss-version-id: CAEQNRiBgMClj7qD0BYiIDQ5Y2QyMjc3NGZkODRlMTU5M2VkY2U3MWRiNGRh****
    x-oss-request-id: 5CAC40C8B7AEADE017000653

SDK

此介面對應的各語言SDK如下:

錯誤碼

錯誤碼

HTTP狀態代碼

描述

OperationNotSupported

400

目標Object不支援解凍,該Object不是歸檔、冷歸檔或者深度冷歸檔類型。

NoSuchKey

404

目標Object不存在。

RestoreAlreadyInProgress

409

您已經成功調用過RestoreObject介面,且服務端正在執行解凍操作。請不要重複提交RestoreObject。

相關文檔