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_OPTIONSTABLE_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\")')