使用 Amazon S3 儲存體方案 - Amazon Simple Storage Service

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

使用 Amazon S3 儲存體方案

Amazon S3 中的每個物件都有與其相關聯的儲存體方案。例如,若您列出 S3 儲存貯體中的物件,主控台會在清單中顯示所有物件的儲存體方案。Amazon S3 為您存放的物件提供各種儲存體方案。您可以根據使用案例情境和效能存取需求,來選擇類別。所有儲存體方案都提供高耐用性。

下列各節將詳細說明各種儲存體方案,以及如何設定物件的儲存體方案。

經常存取物件的儲存體方案

對於需要高效能的使用案例 (需要毫秒存取時間) 以及經常存取的資料,Amazon S3 提供以下儲存體方案:

  • S3 標準 - 預設儲存體類別。若在上傳物件時未指定儲存體方案,Amazon S3 會指派 S3 Standard 儲存體方案。

  • S3 Express One Zone:Amazon S3 Express One Zone 是一種高效能的單一區域 Amazon S3 儲存類別,專門為對延遲最敏感的應用程式提供一致的個位數毫秒資料存取。S3 Express One Zone 是目前可用的最低延遲雲端物件儲存類別,資料存取速度提高 10 倍,而且請求成本比 S3 標準低 50%。使用 S3 Express One Zone,您的資料會以備援方式儲存在單一可用區域內的多部裝置上。如需詳細資訊,請參閱 什麼是 S3 Express One Zone?

  • 低冗餘 - 低冗餘儲存 (RRS) 儲存體類別是專為非關鍵且可重現的資料所設計,能以低於 S3 標準儲存體類別的備援層級存放。

    重要

    不建議使用此儲存體類別。S3 標準儲存體類別比較符合成本效益。

    為達到耐用性,RRS 物件的平均年物件遺失率預計為百分之 0.01。如果遺失了 RRS 物件,Amazon S3 會在對該物件提出請求時傳回 405 錯誤。

存取模式會變更或不明的自動最佳化資料的儲存體方案

S3 Intelligent-Tiering 是一種 Amazon S3 儲存體類別,旨在透過自動將資料移至最具成本效益的存取層,使儲存成本最佳化,且不會影響效能或帶來額外負荷。S3 Intelligent-Tiering 是唯一的雲端儲存體類別,當存取模式改變時,其可在精細物件層級上兩個存取層之間移動資料,以自動節省成本。對於存取模式不明或不斷變化的資料,S3 Intelligent-Tiering 是最佳化儲存成本的理想儲存體類別。S3 Intelligent-Tiering 不收取擷取費。

只需每月支付少許的物件監控和自動化費用,S3 Intelligent-Tiering 即可監控存取模式,並自動將未存取的物件移至低成本存取層。S3 Intelligent-Tiering 可在三個低延遲和高輸送量存取層中自動節省儲存成本。對於可非同步存取的資料,您可以選擇啟用 S3 Intelligent-Tiering 儲存方案內的自動封存功能。S3 Intelligent-Tiering 旨在提供的設計可提供 99.9% 的可用性和 99.999999999% 的耐用性。

S3 Intelligent-Tiering 會自動將物件存放在三個存取層:

  • 經常存取 - 上傳或轉換到 S3 Intelligent-Tiering 的物件自動存放在經常存取層。

  • 不常存取 - S3 Intelligent-Tiering 會將連續 30 天未存取的物件移到不常存取層。

  • Archive Instant Access - 使用 S3 Intelligent-Tiering,連續 90 天未存取的任何現存物件都會自動移至 Archive Instant Access 層。

除了這三個存取層之外,S3 Intelligent-Tiering 也會提供兩個選用的封存存取層:

  • Archive Access - S3 Intelligent-Tiering 可讓您選擇啟用 Archive Access 層,以取得可以非同步存取的資料。啟用後,封存存取層會自動封存至少連續 90 天未存取過的物件。

  • Deep Archive Access - S3 Intelligent-Tiering 可讓您選擇啟用 Deep Archive Access 層,以取得可以非同步存取的資料。啟用後,Deep Archive 存取層會自動封存至少連續 180 天未存取過的物件。

注意
  • 只有在您想要略過 Archive Instant 存取層時,才啟用封存存取層 90 天。封存存取層提供的儲存成本略低,且 minute-to-hour 擷取時間較低。Archive Instant Access 層可提供毫秒存取和高輸送量效能。

  • 只有當應用程式可以非同步存取物件時,才可啟用 Archive Access 和 Deep Archive Access 層。如果您要擷取的物件存放在 Archive Access 或 Deep Archive Access 層中,請先使用 RestoreObject 還原物件。

您可以將新建立的資料移至 S3 Intelligent-Tiering,將它設定為預設儲存體類別。您也可以選擇使用 PutBucketIntelligentTieringConfigurationAPI 操作、或 Amazon S3 主控台啟用一個或兩個存檔存取層。 AWS CLI如需有關使用 S3 Intelligent-Tiering 和啟用封存存取層的資訊,請參閱 使用 S3 Intelligent-Tiering

若要存取 Archive Access 或 Deep Archive Access 層中的物件,您必須先將它們還原。如需詳細資訊,請參閱 從 S3 Intelligent-Tiering 封存存取層和 Deep Archive 存取層還原物件

注意

若物件大小低於 128 KB,便不會受到監控且不符合自動分層的資格。較小的物件一律存放在經常存取層中。如需 S3 Intelligent-Tiering 的詳細資訊,請參閱 S3 Intelligent-Tiering 存取層

不常存取物件的儲存體方案

S3 標準 – IAS3 單區域 – IA 儲存體方案是針對存活時間較長且不常存取的資料所設計。(IA 表示不常存取。) S3 標準 – IA 和 S3 單區域 – IA 物件可供毫秒存取 (類似於 S3 標準型儲存體方案)。Amazon S3 對於這些物件會收取擷取費用,因此最適用於不常存取的資料。如需定價資訊,請參閱 Amazon S3 定價

例如,您可以選擇 S3 標準 – IA 和 S3 單區域 – IA 儲存體方案來執行下列作業:

  • 用於存放備份。

  • 用於較舊且不常存取,但仍需要毫秒存取的資料。例如,當您上傳物件時,可以選擇 S3 Standard 儲存體方案,並使用生命週期組態告訴 Amazon S3 將轉換為 S3 標準型 – IA 或 S3 單區域型 – IA 方案。

    如需生命週期管理的詳細資訊,請參閱「管理儲存生命週期」。

注意

S3 標準 – IA 和 S3 單區域 – IA 儲存體方案適合大於 128 KB 且至少打算存放 30 天的大型物件。如果物件小於 128 KB,Amazon S3 還是會按 128 KB 計算收費。如果您在 30 天的最低儲存體持續期間結束前刪除物件,仍會收取 30 天的費用。在 30 天前刪除、覆寫或轉換至其他儲存類別的物件會產生一般儲存使用費,再加上最少 30 天的其餘部分按比例計費。如需定價資訊,請參閱 Amazon S3 定價

這些儲存體方案不同之處如下:

  • S3 標準 - IA - Amazon S3 會以備援方式在多個不同地理位置的可用區域存放物件資料 (與 S3 標準儲存體類別相似)。S3 標準 – IA 物件可在遺失可用區域時迅速恢復。此儲存體方案提供比 S3 單區域 – IA 方案更高的可用性和彈性。

  • S3 單區域 - IA - Amazon S3 僅將物件資料存放在一個可用區域,而比 S3 標準 – IA 更經濟實惠。然而,該資料無法在碰到可用區域因地震和水災等災害而產生實體損失時恢復。S3 單區域 - IA 儲存體類別與 S3 標準 - IA 一樣耐用,但是具備較低的可用性和彈性。如需儲存體方案耐用性和可用性的比較,請參閱本節末尾的 比較 Amazon S3 儲存方案。如需定價資訊,請參閱 Amazon S3 定價

我們建議下列作法:

  • S3 標準 - IA - 用於您的主要資料或無法重建之資料的唯一複本。

  • S3 單區域 - IA - 如果可用區域失敗時可重建資料,請使用此類別,也可在設定 S3 跨區域複寫 (CRR) 時用於物件複寫。

封存物件的儲存體方案

S3 Glacier Instant RetrievalS3 Glacier Deep ArchiveS3 Glacier Deep Archive 儲存類別是為了低成本資料封存所設計。這些儲存類別可提供與 S3 Standard 和 S3 標準 – IA 儲存類別相同的耐久性和彈性。如需儲存體方案耐用性和可用性的比較,請參閱 比較 Amazon S3 儲存方案

注意

當您使用 S3 冰川儲存類別時,您的物件會保留在 Amazon S3 中。您無法透過個別的 Amazon S3 Glacier 服務直接存取物件。如需 Amazon S3 冰川服務的相關資訊,請參閱 Amazon S3 冰川開發人員指南

S3 冰川儲存類別的差異如下:

  • S3 Glacier Instant Retrieval - 用於很少存取且需要毫秒擷取的封存資料。與 S3 標準 – IA 類別相比,存放在 S3 Glacier Instant Retrieval 儲存類別中的資料可節省成本,其延遲和輸送量效能與 S3 標準 – IA 儲存類別相同。S3 Glacier Instant Retrieval 具有比 S3 標準 – IA 更高的資料存取成本。

    如需定價資訊,請參閱 Amazon S3 定價

  • S3 Glacier Flexible Retrieval - 用於可能需要在幾分鐘內擷取部分資料的封存。存放在 S3 Glacier Flexible Retrieval 儲存體類別資料的最低儲存持續期間為 90 天,並且可以使用快速擷取,最快在 1 到 5 分鐘存取。擷取時間非常靈活,您可以在 5-12 小時內請求免費大量擷取。如果您在 90 天最低期限前刪除、覆寫物件,或將其轉移至不同的儲存體類別,將會向您收取 90 天的費用。 AWS 帳戶 對於 S3 冰川靈活擷取,Amazon S3 支援每秒高達 1,000 筆交易的還原請求。

    如需定價資訊,請參閱 Amazon S3 定價

  • S3 Glacier Deep Archive - 用於很少需要存取的封存資料。存放在 S3 Glacier Deep Archive 儲存體方案的資料最低儲存體持續期間為 180 天,並且預設的擷取時間為 12 小時。如果您在 180 天最低期限前刪除、覆寫物件,或將其轉移至不同的儲存體類別,將會向您收取 180 天的費用。對於 S3 Glacier Deep Archive,Amazon S3 支援速率高達每個 AWS 帳戶 每秒 1,000 筆交易的還原請求。

    如需定價資訊,請參閱 Amazon S3 定價

    S3 Glacier Deep Archive 為 AWS中最低成本的儲存體選項。S3 Glacier Deep Archive 的儲存成本較使用 S3 Glacier Flexible Retrieval 儲存類別更經濟實惠。您可以使用可在 48 小時內傳回資料的大量擷取,藉此減少 S3 Glacier Deep Archive 的擷取成本。

擷取已封存的物件

您可以使用章節 設定物件的儲存體方案 中其他儲存類別相同的方式,將物件的儲存類別設為 S3 Glacier Flexible Retrieval 或 S3 Glacier Deep Archive。但是,您無法即時存取 S3 Glacier Flexible Retrieval 和 S3 Glacier Deep Archive 物件。您必須先還原 S3 Glacier Flexible Retrieval 和 S3 Glacier Deep Archive 物件,才能進行存取。(S3 標準、低冗餘儲存 (RRS)、S3 標準 - IA、S3 單區域 - IA、S3 Glacier Instant Retrieval 和 S3 Intelligent-Tiering 物件可隨時存取。) 如需更多有關擷取存檔物件的詳細資訊,請參閱 還原已封存的物件

重要

選擇 S3 Glacier Flexible Retrieval 或 S3 Glacier Deep Archive 儲存類別時,您的物件會保留在 Amazon S3 中。您無法透過個別的 Amazon S3 Glacier 服務直接存取物件。

開始使用 S3 Glacier 儲存體類別

若要進一步了解如何使用 Amazon S3 Glacier 儲存體類別,請參閱教學課程:開始使用 Amazon S3 Glacier 儲存體類別

Amazon S3 on Outposts 的儲存方案

使用 Amazon S3 on Outposts,您可以在 AWS Outposts 資源上建立 S3 儲存貯體,並針對需要本機資料存取、本機資料處理和資料存放區的應用程式存放和擷取物件現場部署。您可以使用與 Amazon S3 相同的 AWS Outposts API 操作和功能,包括存取政策、加密和標記。您可以透過 AWS Management Console、 AWS CLI、 AWS 開發套件或 REST API 在 Outposts 上使用 S3。

S3 on Outposts 提供新的儲存體方案 S3 Outposts (OUTPOSTS)。S3 Outposts 儲存體方案僅適用於存放在 Outposts 儲存貯體中的物件。如果您嘗試將此儲存類別與中的 S3 儲存貯體搭配使用 AWS 區域,就會發生錯InvalidStorageClass誤。此外,如果您嘗試一起使用其他 S3 儲存體方案與儲存在 S3 on Outposts 中的物件,也會導致發生相同的錯誤。

存放在 S3 Outposts (OUTPOSTS) 儲存體方案中的物件一律使用伺服器端加密與 Amazon S3 受管加密金鑰 (SSE-S3) 進行加密。如需詳細資訊,請參閱 使用 Amazon S3 受管金鑰 (SSE-S3) 進行伺服器端加密

您也可以明確選擇使用伺服器端加密與客戶提供的加密金鑰 (SSE-C) 來加密存放在 S3 Outposts 儲存體方案中的物件。如需詳細資訊,請參閱 搭配客戶提供的金鑰 (SSE-C) 使用伺服器端加密

注意

Outposts 上的 S3 不支援使用 AWS Key Management Service (AWS KMS) 金鑰 (SSE-KMS) 進行伺服器端加密。

如需 S3 on Outposts 的詳細資訊,請參閱 什麼是 Amazon S3 on Outposts?

比較 Amazon S3 儲存方案

下表比較儲存體方案,包括其可用性、耐用性、最低儲存體持續期間及其他考量。

儲存方案 設計用途 耐用性 (設計目的) 可用性 (設計目的) 可用區域 最低儲存期間 最低應計費的物件大小 其他考量

S3 Standard

經常存取的資料 (每月超過一次)可毫秒存取

99.999999999%

99.99%

>= 3

S3 標準 – IA

長期存在、不常存取的資料 (每個月一次),可毫秒存取

99.999999999%

99.9%

>= 3

30 天

128 KB

適用每 GB 的擷取費用。

S3 Intelligent-Tiering

存取模式未知、不斷變化或無法預測的資料

99.999999999%

99.9%

>= 3

適用每個物件的監控與自動化費用。無擷取費用。

S3 單區域 – IA

可重新建立、不常存取的資料 (每個月一次),可毫秒存取

99.999999999%

99.5%

1

30 天

128 KB

適用每 GB 的擷取費用。無法在遺失可用區域時恢復。

S3 Express One Zone

單一可用區域內對延遲敏感的應用程式提供個位數毫秒的資料存取 AWS

99.999999999%

99.95%

1

S3 快速單區域物件存放在您選擇的單一 AWS 可用區域中。

S3 Glacier Instant Retrieval

長期存在、封存的資料 (每季度存取一次),可毫秒存取 99.999999999%

99.9%

>= 3

90 天

128 KB

適用每 GB 的擷取費用。

S3 Glacier Flexible Retrieval

長期存在的封存資料 (每年存取一次),擷取時間為幾分鐘到幾小時 99.999999999%

99.99% (還原物件後)

>= 3

90 天

不適用

適用每 GB 的擷取費用。必須先還原已封存的物件,才可加以存取。如需相關資訊,請參閱「還原已封存的物件」。

S3 Glacier Deep Archive

長期存在的封存資料 (每年存取少於一次),擷取時間為幾小時 99.999999999%

99.99% (還原物件後)

>= 3

180 天

不適用

適用每 GB 的擷取費用。必須先還原已封存的物件,才可加以存取。如需相關資訊,請參閱「還原已封存的物件」。

RRS (不建議使用)

非關鍵性、經常存取的資料,可毫秒存取

99.99%

99.99%

>= 3

* 對於每個封存的物件,S3 Glacier Flexible Retrieval 需要 40 KB 的額外中繼資料。這包括按 S3 Glacier Flexible Retrieval 費率計費的 32 KB 中繼資料 (識別和擷取資料所需),以及按 S3 標準費率計費的額外 8 KB 資料。對於封存至 S3 Glacier Flexible Retrieval 的物件,若要維護使用者定義的名稱和中繼資料,需要 S3 標準費率。如需儲存體類別的詳細資訊,請參閱 Amazon S3 儲存體類別

** S3 Glacier Deep Archive 存每個存檔物件需要 40 KB 的額外中繼資料。這包括按 S3 Glacier Deep Archive 費率計費的 32 KB 中繼資料 (識別和擷取資料所需),以及按 S3 標準費率計費的額外 8 KB 資料。對於封存至 Amazon S3 Glacier Deep Archive 的物件,若要維護使用者定義的名稱和中繼資料,需要 S3 標準費率。如需儲存體類別的詳細資訊,請參閱 Amazon S3 儲存類別

請注意,除了 S3 One Zone-IA 和 S3 Express One Zone 以外,所有儲存類別都具備彈性設計,可避免因災難造成的可用區域實體損失。此外,除了您應用程式案例的效能需求之外,請考慮成本。如需了解儲存體方案定價,請參閱 Amazon S3 定價

設定物件的儲存體方案

若要設定和更新物件儲存類別,您可以使用 Amazon S3 主控台、 AWS 開發套件或 AWS Command Line Interface (AWS CLI)。所有這些方法都使用 Amazon S3 API 操作將請求傳送到 Amazon S3。

Amazon S3 API 操作支援依如下方式設定 (或更新) 物件的儲存體類別:

  • 當建立新物件時,您可以指定其儲存體方案。例如,當使用 PUT 物件POST 物件Initiate Multipart Upload API 操作建立物件時,您可以新增 x-amz-storage-class 請求標頭來指定儲存體類別。若您沒有新增此標頭,Amazon S3 會使用 S3 標準型,即預設的儲存體類別。

  • 您也可以使用 PUT 物件 - 複製 API 操作來建立物件複本,將已存放在 Amazon S3 中的物件變更為任何其他儲存體類別。不過,您無法使用 PUT 物件 - 複製來複製存放在 S3 Glacier Flexible Retrieval 或 S3 Glacier Deep Archive 儲存體類別的物件。您也無法從 S3 單區域 – IA 轉換為 S3 Glacier Instant Retrieval。

    您使用相同的金鑰名稱,並指定如下的請求標頭,來複製相同儲存貯體中的物件:

    • x-amz-metadata-directive 標頭設為 COPY

    • x-amz-storage-class 標頭設為您想要使用的儲存體類別。

    在已啟用版本控制的儲存貯體中,您無法變更特定物件版本的儲存體方案。當您複製物件時,Amazon S3 會為其提供新的版本 ID。

  • 如果物件大小小於 160 GB,您可以使用 Amazon S3 主控台變更物件的儲存類別。如果物件大小大於 160 GB,建議您新增 S3 生命週期組態,來變更物件的儲存類別。

  • 您可以在儲存貯體中新增 S3 生命週期組態,來指示 Amazon S3 變更物件的儲存方案。如需詳細資訊,請參閱「管理儲存生命週期」。

  • 設定複寫組態時,您可以將複寫物件的儲存體方案設定為任何其他儲存體方案。不過,您無法複製存放在 S3 Glacier Instant Retrieval 或 S3 Glacier Deep Archive 儲存類別的物件。如需詳細資訊,請參閱 複寫組態

將存取政策許可限制為特定儲存類別

當您授與 Amazon S3 操作的存取政策許可時,可以使用 s3:x-amz-storage-class 條件金鑰來限制儲存上傳物件時要使用的儲存類別。例如,當您授予 s3:PutObject 許可時,您可以限制物件上傳至特定儲存體類別。如需政策範例,請參閱 範例 5:限制物件上傳到使用特定儲存體方案的物件

如需有關在政策中使用條件的詳細資訊,以及 Amazon S3 條件金鑰的完整清單,請參閱下列主題: