本頁面將討論與讀取及下載 Cloud Storage 物件相關的概念。
讀取物件
讀取物件是指透過開放式網路連線,直接在記憶體中串流、使用或檢查物件資料或特定位元組範圍。擷取的酬載不會儲存在本機,而是暫時存在應用程式記憶體串流、緩衝區、管道,或直接存在 CPU/GPU 記憶體中。讀取物件適用於高效能、處理量密集型工作負載,例如將訓練資料集和張量批次串流至人工智慧 (AI) 和機器學習 (ML) 架構,如 Pytorch 或 Jax。
下列清單說明 Cloud Storage 提供的物件讀取類型:
將物件讀取至記憶體或互動式物件讀取:以互動方式或將資料讀取至記憶體的方法。用戶端會擷取整個物件,並將所有位元組載入連續變數、位元組陣列或記憶體內字串。
串流讀取:從網路接收資料時,直接以位元組串流的形式使用資料,而不必等待整個傳輸作業完成。
下載物件
下載物件是一項端對端工作,會將物件資料從 Cloud Storage 轉移至本機檔案系統、磁碟或目標儲存裝置上的永久檔案。與記憶體內串流讀取不同,下載作業包含擷取遠端位元組,並將其提交至本機儲存空間。下載物件主要適用於一般用途的檔案管理、本機封存、資料備份和離線公用程式。
使用 REST API 時,下載作業會透過 HTTP 或 HTTPS GET要求執行,這類要求可包含選用的 Range 標頭,用於定義要下載至永久或本機儲存空間的物件特定部分。您也可以使用 Range 標頭,繼續中斷的下載作業。使用 gRPC 時,下載作業會使用 storage.v2.Storage/ReadObject 或 BidiReadObject 串流。
以下列出 Cloud Storage 中可用的物件下載類型:
簡易下載:最基本的物件下載形式。用戶端會傳送單一要求,在一次連續傳輸中擷取整個物件或指定的位元組範圍。
切片物件下載:這項高效能策略會將單一大型物件分割成多個較小的「切片」(也稱為「區塊」)。用戶端會使用多個獨立且並行的要求,平行下載這些切片,然後在本機將切片重新組合成單一檔案。
支援讀取及下載物件的工具
控制台
使用 Google Cloud 控制台時,您可以執行下列物件讀取和下載作業:
指令列
使用 Google Cloud CLI 時,您可以執行下列物件讀取和下載作業:
用戶端程式庫
C++
使用 C++ 用戶端程式庫時,您可以執行下列類型的讀取和下載作業:
C#
使用 C# 用戶端程式庫時,您可以執行下列類型的讀取和下載作業:
Go
使用 Go 用戶端程式庫時,您可以執行下列類型的讀取和下載作業:
Java
使用 Java 用戶端程式庫時,您可以執行下列類型的讀取和下載作業:
Node.js
使用 Node.js 用戶端程式庫時,您可以執行下列類型的讀取和下載作業:
PHP
使用 PHP 用戶端程式庫時,您可以執行下列類型的讀取和下載作業:
Python
使用 Python 用戶端程式庫時,您可以執行下列類型的讀取和下載作業:
小茹
使用 Ruby 用戶端程式庫時,可以執行下列類型的讀取和下載作業:
REST API
如果您使用 REST API 下載物件,請參閱「要求端點」,進一步瞭解可使用的要求端點。
後續步驟
- 使您的資料可公開存取。
- 瞭解如何使用核對和下載物件。
- 瞭解物件上傳。
- 查看及編輯物件中繼資料。
- 瞭解如何使用 Storage 移轉服務將資料轉移至 Cloud Storage。
- 從 Compute Engine 執行個體移轉物件。