儲存空間分析資料集

<0x

「儲存空間分析」資料集功能可協助您大規模瞭解、整理及管理資料。您可以選擇機構,或一或多個包含要更新中繼資料的 bucket 和物件的專案或資料夾。系統會提供可查詢的後設資料索引,適用於這些專案中包含的 bucket 和物件,並以 BigQuery 連結資料集的形式提供。

如要取得匯出至 BigQuery 的 Cloud Storage 資源洞察資料,請使用 Storage Insights 資料集。這些洞察資料可協助您探索資料、最佳化成本、強制執行安全性,以及導入治理措施。儲存空間分析資料集是專屬功能,僅供 Storage Intelligence 訂閱者使用。

總覽

儲存空間洞察資料集是機構內一或多個指定來源專案中,所有值區和物件的中繼資料的滾動快照。透過資料集提供的資訊,您可以更瞭解及定期稽核 Cloud Storage 資料。

如要建立資料集,請先在專案中建立資料集設定。 您可以選擇機構,或一或多個包含要查看中繼資料的 bucket 和物件的專案或資料夾。資料集設定每天都會產生資料集。資料集設定和資料集都是儲存在 Cloud Storage 中的資源。

如要查看資料集,請先將資料集連結至 BigQuery

資料集設定屬性

建立資料集設定時,您會設定資料集的這些屬性。設定資料集後,最多可能需要 48 小時,您才能在 BigQuery 中看到第一個填入的資料,也就是連結的資料集。下次每日快照會包含所有新加入的物件或值區。

  • 名稱:用於參照資料集的名稱。名稱會做為資料集設定的 ID,且設定建立完成後即無法變更。名稱最多可包含 128 個字元,且只能使用英文字母、數字和底線。名稱開頭必須為英文字母。

  • 說明 (選填):資料集說明。你隨時可以編輯說明。

  • 資料集範圍:必要欄位,指定包含您要取得中繼資料的值區和物件的機構、專案或資料夾。您可以個別指定專案或資料夾,也可以使用 CSV 檔案指定,每個專案或資料夾編號各占一行。一個資料集設定最多可指定 10,000 個專案或資料夾。資料集是為指定資料集範圍設定。每個資料集設定只能指定一個資料集範圍。編輯資料集設定時,您可以更新資料集範圍。

  • Bucket 篩選器 (選用):用於依 bucket 名稱或區域,在資料集中納入和排除特定 bucket。

  • 保留期限:資料集擷取及保留資料的天數,包括資料集的建立日期。資料集每 24 小時會更新中繼資料,最多可保留 90 天的資料。系統會自動刪除保留期限外的資料。舉例來說,假設您在 2023 年 10 月 1 日建立資料集,並將保留期設為 30 天。10 月 30 日當天,資料集會反映過去 30 天的資料,也就是 10 月 1 日至 10 月 30 日的資料。10 月 31 日的資料集會反映 10 月 2 日至 10 月 31 日的資料。您隨時可以修改保留期限。

  • 位置:儲存資料集及其資料的位置。例如:us-central1BigQuery 必須支援該位置。建議您選取 BigQuery 資料表的位置 (如有)。

  • 服務代理類型:特定設定的服務代理或特定專案的服務代理。

    建立資料集設定時,系統會為您佈建服務代理。如要讀取及寫入資料集,必須授予服務代理必要權限。

    專案範圍的服務代理可以存取及寫入專案中所有資料集設定產生的資料集。舉例來說,如果專案內有多個資料集設定,您只需要為專案範圍的服務代理程式授予必要權限一次,該代理程式就能讀取及寫入專案內所有資料集設定的資料集。刪除資料集設定時,系統不會刪除專案範圍的服務代理程式。

    設定範圍服務代理只能存取及寫入特定資料集設定產生的資料集。也就是說,如果您有多個資料集設定,就必須為每個設定範圍的服務代理程式授予必要權限。刪除資料集設定時,系統會刪除設定範圍內的服務代理程式。

建立資料集設定後,請將資料集連結至 BigQuery。將資料集連結至 BigQuery 後,系統會在 BigQuery 中建立連結的資料集,供您查詢。你隨時可以連結或取消連結資料集。

如要進一步瞭解建立或更新資料集設定時設定的屬性,請參閱 JSON API 說明文件中的 DatasetConfigs 資源

支援的地區

建立連結資料集時,系統支援下列 BigQuery 位置:

  • EU
  • US
  • asia-southeast1
  • europe-west1
  • us-central1
  • us-east1
  • us-east4

中繼資料的資料集結構定義

以下各節說明資料集包含的中繼資料欄位。如要進一步瞭解 BigQuery 資料欄模式,請參閱「模式」。欄模式會決定 BigQuery 儲存及查詢資料的方式。

值區中繼資料

下表說明 bucket 中繼資料欄位:

中繼資料欄位 模式 類型 說明
snapshotTime NULLABLE TIMESTAMP snapshotTime 欄位會以 RFC 3339 格式儲存 bucket 中繼資料快照的重新整理時間。
name NULLABLE STRING 值區名稱。
location NULLABLE STRING 值區的位置。bucket 中物件的物件資料會儲存在這個位置的實體儲存空間。
project NULLABLE INTEGER 值區所屬專案的專案編號。
storageClass NULLABLE STRING 值區的預設儲存空間級別
public NULLABLE RECORD 已淘汰,這個欄位會指出值區是否可公開存取。請改用 iamConfiguration
public.bucketPolicyOnly NULLABLE BOOLEAN 已淘汰,這個欄位是 public 記錄的一部分,表示是否已啟用統一值區層級存取權,這項設定會禁止透過物件層級 ACL 授予存取權。
public.publicAccessPrevention NULLABLE STRING 已淘汰,這個欄位是 public 記錄的一部分,用於指出是否禁止公開存取 bucket。
autoclass NULLABLE RECORD 值區的 Autoclass 設定。啟用後,系統會根據物件的存取方式和時間,控管物件的儲存空間級別。
autoclass.enabled NULLABLE BOOLEAN 是否啟用 Autoclass。
autoclass.toggleTime NULLABLE TIMESTAMP 這個 bucket 最近一次啟用或停用自動調整級別功能的時間,採用 RFC 3339 格式。
versioning NULLABLE BOOLEAN 值區是否已啟用版本控管。詳情請參閱物件版本管理
lifecycle NULLABLE BOOLEAN 值區是否具有生命週期設定。詳情請參閱生命週期管理
metageneration NULLABLE INTEGER 這個 bucket 的中繼資料產生作業。
timeCreated NULLABLE TIMESTAMP 儲存空間的建立時間,採用 RFC 3339 格式。
tags NULLABLE RECORD 已淘汰,這個欄位包含與 bucket 相關聯的使用者定義鍵/值組合。請改用資源標記
tags.lastUpdatedTime NULLABLE TIMESTAMP 已淘汰,這個欄位屬於 tags 記錄,表示標記上次更新的時間。
tags.tagMap REPEATED RECORD 已淘汰,這個欄位是 tags 記錄的一部分,包含標記鍵和值的對應。
tags.tagMap.key NULLABLE STRING 已淘汰,這個欄位是 tags.tagMap 記錄的一部分,代表代碼的鍵。
tags.tagMap.value NULLABLE STRING 已淘汰,這個欄位是 tags.tagMap 記錄的一部分,代表標記的值。
labels REPEATED RECORD 使用者提供的值區標籤,以鍵/值組合表示。
labels.key NULLABLE STRING 個別標籤項目。
labels.value NULLABLE STRING 標籤的值。
softDeletePolicy NULLABLE OBJECT bucket 的虛刪除政策,定義 bucket 中的物件在刪除後,會處於虛刪除狀態的時間長度。處於虛刪除狀態的物件無法永久刪除,且在hardDeleteTime前可還原。
softDeletePolicy.effectiveTime NULLABLE DATETIME

軟刪除政策生效的日期時間,格式為 RFC 3339

softDeletePolicy.effectiveTime 會在 softDeletePolicy.retentionDurationSeconds 增加時更新。

softDeletePolicy.retentionDurationSeconds NULLABLE LONG 虛刪除物件的保留時間 (以秒為單位),在此期間無法永久刪除物件。這個值必須大於或等於 604800 (7 天),且小於 7776000 (90 天)。值也可以設為 0,停用虛刪除政策。
iamConfiguration NULLABLE RECORD 值區的 IAM 設定。
iamConfiguration.uniformBucketLevelAccess NULLABLE RECORD 值區的統一值區層級存取權設定。
iamConfiguration.uniformBucketLevelAccess.enabled NULLABLE BOOLEAN 值區是否使用統一值區層級存取權。
iamConfiguration.publicAccessPrevention NULLABLE STRING 值區的禁止公開存取狀態,為 "inherited""enforced"
resourceTags REPEATED RECORD 值區的標記。詳情請參閱 Cloud Resource Manager API
resourceTags.key NULLABLE STRING 資源標記鍵。
resourceTags.value NULLABLE STRING 資源標記值。

物件中繼資料

下表說明物件中繼資料欄位:

中繼資料欄位 模式 類型 說明
snapshotTime NULLABLE TIMESTAMP snapshotTime 欄位會以 RFC 3339 格式儲存物件中繼資料快照的重新整理時間。
bucket NULLABLE STRING 包含這個物件的值區名稱。
location NULLABLE STRING 值區的位置。bucket 中物件的物件資料會儲存在這個位置的實體儲存空間。
componentCount NULLABLE INTEGER 僅適用於複合物件。複合物件中的非複合物件數量。componentCount 包含用於組合目前物件的任何複合物件所含的非複合物件。
contentDisposition NULLABLE STRING 物件資料的內容處理
contentEncoding NULLABLE STRING 物件資料的內容編碼
contentLanguage NULLABLE STRING 物件資料的內容語言
contentType NULLABLE STRING 物件資料的內容類型
crc32c NULLABLE INTEGER CRC32c 檢查碼,如 RFC 4960 附錄 B 所述;以 base64 編碼,採用大端序的位元組順序。
customTime NULLABLE TIMESTAMP 使用者指定物件的時間戳記,格式為 RFC 3339
etag NULLABLE STRING 物件的 HTTP 1.1 實體標記
eventBasedHold NULLABLE BOOLEAN 物件是否受到依據事件的訴訟保留
generation NULLABLE INTEGER 這個物件的內容生成。
md5Hash NULLABLE STRING 資料的 MD5 雜湊,使用 base64 編碼。這個欄位不適用於複合物件
metadata REPEATED RECORD 使用者提供的中繼資料,以鍵/值組合形式呈現。
metadata.key NULLABLE STRING 個別的中繼資料項目。
metadata.value NULLABLE STRING 中繼資料值。
metageneration NULLABLE INTEGER 這個產生時間的物件中繼資料版本。
name NULLABLE STRING 物件名稱。
size NULLABLE INTEGER 資料內容長度 (以位元組為單位)。
storageClass NULLABLE STRING 物件的儲存空間級別
temporaryHold NULLABLE BOOLEAN 物件是否受到暫時性訴訟保留
timeCreated NULLABLE TIMESTAMP 物件的建立時間,採用 RFC 3339 格式。
timeDeleted NULLABLE TIMESTAMP 物件的刪除時間,採用 RFC 3339 格式。
updated NULLABLE TIMESTAMP 物件中繼資料的修改時間,格式為 RFC 3339
timeStorageClassUpdated NULLABLE TIMESTAMP 上次變更物件儲存空間級別的時間。
retentionExpirationTime NULLABLE TIMESTAMP 物件最早可刪除的時間,取決於為物件設定的保留設定,以及為包含物件的值區設定的保留政策retentionExpirationTime 的值採用 RFC 3339 格式。
softDeleteTime NULLABLE DATETIME 物件虛刪除的時間。僅適用於設有虛刪除政策的值區中的物件。
hardDeleteTime NULLABLE DATETIME 虛刪除的物件永久刪除的時間,屆時將無法還原。這個值是值區的 softDeleteTime 值和 softDeletePolicy.retentionDurationSeconds 值的總和。僅適用於設有虛刪除政策的值區中的物件。
project NULLABLE INTEGER 值區所屬專案的專案編號。

最新的值區和物件中繼資料快照

連結的資料集會透過下列專屬檢視畫面,公開值區和物件中繼資料的最新快照:

專案中繼資料

專案中繼資料會以 project_attributes_view 名稱的檢視區塊形式,顯示在連結的資料集中:

中繼資料欄位 模式 類型 說明
snapshotTime NULLABLE TIMESTAMP snapshotTime 欄位會以 RFC 3339 格式儲存專案中繼資料快照的重新整理時間。
name NULLABLE STRING 專案名稱。
id NULLABLE STRING 專案的專屬 ID。
number NULLABLE NUMBER 與專案相關聯的數值。

事件和錯誤的資料集結構定義

在連結的資料集中,您也可以在 events_viewerror_attributes_view 檢視畫面中查看快照處理事件和錯誤。如要瞭解如何排解快照處理錯誤,請參閱「排解資料集錯誤」。

事件記錄

您可以在連結資料集的 events_view 檢視畫面中查看事件記錄:

資料欄名稱 模式 類型 說明
manifest.snapshotTime NULLABLE TIMESTAMP 事件快照的重新整理時間,採用 RFC 3339 格式
manifest.viewName NULLABLE STRING 重新整理的檢視畫面名稱。
manifest.location NULLABLE STRING 重新整理資料的來源位置。
globalManifest.snapshotTime NULLABLE TIMESTAMP 事件快照的重新整理時間,採用 RFC 3339 格式
eventTime NULLABLE STRING 事件發生的時間。
eventCode NULLABLE STRING 與對應項目相關聯的事件代碼。事件代碼 1 是指系統在快照 manifest.snapshotTime 中,重新整理來源位置 manifest.location 的所有項目,並顯示在 manifest.viewName 檢視畫面中。事件代碼 2 表示資料集已更新,包含所有來源位置的 bucket 和物件項目。這項重新整理作業會在快照 globalManifest.snapshotTime 中進行。

錯誤代碼

您可以在連結資料集的 error_attributes_view 檢視畫面中查看錯誤代碼:

資料欄名稱 模式 類型 說明
errorCode NULLABLE INTEGER 與這個項目相關的錯誤代碼。如需有效值清單和解決方法,請參閱「排解資料集錯誤」。
errorSource NULLABLE STRING 錯誤來源。有效值:CONFIGURATION_PREPROCESSING
errorTime NULLABLE TIMESTAMP 錯誤發生時間。
sourceGcsLocation NULLABLE STRING 發生錯誤的來源 Cloud Storage 位置。專案沒有位置資訊,因此這個欄位為空值。
bucketErrorRecord.bucketName NULLABLE STRING 發生錯誤的值區名稱。您可以使用這項資訊偵錯 bucket 錯誤。
bucketErrorRecord.serviceAccount NULLABLE STRING 需要從 bucket 擷取物件的服務帳戶。您可以使用這項資訊偵錯 bucket 錯誤。
projectErrorRecord.projectNumber NULLABLE INTEGER 發生錯誤的專案編號。您可以利用這項資訊偵錯專案錯誤。
projectErrorRecord.organizationName NULLABLE STRING 專案必須屬於該機構,才能進行處理。如果值為 0,表示資料集不在機構中。您可以利用這項資訊偵錯專案錯誤。

排解資料集錯誤

如要瞭解如何排解記錄在連結資料集 error_attributes_view 檢視畫面中的快照處理錯誤,請參閱下表:

錯誤代碼 錯誤案例 錯誤訊息 疑難排解
1 來源專案不屬於該機構 來源專案 projectErrorRecord.projectNumber 不屬於機構 projectErrorRecord.organizationName 將來源專案 projectErrorRecord.projectNumber 新增至機構 projectErrorRecord.organizationName。如要瞭解如何在機構之間遷移專案,請參閱「在機構之間遷移專案」一文。
2 Bucket 授權錯誤 權限遭拒,無法擷取 bucket「bucketErrorRecord.bucketName」的物件。 授予服務帳戶 bucketErrorRecord.serviceAccount 身分與存取權管理 (IAM) 權限,允許擷取值區 bucketErrorRecord.bucketName 的物件。詳情請參閱「授予服務代理必要權限」。
3 目的地專案不屬於該機構 目的地專案 projectErrorRecord.projectNumber 不屬於機構 projectErrorRecord.organizationName 將目的地專案 projectErrorRecord.projectNumber 新增至組織 projectErrorRecord.organizationName。如要瞭解如何在機構之間遷移專案,請參閱「在機構之間遷移專案」一文。
4 來源專案未設定 Storage Intelligence。 來源專案 projectErrorRecord.projectNumber 未設定 Storage Intelligence。 為來源專案設定 Storage Intelligence projectErrorRecord.projectNumber。詳情請參閱「設定及管理儲存空間智慧功能」。
5 Bucket 未設定 Storage Intelligence。 Bucket bucketErrorRecord.bucketName 未設定 Storage Intelligence。 為 bucket bucketErrorRecord.bucketName 設定 Storage Intelligence。詳情請參閱「設定及管理儲存空間智慧功能」。

注意事項

設定資料集時,請注意下列事項:

  • 在啟用階層命名空間的 bucket 中重新命名資料夾時,該 bucket 中的物件名稱會更新。連結資料集擷取這些物件快照時,會將其視為連結資料集中的新項目。

  • 資料集僅支援這些 BigQuery 位置

後續步驟