本頁面說明 Cloud Storage 及其運作方式。
Cloud Storage 的運作方式
Cloud Storage 是Google Cloud 提供的可擴充代管儲存服務,可讓您在稱為值區的容器中,以物件形式儲存資料。
所有值區都與專案相關聯,您可以在機構底下為專案分組。建立專案後,您可以建立 bucket、將物件上傳至 bucket,以及從 bucket 下載物件。您也可以授予權限,讓指定主體存取資料,或讓公開網際網路中的所有使用者存取資料。目錄功能可讓您更像使用硬碟或網路連接儲存裝置 (NAS) 一樣使用 Cloud Storage:您可以使用資料夾在目錄結構中整理物件,並使用代管資料夾簡化物件的存取權控管。
每個專案、值區、物件、資料夾和受管理資料夾都是Google Cloud中的資源,就跟 Compute Engine 執行個體之類的性質一樣。
階層 Google Cloud
以下說明 Cloud Storage 結構如何套用至實際案例:
機構組織:貴公司 (例如 Example Inc.) 建立名為
exampleinc.org的機構組織。 Google Cloud專案:Example Inc. 正在建構多個應用程式,每個應用程式都與一個專案相關聯。每個專案都有自己的 Cloud Storage API 和其他資源。
值區:每個專案可包含多個值區,這些值區是儲存物件的容器。舉例來說,您可以為應用程式產生的所有圖片檔案建立
photosbucket,並建立另一個videosbucket。Cloud Storage 提供不同儲存空間類別和位置供您選擇,可根據工作負載需求,決定資料的耐用性和可用性。值區是更廣泛生態系統中的主要資料基礎。 Google Cloud您可以將 bucket 連結為其他Google Cloud 服務的儲存空間後端,例如 AI Hypercomputer、Vertex AI 和 Google Kubernetes Engine。
雖然 bucket 適用於大多數資料儲存用途,但您可以在 bucket 中設定選用設定和功能,使其更適合用於高效能工作負載:
階層命名空間:bucket 可以啟用階層命名空間,讓您使用資料夾,將資料儲存在邏輯檔案系統結構中。將資料儲存在資料夾中,即可使用目錄語意和不可分割的資料夾作業,這通常是加速資料密集型 AI/機器學習和數據分析工作負載的必要條件。與未啟用階層命名空間的 bucket 相比,啟用階層命名空間的 bucket 在讀取和寫入物件時,初始每秒查詢次數 (QPS) 上限最多可提高 8 倍。
階層式命名空間只能在建立 bucket 時啟用,無法在現有 bucket 上啟用。
Rapid Bucket:Rapid Bucket 是一項高效能功能,可讓您使用可用區做為 bucket 的位置,將物件儲存在 Rapid 儲存空間類別中。在區域中找到 bucket 時,您就能將物件與運算資源共置、自動啟用階層式命名空間,以及使用新的 API 進行串流讀取和附加寫入作業。與其他儲存空間類別的 bucket 相比,Rapid Bucket 的延遲時間、處理量和 I/O 作業都大幅提升,因此非常適合用於資料密集型 AI/機器學習和數據分析工作負載。
如要使用 Rapid Bucket,請建立 bucket,並將可用區定義為 bucket 的位置。如果現有 bucket 不在可用區中,就無法使用 Rapid Bucket。
物件:Bucket 包含物件,例如名為
puppy.png的圖片。 物件是不可變更的資料片段,由任何格式的檔案組成。 每個 bucket 基本上可包含無限個個別物件。資料夾:啟用階層命名空間的 bucket 可以包含資料夾。資料夾可提供實際的檔案系統來儲存物件,而非模擬檔案系統。您可以在單一作業中,以原子方式重新命名資料夾和其中的所有物件。
代管資料夾:每個值區也可以包含代管資料夾,可授予或撤銷 IAM 權限以外的額外存取權。受管理資料夾不會使用真正的目錄樹狀結構,而是僅用於權限檢查的資源疊加層。
Cloud Storage 工具
您可以使用下列工具與 Cloud Storage 互動:
Google Cloud 控制台: Google Cloud 控制台提供視覺化介面,方便您在瀏覽器中管理資料。
Google Cloud CLI:您可以使用 gcloud CLI,透過終端機和
gcloud storage指令與 Cloud Storage 互動。用戶端程式庫:Cloud Storage 用戶端程式庫可讓您使用偏好的語言 (包括 C++、C#、Go、Java、Node.js、PHP、Python 和 Ruby) 管理資料。
Terraform:Terraform 是一種基礎架構即程式碼 (IaC) 工具,可用於佈建 Cloud Storage 的基礎架構。詳情請參閱「使用 Cloud Storage 佈建資源」。
gRPC:您可以使用 gRPC 與 Cloud Storage 互動。gRPC 是 Google 開發的高效能開放原始碼通用 RPC 架構,您可以使用通訊協定緩衝區定義服務。
Cloud Storage FUSE:Cloud Storage FUSE 可讓您將 Cloud Storage bucket 掛接到本機檔案系統。這可讓應用程式使用標準檔案系統語意,從 bucket 讀取或寫入 bucket。
保護資料安全
將物件上傳至 Cloud Storage 後,您就能精細控管資料的安全性和分享方式。以下是確保上傳至 Cloud Storage 的資料安全無虞的方法:
身分與存取權管理:使用 IAM 控制哪些人有權存取 Google Cloud 專案中的資源。資源包括 Cloud Storage 值區和物件,以及其他Google Cloud 實體,例如 Compute Engine 執行個體。您可以授予主體特定類型的值區和物件存取權,例如
update、create或delete。資料加密:Cloud Storage 預設會使用伺服器端加密技術來加密資料。您也可以使用補充資料加密選項,例如客戶自行管理的加密金鑰和客戶提供的加密金鑰。
驗證:確保存取資料的使用者具備適當的憑證。
虛刪除:保留最近刪除的物件和儲存空間,防止資料因意外或惡意刪除而永久遺失。Cloud Storage 預設會為所有 bucket 啟用虛刪除功能,保留期限為七天。
物件版本管理:啟用物件版本管理功能後,如果取代或刪除物件的使用中版本,系統會將該版本保留為非現行版本。
Bucket IP 過濾:透過 bucket IP 過濾功能,您可以根據要求的來源 IP 位址限制 bucket 存取權,並防止特定 IP 位址或虛擬私有雲 (VPC) 未經授權存取資料。
值區鎖定:指定保留政策,控管值區中的物件必須保留多久。
資源名稱
每個資源都有不重複的識別名稱,跟檔案名稱很像。
值區的資源名稱格式為 projects/_/buckets/BUCKET_NAME,其中 BUCKET_NAME 是值區的 ID。物件的資源名稱格式為 projects/_/buckets/BUCKET_NAME/objects/OBJECT_NAME,其中 OBJECT_NAME 是物件的 ID。
附加在資源名稱末端的 #NUMBER 代表特定的物件產生。#0 是最新版物件的特殊識別碼。當物件名稱以字串結尾時,新增 #0 很有用,否則該字串將被解讀為產生號。
快速入門導覽課程指南
如要瞭解使用 Cloud Storage 的基本知識,請參閱下列指南:
正在尋找其他產品嗎?
如果 Cloud Storage 不適合您,請參閱下列儲存空間服務的詳細資訊:
Google Cloud Managed Lustre:將資料儲存在高效能全代管平行檔案系統中,這個系統經過最佳化,適合 AI 和 HPC 工作負載。
Google 雲端硬碟:儲存、管理及共用個人檔案。
Cloud Storage for Firebase:管理行動應用程式的資料。
Persistent Disk:為 Compute Engine 虛擬機器新增區塊儲存空間。
Filestore:為 GKE 叢集新增檔案儲存空間,供多位寫入者存取。
探索 Google提供的其他儲存空間服務。
後續步驟
- 透過Google Cloud 控制台或 Google Cloud CLI 瞭解 Cloud Storage 的基礎知識。
- 試用Google Cloud 使用 Cloud Storage 的快速部署解決方案。
- 開始使用用戶端程式庫。
- 使用 Storage 移轉服務,快速將線上資料匯入 Cloud Storage,或在 Cloud Storage bucket 之間移轉資料。