廣告空間報表

Cloud Storage 庫存報表可協助您大規模管理物件儲存空間。與 Objects: list API 作業相比,商品目錄報表可更快取得,且能排定時間。您可以使用清查報表,驗證大型 bucket 的遷移作業,而不會影響效能,也可以檢查單一 bucket 中物件的完整性。

目錄報表包含與物件相關的中繼資料,例如儲存空間級別、ETag 和內容類型。您可以運用這項資訊分析儲存費用、稽核及驗證物件,並確保資料安全性及合規性。

您可以將目錄報告匯出為半形逗號分隔值 (CSV) 檔案或 Apache Parquet 檔案,進一步使用 BigQuery 等工具分析資料。

如需使用商品目錄報表的步驟,請參閱「建立及管理商品目錄報表」。

商品目錄報表總覽

庫存報表包含指定 bucket (也稱為來源 bucket) 的物件清單和相關聯的中繼資料。如要產生清查報表,您必須先建立清查報表設定,定義報表產生頻率、報表應包含的中繼資料欄位,以及用於產生和儲存報表的 bucket (也稱為目的地 bucket)。

建立商品目錄報表設定時,系統會自動指派通用專屬 ID (UUID)。這個欄位無法編輯。 不過,您可以編輯盤點報表設定的下列欄位:

  • 資產盤點清單報告設定的顯示名稱
  • 庫存報表包含的物件中繼資料欄位
  • 儲存庫存報表的目標 bucket
  • 決定庫存報表產生頻率的時間表
  • 產生目錄報告的檔案格式 (CSV 或 Apache Parquet)

刪除資產盤點清單報告設定後,系統就不會再根據該設定產生新的資產盤點清單報告,但現有的資產盤點清單報告仍會保留。

商品目錄報表的使用時機

清查報表可用於快速分析個別 bucket。可用於執行下列操作:

  • 列出 bucket 中的所有物件

  • 驗證資料移轉是否成功

  • 生成特定 bucket 的稽核報告

不適合使用商品目錄報表的情況

手動整理及分析多個 bucket 和專案的庫存報表可能相當困難,尤其是大規模分析。如需全組織層級的資料、安全性分析或成本管理等用途,可以使用 儲存空間分析資料集。儲存空間分析資料集可讓您彈性設定自訂範圍,無論是在 bucket、資料夾、專案或組織層級皆可。儲存空間分析資料集也提供其他物件深入分析,例如作業資料、錯誤資訊、匯總的 bucket 和專案活動資料,以及自訂中繼資料。

儲存空間分析資料集的中繼資料檢視畫面每天更新,活動檢視畫面則每 4 到 6 小時更新一次。您可以在 BigQuery 中使用 SQL 分析資料,或透過 Gemini 使用自然語言提問。

如果您的目標如下,請使用儲存空間分析資料集:

  • 跨組織資料探索
  • 成本最佳化和生命週期管理分析
  • 時間序列分析,找出趨勢
  • 疑難排解作業問題
  • 監控 bucket 和專案中的活動

儲存空間分析資料集是 Storage Intelligence 訂閱方案的專屬功能。

來源和目的地 bucket

來源 bucket 包含要產生庫存報表的物件。其中也包含資產盤點清單報告設定。一個來源 bucket 最多可有 100 項清查報表設定。

目的地 bucket 會儲存產生的庫存報表。目的地 bucket 必須符合下列規定:

  • 必須與來源 bucket 位於相同位置。
  • 必須與來源 bucket 位於相同專案。
  • 可以與來源 bucket 相同。

首次建立庫存報表設定時,系統會自動代您建立服務代理。如要建立庫存報表設定,並將庫存報表寫入目的地 bucket,您和服務代理都必須具備必要的 IAM 權限。查看您和服務代理所需的權限。

清查報表會使用來源和目的地 bucket 的名稱,判斷執行工作時要使用哪些 bucket。如果您刪除來源或目的地 bucket,之後又建立同名的新 bucket,清查報表就會使用新 bucket 執行工作。

物件中繼資料欄位

商品目錄報表可包含下列中繼資料欄位。標示為「必要」的中繼資料欄位必須包含在商品目錄報表中。

中繼資料欄位 說明 附註
專案 來源 bucket 所在專案的 ID。 必填
值區 來源 bucket 的名稱。 必填
名稱 物件名稱。 必填
位置 來源 bucket 的位置。 選用
大小 物件大小。 選用
timeCreated 物件的建立時間,採用 RFC 3339 格式。 選用
timeDeleted 物件的刪除時間,採用 RFC 3339 格式。只有在這個物件版本不再是使用中版本,但仍以非現行版本保留在 bucket 中時,才會傳回。 選用
已更新 物件中繼資料的修改時間,格式為 RFC 3339。 選用
storageClass 物件的儲存空間級別。 選用
etag 物件的 HTTP 1.1 實體標記。 選用
retentionExpirationTime 物件可刪除的最早時間,取決於為物件設定的任何保留設定,以及為包含物件的值區設定的任何保留政策。retentionExpirationTime 的值會以 RFC 3339 格式提供。 選用
crc32c CRC32C 核對和,如 RFC 4960 附錄 B 所述,使用 base64 以大端序位元組順序編碼。如要進一步瞭解 CRC32C 核對和,請參閱「物件中繼資料」。 選用
md5Hash 資料的 MD5 雜湊,使用 base64 編碼。複合式物件沒有這個欄位。如要進一步瞭解 MD5 雜湊,請參閱「物件中繼資料」。 選用
圖像生成 這個物件的內容產生版本。用於物件版本管理。 選用
中繼產生 這個物件在這個世代的中繼資料版本。用於前置條件和偵測中繼資料的變更。中繼資料版本編號僅適用於特定物件的特定版本。 選用
contentType 物件資料的 Content-Type。如果儲存物件時未指定 Content-Type,系統會將其視為 application/octet-stream。 選用
contentEncoding 物件資料的 Content-Encoding。 選用
timeStorageClassUpdated 上次變更物件儲存空間級別的時間。物件最初建立時,會設為 timeCreated。 選用

如要進一步瞭解物件中繼資料欄位,請參閱「物件中繼資料」。

商品目錄報表 shard

如果清查報表包含超過 1,000,000 個物件,系統會產生一或多個 shard 物件來組成清查報表。成功產生庫存報表的所有 shard 後,系統會在與 shard 相同的目的地 bucket 中產生資訊清單檔案。

庫存報表資訊清單檔案

如果出現資訊清單檔案,表示構成清查報表的所有 shard 都已產生。資訊清單檔案也會提供盤點報表 shard 物件的名稱。

資訊清單檔案遵循命名慣例 REPORT_CONFIG_UUID_TARGET_DATETIME_manifest.json,其中:

  • REPORT_CONFIG_UUID 是系統自動產生的庫存報表設定 UUID。

  • TARGET_DATETIME 是自動生成的 UTC 日期和時間,表示商品目錄報表的產生時間。

資訊清單檔案名稱範例如下:fc95c52f-157a-494f-af4a-d4a53a69ba66_2022-11-30T00:00_manifest.json。

manifest.json 檔案包含下列自動填入的欄位:

{
  "report_config": REPORT_CONFIG_FIELDS,
  "records_processed": NUMBER_OF_INCLUDED_OBJECTS,
  "snapshot_time": "SNAPSHOT_TIME,
  "target_datetime": "TARGET_DATETIME,
  "shard_count": SHARD_COUNT,
  "report_shards_file_names": [
    SHARD_FILE_NAME
    ...]
}

其中:

  • REPORT_CONFIG_FIELDS 包含ReportConfig 資源中的欄位。

  • NUMBER_OF_INCLUDED_OBJECTS 是商品目錄報表中的物件數量。

  • SNAPSHOT_TIME 是自動生成的世界標準時間日期時間,表示資料快照發生的時間。商品目錄報表中的所有資料都是在快照時擷取。

  • TARGET_DATETIME 是自動生成的 UTC 日期時間,也就是產生庫存報表的時間。

  • SHARD_COUNT 是構成庫存報表的生成 shard 總數。

  • SHARD_FILE_NAME 是構成商品目錄報表的 shard 名稱。

manifest.json 檔案範例如下:

{
  "report_config":
     {
       "name": "projects/123456789098/locations/us/reportConfigs/fcec5187-afa6-48b0-938a-543d16493dc0",
       "createTime": "2023-06-08T08:07:53.397366139Z",
       "updateTime": "2023-06-08T08:07:53.552347723Z",
       "frequencyOptions": {
         "frequency": "DAILY",
         "startDate": {
           "year": 2023,
           "month": 6,
           "day": 9
         }
         "endDate": {
           "year": 2023,
           "month": 6,
           "day": 23
         }
       },
       "csvOptions": {
         "recordSeparator": "\n",
         "delimiter": ","
       },
       "objectMetadataReportOptions": {
         "metadataFields": [
           "project",
           "bucket",
           "name",
           "location",
           "updated",
           "storageClass",
         ],
         "storageFilters": {
           "bucket": "my-test-bucket"
         },
         "storageDestinationOptions": {
           "bucket": "example-bucket",
           "destinationPath": "folder/subfolder"
         }
       }
     },
  "records_processed": 3993900,
  "snapshot_time" : "2023-06-06T00:07:27Z",
  "target_datetime": {
    "year": 2023,
    "month": 6,
    "day": 6
  },
  "shard_count": 4,
  "report_shards_file_names": [
    "fc95c52f-157a-494f-af4a-d4a53a69ba66_2022-11-30T00:54_0.csv",
    "fc95c52f-157a-494f-af4a-d4a53a69ba66_2022-11-30T00:54_1.csv",
    ...
  ],
}

定價

使用庫存報表須支付費用,具體取決於 bucket 的位置。如要進一步瞭解清查報表定價,請參閱「定價」。

稽核記錄

在目的地 bucket 產生庫存報表時,Cloud Storage 會建立稽核記錄。每當建立、更新或刪除庫存報表設定時,Cloud Storage 都會產生稽核記錄。

當庫存報表設定從來源 bucket 讀取物件中繼資料時,Cloud Storage「不會」建立稽核記錄。

與 VPC Service Controls 整合

您可以使用 VPC Service Controls,為清查報表資源提供額外的安全防護。使用 VPC Service Controls 時,可將專案納入 service perimeter,防止來自 perimeter 外的要求存取資源和服務。如要進一步瞭解 VPC Service Controls 和 service perimeter,請參閱「service perimeter 詳細資料和設定」。

限制

商品目錄報表有下列限制。

  • 在 Cloud Storage bucket 啟用 IP 篩選功能後,無論是否使用服務代理與 Cloud Storage 互動,清查報表都無法存取 bucket。為避免服務中斷,如果您要為 Cloud Storage bucket 建立清查報表,建議不要對該 bucket 使用 IP 篩選功能。

  • 下列位置不支援庫存報表:

    • 區域:

      • africa-south1
      • asia-southeast3
      • europe-north2
      • europe-west10
      • europe-west12
      • me-central1
      • me-central2
      • northamerica-south1
    • 雙區域:

      • eur5
      • eur7
      • eur8

後續步驟

瞭解如何建立庫存報表設定,並開始產生庫存報表。