本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用批次複寫來複寫現有物件
S3 批次複寫不同於即時複寫,後者會跨 Amazon S3 儲存貯體持續自動複寫新物件。反之,系統會隨現有物件的需求進行 S3 批次複寫。您可以使用 S3 批次複寫來複寫下列類型的物件:
-
在設定複寫組態之前已存在的物件
-
先前已複寫的物件
-
複寫失敗的物件
您可以使用批次操作任務,隨需複寫這些物件。
若要開始使用批次複寫,您可以:
-
啟動新複寫規則或目的地的批次複寫 – 在新複寫批次組態中建立第一個規則,或透過 Amazon S3 主控台將新目的地儲存貯體新增到現有組態時,您可以建立一次性的批次複寫任務。
-
啟動現有複寫組態的批次複寫 – 您可以透過 Amazon S3 主控台、 AWS Command Line Interface (AWS CLI) AWS 、 SDKs 或 Amazon S3 REST API 使用 S3 批次操作來建立新的批次複寫任務。 Amazon S3
當批次複寫任務完成時,您將收到一份完成報告。如需如何使用報告來檢查任務的詳細資訊,請參閱追蹤任務狀態和完成報告。
S3 批次複寫注意事項
使用 S3 批次複寫之前,請檢閱下列考量事項清單:
-
如果您為儲存貯體設定了 S3 生命週期,建議您在批次複寫任務處於活動狀態時停用生命週期規則。執行此動作將確保來源與目的地儲存貯體之間保持同位。否則,這些儲存貯體可能會有所不同,且目的地儲存貯體不會是來源儲存貯體的確切複本。例如,考量以下情境:
-
您的來源儲存貯體有多個版本的物件,並在該物件上有一個刪除標記。
-
您的來源和目的地儲存貯體具有生命週期組態,可移除過期的刪除標記。
在此情況下,批次複寫可能會在複寫物件版本之前,將刪除標記複寫到目的地儲存貯體。此行為可能會導致生命週期組態將刪除標記標示為過期,並在複寫物件版本之前,從目的地儲存貯體移除刪除標記。
-
-
您指定執行批次操作任務的 AWS Identity and Access Management (IAM) 角色必須具備必要的許可,才能執行基礎批次複寫操作。如需建立 IAM 角色的詳細資訊,請參閱 設定 S3 批次複寫的 IAM 角色。
-
批次複寫需要一個可由 Amazon S3 產生的資訊清單。產生的資訊清單必須存放在 AWS 區域 與來源儲存貯體相同的 中。如果您選擇不產生資訊清單,則可以提供包含您希望複寫之物件的 Amazon S3 庫存清單報告或 CSV 檔案。如需詳細資訊,請參閱指定批次複寫任務的資訊清單。
-
批次複寫不支援透過指定來自目的地儲存貯體之物件的版本 ID,以重新複寫已刪除的物件。若要重新複寫這些物件,您可以使用批次複製 (Batch Copy) 任務將來源物件複製到位。將這些物件複製到位後,會在來源儲存貯體中建立物件的新版本,並自動啟動複寫到目的地的操作。刪除並重新建立目的地儲存貯體不會啟動複寫。
如需批次複製的詳細資訊,請參閱使用批次操作複製物件的範例。
-
如果您在來源儲存貯體上使用複寫規則,請務必將複寫物件所需的適當許可授予附加至複寫規則和的 IAM 角色,以更新複寫組態。IAM 角色必須具有必要許可,才能夠在來源儲存貯體和目的地儲存貯體上執行複寫。
-
若您在短時間內為同一儲存貯體提交多個批次複寫任務,Amazon S3 將同時執行這些任務。
-
請注意,若您為兩個不同儲存貯體提交多個批次複寫任務,Amazon S3 可能無法同時執行所有任務。若您超過帳戶一次可以執行的批次複寫任務數量,Amazon S3 將暫停優先順序較低的任務,並處理優先順序較高的任務。在完成優先順序較高的任務後,暫停的任務會再次變更為作用中狀態。
-
S3 Glacier Flexible Retrieval 和 S3 Glacier Deep Archive 儲存類別中存放的物件不支援批次複寫。
-
若要批次複寫儲存在 Archive Access 或 Deep Archive 儲存層中的 S3 Intelligent-Tiering 物件,您必須發起還原請求,然後等待物件移至經常存取層。
指定批次複寫任務的資訊清單
清單檔案是 Amazon S3 物件,其中包含您希望 Amazon S3 採取行動的物件索引鍵。如果您希望建立批次複寫任務,則必須提供使用者產生的資訊清單,或讓 Amazon S3 根據您的複寫組態產生資訊清單。
如果您提供使用者產生的資訊清單,則必須採用 Amazon S3 庫存清單報告或 CSV 檔案的形式。若您資訊清單中的物件位於啟用版本控制的儲存貯體,您必須指定物件的版本 ID。只有在資訊清單檔案中指定版本 ID 的物件才會受到複寫。若要進一步了解如何指定資訊清單,請參閱指定資訊清單。
如果您選擇讓 Amazon S3 代表您產生資訊清單檔案,則列出的物件將使用與來源儲存貯體複寫組態相同的來源儲存貯體、字首和標籤。有了產生的資訊清單,Amazon S3 會複寫您物件的所有符合條件的版本。
注意
如果您選擇讓 Amazon S3 產生資訊清單,資訊清單必須與 AWS 區域 來源儲存貯體存放在相同的 中。
批次複寫任務的篩選條件
建立批次複寫任務時,您可以選擇指定其他篩選條件,例如物件建立日期和複寫狀態,以縮小任務的範圍。
您可以根據 ObjectReplicationStatuses
值來篩選要複寫的物件,方法是提供下列一或多個值:
-
"NONE"
– 表示 Amazon S3 之前從未嘗試複寫該物件。 -
"FAILED"
– 表示 Amazon S3 曾嘗試過複寫物件,但失敗。 -
"COMPLETED"
– 表示 Amazon S3 之前已成功複寫該物件。 -
"REPLICA"
– 表示此物件是 Amazon S3 從其他來源儲存貯體複寫的複本。
如需複寫狀態的詳細資訊,請參閱取得複寫狀態資訊。
如果您未篩選批次複寫任務,批次操作會嘗試複寫資訊清單中符合複寫組態中規則的所有物件 (無論其 ObjectReplicationStatus
為何),但預設未複寫的某些物件除外。如需詳細資訊,請參閱 使用複寫組態不會複寫什麼項目?
根據您的目標而定,您可以將 ObjectReplicationStatuses
設定為下列其中一個或多個值:
-
若要僅複寫從未複寫過的現有物件,則僅包含
"NONE"
。 -
若要重試僅複寫先前複寫失敗的物件,則僅包含
"FAILED"
。 -
若要複寫現有物件並重試複寫先前複寫失敗的物件,請同時包含
"NONE"
和"FAILED"
。 -
若要使用已複寫到另一個目的地的物件來回填目的地儲存貯體,請包含
"COMPLETED"
。 -
若要複寫之前已複寫過的物件,請包含
"REPLICA"
。
批次複寫完成報告
當您建立批次複寫任務時,您可以請求 CSV 完成報告。此報告會顯示物件、複寫成功或失敗代碼、輸出,以及描述。如需任務追蹤和完成報告的詳細資訊,請參閱完成報告。
如需複寫失敗代碼和描述的清單,請參閱Amazon S3 複寫失敗原因。
如需針對批次複寫進行疑難排解的詳細資訊,請參閱批次複寫錯誤。
開始使用批次複寫
若要進一步了解如何使用批次複寫,請參閱教學:使用 S3 批次複寫複寫 Amazon S3 儲存貯體中的現有物件