TABLE_STORAGE_USAGE_TIMELINE 檢視畫面
INFORMATION_SCHEMA.TABLE_STORAGE_USAGE_TIMELINE
檢視畫面會顯示過去 90 天內,下列類型表格的每日儲存空間用量總計:
- 標準資料表
- 具體化檢視表
- 與基本資料表有位元組差異的資料表本機副本
- 與基礎資料表有位元組差異的資料表快照
如果資料表沒有可計費的位元組,就不會納入 INFORMATION_SCHEMA.TABLE_STORAGE_USAGE_TIMELINE
檢視畫面。包括下列類型的表格:
- 外部資料表
- 匿名資料表
- 空桌
- 與基本資料表位元組數沒有差異的資料表本機副本
- 與基本資料表相比,位元組沒有差異的資料表快照
查詢 INFORMATION_SCHEMA.TABLE_STORAGE_USAGE_TIMELINE
檢視表時,查詢結果會針對目前專案中的每個資料表或具體化檢視表,每天各列出一個資料列。
這個表格中的資料不會即時更新。表格資料約需 72 小時才會顯示在這個檢視畫面中。
儲存空間用量以 MiB 秒為單位回報。舉例來說,如果專案在 86,400 秒 (24 小時) 內使用 1,000,000 個實體位元組,則實體用量總計為 86,400,000,000 位元組秒,換算為 82,397 MiB 秒,如下例所示:
86,400,000,000 / 1,024 / 1,024 = 82,397
這是 BILLABLE_TOTAL_PHYSICAL_USAGE
資料欄會傳回的值。
詳情請參閱儲存空間定價詳細資料。
所需權限
如要查詢 INFORMATION_SCHEMA.TABLE_STORAGE_USAGE_TIMELINE
檢視畫面,您必須具備下列 Identity and Access Management (IAM) 權限:
bigquery.tables.get
bigquery.tables.list
下列每個預先定義的 IAM 角色都包含上述權限:
roles/bigquery.dataViewer
roles/bigquery.dataEditor
roles/bigquery.metadataViewer
roles/bigquery.admin
如要查詢含有區域限定符的資料,您必須具備專案權限。
如要進一步瞭解 BigQuery 權限,請參閱「使用身分與存取權管理功能控管存取權」一文。
結構定義
INFORMATION_SCHEMA.TABLE_STORAGE_USAGE_TIMELINE
檢視表具有下列結構定義:
USAGE_DATE |
DATE |
顯示位元組的帳單日期,使用 America/Los_Angeles 時區 |
PROJECT_ID |
STRING |
資料集所屬專案的專案 ID |
TABLE_CATALOG |
STRING |
資料集所屬專案的專案 ID |
PROJECT_NUMBER |
INT64 |
資料集所屬專案的專案編號 |
TABLE_SCHEMA |
STRING |
包含資料表或具體化檢視區塊的資料集名稱,又稱為 datasetId 。 |
TABLE_NAME |
STRING |
資料表或具體化檢視表的名稱,又稱為 tableId |
BILLABLE_TOTAL_LOGICAL_USAGE |
INT64 |
總邏輯用量,以 MiB 秒為單位。 如果資料集採用實體儲存空間計費模式,則會傳回 0。 |
BILLABLE_ACTIVE_LOGICAL_USAGE |
INT64 |
最近 90 天內的邏輯用量,以 MiB/秒為單位。 如果資料集採用實體儲存空間計費模式,則會傳回 0。 |
BILLABLE_LONG_TERM_LOGICAL_USAGE |
INT64 |
超過 90 天的邏輯用量,以 MiB/秒為單位。 如果資料集採用實體儲存空間計費模式,則會傳回 0。 |
BILLABLE_TOTAL_PHYSICAL_USAGE |
INT64 |
總用量,以 MiB 秒為單位。包括用於安全防護和時間旅行儲存空間的實體位元組。 如果資料集採用邏輯儲存空間計費模式,則會傳回 0。 |
BILLABLE_ACTIVE_PHYSICAL_USAGE |
INT64 |
90 天內的實體用量 (以 MiB 秒為單位)。這包括用於安全防護和時間旅行儲存空間的實體位元組。 如果資料集採用邏輯儲存空間計費模式,則會傳回 0。 |
BILLABLE_LONG_TERM_PHYSICAL_USAGE |
INT64 |
超過 90 天的實體用量,以 MiB 秒為單位。 如果資料集採用邏輯儲存空間計費模式,則會傳回 0。 |
範圍和語法
對這個檢視表執行的查詢必須包含區域限定詞。下表說明這個檢視畫面的區域範圍:
檢視表名稱 | 資源範圍 | 區域範圍 |
---|---|---|
[PROJECT_ID.]`region-REGION`.INFORMATION_SCHEMA.TABLE_STORAGE_USAGE_TIMELINE[_BY_PROJECT] |
專案層級 | REGION |
-
選用:
PROJECT_ID
:您的 Google Cloud 專案 ID。如未指定,系統會使用預設專案。 -
REGION
:任何資料集區域名稱。 例如:`region-us`
。
以下範例說明如何傳回指定專案中資料表的儲存空間資訊:
SELECT * FROM myProject.`region-REGION`.INFORMATION_SCHEMA.TABLE_STORAGE_USAGE_TIMELINE;
以下範例說明如何傳回指定區域中資料表的儲存空間資訊:
SELECT * FROM `region-REGION`.INFORMATION_SCHEMA.TABLE_STORAGE_USAGE_TIMELINE;
範例
範例 1
以下範例會加總特定區域中各專案的每日儲存空間用量。
SELECT usage_date, project_id, SUM(billable_total_logical_usage) AS billable_total_logical_usage, SUM(billable_active_logical_usage) AS billable_active_logical_usage, SUM(billable_long_term_logical_usage) AS billable_long_term_logical_usage, SUM(billable_total_physical_usage) AS billable_total_physical_usage, SUM(billable_active_physical_usage) AS billable_active_physical_usage, SUM(billable_long_term_physical_usage) AS billable_long_term_physical_usage FROM `region-REGION`.INFORMATION_SCHEMA.TABLE_STORAGE_USAGE_TIMELINE GROUP BY 1, 2 ORDER BY usage_date;
結果大致如下:
+-------------------------+------------------------------+-------------------------------+-----------------------------------+-------------------------------+--------------------------------+-------------------------------------+ | usage_date | project_id | billable_total_logical_usage | billable_active_logical_usage | billable_long_term_logical_usage | billable_total_physical_usage | billable_active_physical_usage | billable_long_term_physical_usage | +-------------------------+------------------------------+-------------------------------+-----------------------------------+-------------------------------+--------------------------------+-------------------------------------+ | 2023-04-03 | project_A | 305085738096 | 7667321458 | 297418416638 | 74823954823 | 124235724 | 74699719099 | +-------------------------+------------------------------+-------------------------------+-----------------------------------+-------------------------------+--------------------------------+-------------------------------------+ | 2023-04-04 | project_A | 287033241105 | 7592334614 | 279440906491 | 75071991788 | 200134561 | 74871857227 | +-------------------------+------------------------------+-------------------------------+-----------------------------------+-------------------------------+--------------------------------+-------------------------------------+ | 2023-04-03 | project_B | 478173930912 | 8137372626 | 470036558286 | 0 | 0 | 0 | +-------------------------+------------------------------+-------------------------------+-----------------------------------+-------------------------------+--------------------------------+-------------------------------------+ | 2023-04-04 | project_B | 496648915405 | 7710451723 | 488938463682 | 0 | 0 | 0 | +-------------------------+------------------------------+-------------------------------+-----------------------------------+-------------------------------+--------------------------------+-------------------------------------+
示例 2
以下範例顯示使用邏輯儲存空間的資料集中,資料表在指定日期的儲存空間用量。
SELECT usage_date, table_schema, table_name, billable_total_logical_usage FROM `region-REGION`.INFORMATION_SCHEMA.TABLE_STORAGE_USAGE_TIMELINE WHERE project_id = 'PROJECT_ID' AND table_schema = 'DATASET_NAME' AND usage_date = 'USAGE_DATE' ORDER BY billable_total_logical_usage DESC;
結果大致如下:
+--------------+--------------+------------+------------------------------+ | usage_date | table_schema | table_name | billable_total_logical_usage | +--------------+--------------+------------+------------------------------+ | 2023-04-03 | dataset_A | table_4 | 734893409201 | +--------------+--------------+------------+------------------------------+ | 2023-04-03 | dataset_A | table_1 | 690070445455 | +--------------+--------------+------------+------------------------------+ | 2023-04-03 | dataset_A | table_3 | 52513713981 | +--------------+--------------+------------+------------------------------+ | 2023-04-03 | dataset_A | table_2 | 8894535355 | +--------------+--------------+------------+------------------------------+
範例 3
以下範例顯示使用實體儲存空間的資料集,其中資料表最近一次的使用日期和儲存空間用量。
SELECT usage_date, table_schema, table_name, billable_total_physical_usage FROM ( SELECT *, ROW_NUMBER() OVER (PARTITION BY project_id, table_schema, table_name ORDER BY usage_date DESC) AS rank FROM `region-REGION`.INFORMATION_SCHEMA.TABLE_STORAGE_USAGE_TIMELINE ) WHERE rank = 1 AND project_id = 'PROJECT_ID' AND table_schema ='DATASET_NAME' ORDER BY usage_date;
結果大致如下:
+--------------+--------------+------------+-------------------------------+ | usage_date | table_schema | table_name | billable_total_physical_usage | +--------------+--------------+------------+-------------------------------+ | 2023-04-12 | dataset_A | table_4 | 345788341123 | +--------------+--------------+------------+-------------------------------+ | 2023-04-12 | dataset_A | table_1 | 0 | +--------------+--------------+------------+-------------------------------+ | 2023-04-12 | dataset_A | table_3 | 9123481400212 | +--------------+--------------+------------+-------------------------------+ | 2023-04-12 | dataset_A | table_2 | 1451334553 | +--------------+--------------+------------+-------------------------------+
示例 4
以下範例會聯結 TABLE_OPTIONS
和 TABLE_STORAGE_USAGE_TIMELINE
檢視區塊,根據標記取得儲存空間用量詳細資料。
SELECT * FROM region-REGION.INFORMATION_SCHEMA.TABLE_OPTIONS INNER JOIN region-REGION.INFORMATION_SCHEMA.TABLE_STORAGE_USAGE_TIMELINE USING (TABLE_CATALOG, TABLE_SCHEMA, TABLE_NAME) WHERE option_name='tags' AND CONTAINS_SUBSTR(option_value, '(\"tag_namespaced_key\", \"tag_namespaced_value\")')