Amazon S3 具有各種功能,可供您用來以支援特定使用案例、啟用成本效益、強制執行安全性,以及符合合規要求的方式組織和管理資料。資料會在稱為「儲存貯體」的資源內存放為物件,而且單一物件的大小最高可達 5 TB。S3 功能包括能夠將中繼資料標籤附加至物件、跨 S3 儲存類別移動和存放資料、設定和強制執行資料存取控制、保護資料免受未獲授權使用者存取、執行大數據分析,在物件和儲存貯體層級監控資料,以及檢視整個組織的儲存用量和活動趨勢。物件可透過 S3 存取點存取或直接透過儲存貯體主機名稱存取。
儲存管理與監控
Amazon S3 的扁平無階層結構以及各種管理功能,有助於各種規模的客戶和產業以對其業務和團隊有價值的方式組織其資料。所有物件都會存放在 S3 儲存貯體中,而且可以利用稱為字首的共用名稱來組織。您也可以將最多 10 個金鑰值對 (稱為 S3 物件標籤) 附加至可在物件的整個生命週期中建立、更新及刪除的每個物件。若要追蹤物件及其各自標籤、儲存貯體和字首,您可以使用 S3 庫存報告,其中列出您在 S3 儲存貯體內存放的物件或具有特定字首的物件,以及其各自中繼資料和加密狀態。S3 庫存可以設定為每天或每週產生報告。
儲存管理
使用 S3 儲存貯體名稱、字首、物件標籤和 S3 Inventory 時,您有各種方式來分類和報告資料,之後還可設定其他 S3 功能來採取動作。 無論是存放數千個物件還是十億個物件,S3 批次操作都能讓您在 Amazon S3 中輕鬆地管理任何規模的資料。使用 S3 批次操作,只需提出單一 S3 API 請求,或在 S3 主控台執行幾個步驟,您便可以在儲存貯體之間複製物件、取代物件標籤集、修改存取控制,以及從 S3 Glacier Flexible Retrieval 和 S3 Glacier Deep Archive 儲存類別中還原已封存的物件。您也可以使用 S3 批次操作來跨物件執行 AWS Lambda 函數,以執行自訂商業邏輯,例如處理資料或將影像檔案轉碼。若要開始,請使用 S3 Inventory 報告或提供自訂清單,來指定目標物件的清單,然後從預先填入的選單中選取所需的操作。當 S3 批次操作請求完成時,您將收到所有變更已進行的通知和完成報告。透過觀看影片教學進一步了解 S3 批次操作。
Amazon S3 也支援有助於維護資料版本控制、防止意外刪除以及複寫相同或不同 AWS 區域中資料的功能。您可以使用 S3 版本控制保留、擷取和還原 Amazon S3 中存放之物件的每個版本,這可讓您從非計畫性的使用者動作和應用程式失敗中還原。若要防止意外刪除,請在 S3 儲存貯體上啟用多重要素驗證 (MFA) 刪除。如果儲存貯體已啟用 MFA 刪除功能,當您嘗試刪除存放其中的物件時,將會需要兩種形式的身份驗證:您的 AWS 帳戶登入資料,以及核准驗證裝置所顯示的一連串有效序號、空格和六位數代碼,如硬體金鑰符記或通用第二因素 (U2F) 安全金鑰。
您可以使用 S3 複寫,將物件 (及其各自中繼資料和物件標籤) 複寫到相同或不同 AWS 區域中的一個或多個目標儲存貯體,以滿足減少延遲、合規、安全、災難復原和其他使用案例的需求。您可以將 S3 跨區域複寫 (CRR) 設定為將物件從來源 S3 儲存貯體複寫到不同 AWS 區域中的一個或多個目標儲存貯體。S3 相同區域複寫 (SRR) 可在相同 AWS 區域的儲存貯體之間複寫物件。雖然像 CRR 和 SRR 這樣的即時複寫會在新上傳的物件寫入儲存貯體時自動複寫它們,但 S3 批次複寫允許您複寫現有物件。您可以使用 S3 批次複寫來使用現有物件回填新建立的儲存貯體,重試以前無法複寫的物件,跨帳戶遷移資料,或者向資料湖新增新儲存貯體。Amazon S3 複寫時間控制 (S3 RTC) 提供 SLA,還可查看複寫時間,協助您達成資料複寫的合規規定。
若要跨 AWS 區域存取 S3 儲存貯體中的複寫資料集,請使用 Amazon S3 多區域存取點建立單一全球端點,讓您的應用程式和客戶無論身處何處都能使用。此全球端點可讓您使用您會在單一區域中使用的相同簡單架構,建置多區域應用程式,然後在全世界任何地方執行這些應用程式。Amazon S3 多區域存取點在存取跨越多個 AWS 區域複寫的資料集時,Amazon S3 多區域存取點最多可將效能加速 60%。以 AWS Global Accelerator 為基礎的 S3 多區域存取點,可以考量網路壅塞和請求應用程式的位置等因素,而透過 AWS 網路,將您的請求動態路由至延遲最低的資料複本。使用 S3 多區域存取點容錯移轉控制,您可以跨 AWS 區域在複寫的資料集之間進行容錯移轉,讓您在幾分鐘內將 S3 資料請求流量轉移到替代 AWS 區域。
您也可以使用 S3 Object Lock,來強制執行單次寫入多次讀取 (WORM) 政策。S3 管理功能會讓您無法在客戶定義的保留期內刪除物件版本,因此您能夠強制執行保留政策,為資料增加另一層的保護,或符合合規義務。您可以將工作負載從現有 WORM 系統遷移至 Amazon S3,並於物件層級和儲存貯體層級設定 S3 Object Lock,以避免在預先定義的「保留到期日」或「法務保存日期」之前刪除物件版本。具有 S3 Object Lock 的物件會保留 WORM 保護,即使它們移至具有 S3 生命週期政策的不同儲存類別也一樣。若要追蹤哪些物件具有 S3 Object Lock,您可以參閱 S3 庫存報告,其中包括物件的 WORM 狀態。您可以透過兩個模式來設定 S3 Object Lock。在控管模式下部署時,具有特定 IAM 許可的 AWS 帳戶能夠從物件移除 S3 Object Lock。如果需要更強的不變性才能符合法規,您可以使用「合規模式」。在合規模式下,任何使用者 (包含根帳戶) 都無法移除保護。
儲存監控
除了這些管理功能外,使用 Amazon S3 功能和其他 AWS 服務來監控和控制 S3 資源。將標籤套用至 S3 儲存貯體,以跨多個業務維度 (包括成本中心、應用程式名稱或擁有者) 分配成本,然後使用 AWS Cost Allocation Reports,來檢視儲存貯體標籤所彙總的用量和成本。您也可以使用 Amazon CloudWatch 來追蹤 AWS 資源的操作狀態,並針對達到使用者定義閾值的預估費用設定帳單提醒。使用 AWS CloudTrail 追蹤和報告儲存貯體和物件層級活動,並設定 S3 Event Notifications,以在 S3 資源發生特定變更時觸發工作流程和提醒或叫用 AWS Lambda。S3 Event Notifications 會在媒體檔案上傳到 S3 時自動進行轉碼,在資料檔案可用時進行處理,並將物件與其他資料存放同步。 此外,您可以驗證傳入和傳出 Simple Storage Service (Amazon S3) 的資料完整性,並且可隨時使用 GetObjectAttributes S3 API 或 S3 庫存報告來存取檢查總和資訊。您可以從四種受支援的檢查總和演算法 (SHA-1、SHA-256、CRC32 或 CRC32C) 中進行選擇,以根據您的應用程式需求對上傳和下載請求進行資料完整性檢查。
除了這些管理功能外,您還可以使用 S3 功能和其他 AWS 服務來監控和控制 S3 資源的使用方式。您可以將標籤套用至 S3 儲存貯體,以便跨多個業務維度 (包括成本中心、應用程式名稱或擁有者) 分配成本,然後使用 AWS Cost Allocation Reports,來檢視儲存貯體標籤所彙總的用量和成本。您也可以使用 Amazon CloudWatch 來追蹤 AWS 資源的操作狀態,以及設定當預估費用達到使用者定義的閾值時要傳送給您的帳單提醒。另一個 AWS 監控服務為 AWS CloudTrail,其會追蹤和報告儲存貯體層級和物件層級活動。您可以設定 S3 Event Notifications,以觸發工作流程、提醒,並在對 S3 資源進行特定變更時呼叫 AWS Lambda。S3 Event Notifications 可以用來在媒體檔上傳至 Amazon S3 時自動進行轉碼,在資料檔案可用時進行處理,以及將物件與其他資料存放區進行同步。
儲存分析和洞見
S3 Storage Lens
S3 Storage Lens 提供對整個組織範圍內物件儲存用量和活動趨勢的可視性,並提出可行的建議,以協助您提高成本效益和運用資料保護最佳實務。S3 Storage Lens 可提供組織中數百個甚至數千個帳戶的物件儲存用量和活動的單一檢視,並提供深入分析以在帳戶、儲存貯體甚至前綴層面產生洞見,這在雲端儲存分析解決方案中屬首創。透過超過 14 年協助客戶優化儲存而積累的豐富經驗,S3 Storage Lens 分析整個組織的指標以提供內容相關的建議,以協助您找到降低儲存成本並將最佳實務運用於資料保護的方法。若要進一步了解,請瀏覽儲存分析和洞見頁面。
S3 儲存類別分析
Amazon S3 儲存類別分析會分析儲存存取模式,以協助您判定何時將正確的資料轉移至正確的儲存類別。此 Amazon S3 功能會觀察資料存取模式,以協助您確定何時將存取頻率較低的儲存轉換至成本較低的儲存類別。可使用此結果協助改進 S3 生命週期政策。可以設定儲存類別分析以分析儲存貯體中的所有物件。或者,可以設定篩選條件以將物件分組在一起,以便透過共同前綴、物件標籤或前綴和標籤進行分析。若要進一步了解,請瀏覽儲存分析和洞察頁面。
儲存類別
您可以使用 Amazon S3 跨各種專為特定使用案例和存取模式而設的不同 S3 儲存類別來存放資料:S3 Intelligent-Tiering、S3 Standard、S3 Standard-Infrequent Access (S3 Standard-IA)、S3 One Zone-Infrequent Access (S3 One Zone-IA)、S3 Glacier Instant Retrieval, S3 Glacier Flexible Retrieval、 S3 Glacier Deep Archive, and S3 Outposts。
每個 S3 儲存類別都以對應成本或地理位置,支援特定的資料存取層級。
針對具有不斷變化、未知或不可預測存取模式的資料,例如資料湖、分析或新應用程式,請使用 S3 Intelligent-Tiering,該方案會自動最佳化您的儲存成本。S3 Intelligent-Tiering 會自動在三個低延遲存取方案之間移動您的資料,這些方案針對經常、不常和很少存取進行最佳化。物件的子集一段時間被封存後,您可以啟用專為非同步存取而設計的封存存取方案。
如需更多可預測的存取模式,,您可以在 S3 標準中儲存任務關鍵型生產資料以供經常存取、在 S3 標準 – IA 或 S3 單區域 – IA 中儲存不常存取的資料來節省成本,以及以最低成本將資料封存在封存儲存類別中 – S3 Glacier Instant Retrieval、S3 Glacier Flexible Retrieval 和 S3 Glacier Deep Archive。 您可以使用 S3 儲存類別分析來跨物件監控存取模式,以探索應該移至較低成本儲存類別的資料。然後可以使用此資訊來設定將進行資料轉移的 S3 Lifecycle 政策。S3 生命週期政策也可以用來在物件的生命週期結束時將其終止。
如果您具有現有 AWS 區域無法滿足的資料駐留要求,則可以使用 S3 Outposts 儲存類別,利用 S3 on Outposts 存放內部部署 S3 資料。
若要進一步了解,請造訪 S3 儲存類別、S3 儲存類別分析和 S3 生命週期管理 »
存取管理與安全性
存取管理
為了在 Amazon S3 保護您的資料,系統預設使用者只能存取他們建立的 S3 資源。您可以使用下列其中一個存取管理功能或其組合,將存取權授與其他使用者:AWS Identity and Access Management (IAM),用來建立使用者並管理其各自存取權;存取控制清單 (ACL),用來使個別物件可供授權使用者使用;儲存貯體政策,用來針對單一 S3 儲存貯體內的所有物件設定許可;S3 Access Points,透過建立存取點 (各應用程式或應用程式集均有專屬存取點名稱及許可) 來簡化共享資料集的資料存取管理;查詢字串身分驗證,以便使用暫時 URL 將有時間限制的存取權授與其他使用者。Amazon S3 也支援稽核日誌,其中列出針對 S3 資源提出的請求,讓您完全掌握誰正在存取什麼資料。
安全性
Amazon S3 提供彈性的安全功能,以防止未獲授權的使用者存取您的資料。使用 VPC 端點從 Amazon Virtual Private Cloud (Amazon VPC) 和從內部部署連接至 S3 資源。 Amazon S3 會加密上傳至任何儲存貯體的所有新資料 (截止 2023 年 1 月 5 日)。針對上傳資料,Amazon S3 同時支援伺服器端加密 (具有三個金鑰管理選項) 和用戶端加密。使用 S3 Inventory 來檢查 S3 物件的加密狀態 (如需 S3 Inventory 的詳細資訊,請參閱儲存管理)。
S3 Block Public Access 是一組安全控制,可確保 S3 儲存貯體和物件沒有公有存取。只需在 Amazon S3 管理主控台中按幾下,您就可以將 S3 Block Public Access 設定套用至 AWS 帳戶內的所有儲存貯體,或套用至特定 S3 儲存貯體。一旦將設定套用至 AWS 帳戶,任何現有或新的與帳戶關聯的儲存貯體和物件會繼承防止公有存取的設定。S3 Block Public Access 設定會複寫其他 S3 存取許可,讓帳戶管理員可輕鬆強制執行「無公有存取」政策,而不論物件新增和儲存貯體建立的方式為何,或是否有現有存取許可。S3 Block Public Access 控制是可稽核的、提供進一步的控制層,以及使用 AWS Trusted Advisor 儲存貯體許可檢查、AWS CloudTrail 日誌,以及 Amazon CloudWatch 警示。 您應針對您不想公開存取的所有帳戶和儲存貯體啟用「封鎖公有存取」。
S3 物件擁有權是可停用存取控制清單 (ACL) 的功能,將所有物件的擁有權變更為儲存貯體擁有者,並簡化對存放在 S3 中資料的存取管理。 在您設定 S3 物件擁有權強制執行儲存貯體擁有者時,ACL 將不再影響您的儲存貯體及其中物件的許可。所有存取控制都會使用以資源為基礎的政策、使用者政策,或這些政策的某種組合來定義。 停用 ACL 之前,請先檢閱儲存貯體和物件 ACL。若要識別需要 ACL 進行授權的 Amazon S3 請求,您可以在 、Amazon S3 伺服器存取日誌 或 AWS CloudTrail 中使用 ACL 必要欄位。
使用限制虛擬私有雲端 (VPC) 的 S3 存取點,您可以輕鬆在私有網路內建立防火牆來保護 S3 資料。此外,您現在可以透過 AWS 服務控制政策,要求組織中任何新的 S3 存取點都僅限 VPC 存取。
IAM Access Analyzer for S3 是一項功能,可協助您在為 S3 儲存貯體和存取點設定、驗證和最佳化政策時簡化許可管理。Access Analyzer for S3 會監控您現有儲存貯體的存取政策,以驗證其是否僅提供對 S3 資源所需的存取許可。Access Analyzer for S3 會評估您的儲存貯體存取策略,讓您可以快速修復任何具有非必要存取權限的儲存貯體。查看顯示可能共用存取某個儲存貯體的結果時,您可在 S3 主控台中按一下以封鎖儲存貯體的公有存取。若要進行稽核,您可以下載 Access Analyzer for S3 的問題清單以作為 CSV 報告。 此外,在您編寫 S3 政策時,S3 主控台會報告來自 IAM Access Analyzer 的安全警告、錯誤和建議。主控台自動運行100 多項政策檢查來驗證您的政策。這些檢查可以節省您的時間,指導您解決錯誤,並協助您套用安全最佳實務。
IAM 透過提供使用者或角色上次使用 S3 的時間戳記以及相關的操作,讓您可以更輕鬆地分析存取並減少許可,以實現最低權限。使用此「最後存取」資訊來分析 S3 存取、識別未使用的許可和放心地將其移除。若要深入了解,請參閱使用服務最近存取的資料減少許可。
您可以使用 Amazon Macie 來探索和保護 Amazon S3 中存放的敏感資料。Macie 會自動收集完整的 S3 庫存,並自動、持續評估每個儲存貯體,以針對任何可公開存取的儲存貯體、未加密的儲存貯體,或與您組織的外部 AWS 帳戶共享或複製的儲存貯體進行警示。Macie 接著會將機器學習和模式比對技術套用至您選取的儲存貯體,以識別個人識別資訊 (PII) 等敏感資料並提醒您。產生安全性問題清單後,會將這些清單推出至 Amazon CloudWatch Events 外,以輕鬆與現有工作流程系統整合並觸發對 AWS Step Functions 等服務的自動化修復採取行動,例如關閉公開儲存貯體或新增資源標籤。
AWS PrivateLink for S3 在 Amazon S3 與內部部署之間提供私有連線。您可以在 VPC 中為 S3 設定界面 VPC 端點,以透過 AWS Direct Connect 或 AWS VPN 將內部部署應用程式直接與 S3 連線。以界面連接 S3 VPC 端點的請求會透過 Amazon 網路自動路由到 S3。您可以為您的界面 VPC 端點設定安全群組和 VPC 端點政策,以獲取額外的存取控制。
若要進一步了解,請瀏覽 S3 存取管理與安全性和保護 Amazon S3 中的資料 »
資料處理
S3 Object Lambda
藉助 S3 Object Lambda,您可將自己的程式碼新增至 S3 GET、HEAD 和 LIST 請求,以便在資料傳回應用程式時對其做出修改和處理。您可以使用自訂程式碼修改標準 S3 GET 請求傳回的資料,以執行資料列篩選、動態調整影像大小、修訂機密資料以及更多動作。您也可以使用 S3 Object Lambda 修改 S3 LIST 請求的輸出,以建立儲存貯體中物件的自訂檢視,以及用於修改物件名稱和大小等物件中繼資料的 S3 HEAD 請求。採用 AWS Lambda 函數,您的程式碼在由 AWS 全受管的基礎設施上運行,這就避免了建立和儲存資料的衍生副本或運行昂貴的代理,並且全程無需對應用程式進行任何變更。
S3 Object Lambda 使用 AWS Lambda 函數,自動處理標準 S3 GET、HEAD 或 LIST 請求的輸出。AWS Lambda 是一種無伺服器運算服務,可執行客戶定義的程式碼,而無需管理基礎運算資源。只需在 AWS 管理主控台中按幾下,即可設定 Lambda 函數,並將其連接到 S3 Object Lambda 存取點。從該點起,S3 會自動呼叫您的 Lambda 函數來處理透過 S3 Object Lambda 存取點擷取的任何資料,並將轉換後的結果返回給應用程式。您可以編寫和執行自己的自訂 Lambda 函數,從而根據您的特定使用案例,量身定製 S3 Object Lambda 的資料轉換。
如需進一步了解,請瀏覽 S3 Object Lambda 功能頁面。
就地查詢
Amazon S3 具有內建功能和輔助性服務,讓您無需複製資料,並將其載入至個別分析平台或資料倉儲,即可進行查詢。這表示您可以直接在 Amazon S3 中存放的資料上執行大數據分析。S3 Select 是 S3 功能,其設計旨在提高查詢效能,最高可達 400%,並最多可將查詢成本減少 80%。其運作方式為擷取物件資料的子集 (使用簡單 SQL 表達式),而非整個物件,其大小最多可達 5 TB。
Amazon S3 也與 AWS 分析服務 Amazon Athena 和 Amazon Redshift Spectrum 相容。Amazon Athena 在 Amazon S3 中查詢您的資料,而無需將其擷取和載入到獨立的服務或平台中。它使用標準 SQL 表達式來分析您的資料,在幾秒鐘內提供結果,並且通常用於臨時資料發現。Amazon Redshift Spectrum 還直接針對 Amazon S3 中的靜態資料執行 SQL 查詢,更適合複雜查詢和大型資料集 (高達 EB)。由於 Amazon Athena 和 Amazon Redshift 共享一個通用的資料型錄和資料格式,因此您可以針對 Amazon S3 中的相同資料集使用它們。
若要進一步了解,請造訪建構大數據儲存解決方案和 S3 Select »
資料傳輸
AWS 提供各種資料傳輸服務組合,可為任何資料遷移專案提供適當的解決方案。連線級別是資料遷移的主要因素,AWS 提供的產品可以滿足您的混合雲端儲存、線上資料傳輸和離線資料傳輸需求。
混合雲端儲存:AWS Storage Gateway 是混合雲端儲存服務,讓您能夠無縫連線內部部署應用程式,並將其擴展至 AWS Storage。客戶使用 Storage Gateway 將磁帶庫無縫取代為雲端儲存,提供雲端儲存支援的檔案共用,或建立低延遲快取,以存取 AWS 中的內部部署應用程式資料。
線上資料傳輸:AWS DataSync 可以輕鬆高效地將數百 TB 的資料和數百萬個檔案傳輸至 Amazon S3,其速度比開放原始碼工具快 10 倍。DataSync 可自動處理或免除許多手動任務,包括編寫複製作業的指令碼、排程與監控傳輸作業、驗證資料,以及優化網路使用情形。此外,您可以使用 AWS DataSync,在 S3 Outposts 上的儲存貯體和存儲在 AWS 區域中的儲存貯體之間複製物件。AWS Transfer Family 使用 SFTP、FTPS 及 FTP 以簡易、無縫、全受管的方式將檔案傳輸至 Amazon S3。 Amazon S3 Transfer Acceleration 可在用戶端與 Amazon S3 儲存貯體之間提供快速的長距離檔案傳輸。
離線資料傳輸:AWS Snow Family專為在網路容量受限或不存在的節點使用而設計,並且可在惡劣的環境中提供儲存和運算功能。AWS Snowball 服務使用兼顧耐用性和可攜式的儲存和邊緣運算裝置進行資料收集、處理和遷移。客戶可以運送實體 Snowball 裝置,以將資料離線遷移至 AWS。AWS Snowmobile 是 EB 級資料傳輸服務,讓大量資料移動到雲端變得更加輕鬆,包含影片資料庫、圖片儲存庫,甚至是整個的資料中心移轉也一樣輕鬆。
客戶也可以與來自 AWS Partner Network (APN) 的第三方供應商合作,以部署混合式儲存架構、將 Amazon S3 整合至現有應用程式和工作流程,以及將資料傳入和傳出 AWS 雲端。
效能
Amazon S3 為雲端物件儲存提供產業領先的效能。Amazon S3 支援平行請求,表示您不必自訂應用程式,便可依據您的運算叢集因數擴展 S3 效能。效能可根據個別前綴進行擴展,因此您可以依需求平行使用大量前綴,滿足需要的輸送量。前綴的數量沒有限制。Amazon S3 效能支援每秒至少 3,500 個新增資料的請求和每秒 5,500 個擷取資料的請求。每個 S3 前綴都可支援這些請求率,輕而易舉就能讓效能大幅成長。
為實現此 S3 請求率效能,您不須隨機選擇物件前綴以實現更快的效能。也就是說,您可以使用合邏輯或循序的命名模式為 S3 物件命名,無需擔心效能會受到影響。有關 Amazon S3 效能優化的最新資訊,請參閱 Performance Guidelines for Amazon S3 和 Performance Design Patterns for Amazon S3。
一致性
Amazon S3 自動為所有應用程式提供高先寫後讀一致性,而不會變更效能或可用性,也不會犧牲應用程式的區域隔離性,同時無需支付任何額外費用。憑藉高一致性,S3 透過移除變更應用程序的需要,簡化了內部部署分析工作負載的遷移,並透過移除對提供高一致性的額外基礎架構的需要來降低成本。
對 S3 儲存的任何請求都是高度一致。成功寫入新物件或覆寫現有物件後,任何後續讀取請求都會立即得到該物件的最新版本。S3 還為清單操作提供了高一致性,因此在寫入後,您可以立即列出儲存貯體中的物件,同時反映出所有變更。
進一步了解 S3 高一致性 »
預定用途和限制
使用本服務需遵守 Amazon Web Services 客戶協議 »