Vista TABLE_STORAGE_USAGE_TIMELINE_BY_FOLDER

La vista INFORMATION_SCHEMA.TABLE_STORAGE_USAGE_TIMELINE_BY_FOLDER proporciona los totales de uso del almacenamiento diarios de los últimos 90 días de los siguientes tipos de tablas.

  • Tablas estándares
  • Vistas materializadas
  • Clones de tablas que tienen un delta en bytes con respecto a la tabla base
  • Capturas de tablas que tienen un delta en bytes con respecto a la tabla base

La vista INFORMATION_SCHEMA.TABLE_STORAGE_USAGE_TIMELINE_BY_FOLDER excluye las tablas sin bytes facturables. No se incluyen los siguientes tipos de tabla:

  • Tablas externas
  • Tablas anónimas
  • Tablas vacías
  • Clones de tablas que no tienen ningún delta en bytes con respecto a la tabla base
  • Capturas de tablas que no tienen ningún delta en bytes con respecto a la tabla base

Cuando consultas la vista INFORMATION_SCHEMA.TABLE_STORAGE_USAGE_TIMELINE_BY_FOLDER, los resultados de la consulta contienen una fila por día para cada tabla o vista materializada de la carpeta superior del proyecto actual, incluidas sus subcarpetas.

Los datos de esta tabla no están disponibles en tiempo real. Los datos de la tabla tardan aproximadamente 72 horas en aparecer en esta vista.

La vista devuelve el uso del almacenamiento en segundos de MiB. Por ejemplo, si un proyecto usa 1.000.000 de bytes físicos durante 86.400 segundos (24 horas), el uso físico total es de 86.400.000.000 bytes por segundo, lo que equivale a 82.397 MiB por segundo, como se muestra en el siguiente ejemplo:

86,400,000,000 / 1,024 / 1,024 = 82,397

El valor del uso del almacenamiento se encuentra en la columna BILLABLE_TOTAL_PHYSICAL_USAGE. Para obtener más información, consulta los detalles de los precios de almacenamiento.

Permisos obligatorios

Para consultar la vista INFORMATION_SCHEMA.TABLE_STORAGE_USAGE_TIMELINE_BY_FOLDER, debes tener los siguientes permisos de gestión de identidades y accesos (IAM) en la carpeta principal del proyecto:

  • bigquery.tables.get
  • bigquery.tables.list

Cada uno de los siguientes roles de gestión de identidades y accesos predefinidos incluye los permisos anteriores:

  • roles/bigquery.dataViewer
  • roles/bigquery.dataEditor
  • roles/bigquery.metadataViewer
  • roles/bigquery.admin

Para obtener más información sobre los permisos de BigQuery, consulta el artículo sobre los roles y permisos de gestión de identidades y accesos de BigQuery.

Esquema

La vista INFORMATION_SCHEMA.TABLE_STORAGE_USAGE_TIMELINE_BY_FOLDER tiene el siguiente esquema:

USAGE_DATE DATE La fecha de facturación de los bytes mostrados, con la zona horaria America/Los_Angeles
FOLDER_NUMBERS REPEATED INTEGER IDs numéricos de las carpetas que contienen el proyecto, empezando por la carpeta que contiene directamente el proyecto, seguida de la carpeta que contiene la carpeta secundaria, y así sucesivamente. Por ejemplo, si FOLDER_NUMBERS es [1, 2, 3], la carpeta 1 contiene inmediatamente el proyecto, la carpeta 2 contiene 1 y la carpeta 3 contiene 2. Esta columna solo se rellena en TABLE_STORAGE_USAGE_TIMELINE_BY_FOLDER.
PROJECT_ID STRING El ID del proyecto que contiene el conjunto de datos
TABLE_CATALOG STRING El ID del proyecto que contiene el conjunto de datos
PROJECT_NUMBER INT64 El número de proyecto del proyecto que contiene el conjunto de datos.
TABLE_SCHEMA STRING Nombre del conjunto de datos que contiene la tabla o la vista materializada. También se conoce como datasetId
TABLE_NAME STRING Nombre de la tabla o de la vista materializada, también conocido como tableId
BILLABLE_TOTAL_LOGICAL_USAGE INT64

El uso lógico total, en segundos de MiB.

Devuelve 0 si el conjunto de datos usa el modelo de facturación de almacenamiento físico.

BILLABLE_ACTIVE_LOGICAL_USAGE INT64

El uso lógico que tiene menos de 90 días, en MiB segundo.

Devuelve 0 si el conjunto de datos usa el modelo de facturación de almacenamiento físico.

BILLABLE_LONG_TERM_LOGICAL_USAGE INT64

El uso lógico que tiene más de 90 días, en MiB por segundo. second.

Devuelve 0 si el conjunto de datos usa el modelo de facturación de almacenamiento físico.

BILLABLE_TOTAL_PHYSICAL_USAGE INT64

El uso total en segundos de MiB. Esto incluye los bytes físicos usados para la protección contra fallos y el almacenamiento de viajes en el tiempo.

Devuelve 0 si el conjunto de datos usa el modelo de facturación de almacenamiento lógico.

BILLABLE_ACTIVE_PHYSICAL_USAGE INT64

El uso físico que tiene menos de 90 días de antigüedad, en segundos MiB. Esto incluye los bytes físicos utilizados para el almacenamiento a prueba de fallos y el almacenamiento de viajes en el tiempo.

Devuelve 0 si el conjunto de datos usa el modelo de facturación de almacenamiento lógico.

BILLABLE_LONG_TERM_PHYSICAL_USAGE INT64

El uso físico que tiene más de 90 días, en segundos MiB.

Devuelve 0 si el conjunto de datos usa el modelo de facturación de almacenamiento lógico.

Ámbito y sintaxis

Las consultas en esta vista deben incluir un calificador de región. Si no especifica un calificador regional, los metadatos se recuperan de todas las regiones. En la siguiente tabla se explica el ámbito de la región de esta vista:

Nombre de la vista Ámbito de los recursos Ámbito de la región
[PROJECT_ID.]`region-REGION`.INFORMATION_SCHEMA.TABLE_STORAGE_USAGE_TIMELINE_BY_FOLDER Carpeta que contiene el proyecto especificado REGION
Sustituye lo siguiente:
  • Opcional: PROJECT_ID: el ID de tu Google Cloud proyecto. Si no se especifica, se usa el proyecto predeterminado.
  • REGION: cualquier nombre de región del conjunto de datos. Por ejemplo, `region-us`.

Para obtener información sobre el almacenamiento de las tablas de la carpeta principal del proyecto especificado, ejecuta la siguiente consulta:

SELECT * FROM `myProject`.`region-REGION`.INFORMATION_SCHEMA.TABLE_STORAGE_USAGE_TIMELINE_BY_FOLDER;

Ejemplo

La siguiente consulta muestra el uso de todas las tablas de la carpeta en la fecha más reciente:

SELECT
  usage_date,
  project_id,
  table_schema,
  table_name,
  billable_total_logical_usage,
  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_BY_FOLDER
  )
WHERE rank = 1;

El resultado es similar al siguiente:

+--------------+------------+--------------+------------+------------------------------+-------------------------------+
| usage_date   | project_id | table_schema | table_name | billable_total_logical_usage | billable_total_physical_usage |
+--------------+------------+--------------+------------+------------------------------+-------------------------------+
|  2023-04-03  | project1   | dataset_A    | table_x    |     734893409201             |              0                |
+--------------+------------+--------------+------------+------------------------------+-------------------------------+
|  2023-04-03  | project1   | dataset_A    | table_z    |     110070445455             |              0                |
+--------------+------------+--------------+------------+------------------------------+-------------------------------+
|  2023-04-03  | project1   | dataset_B    | table_y    |            0                 |         52500873256           |
+--------------+------------+--------------+------------+------------------------------+-------------------------------+
|  2023-04-03  | project1   | dataset_B    | table_t    |            0                 |         32513713981           |
+--------------+------------+--------------+------------+------------------------------+-------------------------------+
|  2023-04-03  | project2   | dataset_C    | table_m    |      8894535352              |              0                |
+--------------+------------+--------------+------------+------------------------------+-------------------------------+
|  2023-04-03  | project2   | dataset_C    | table_n    |      4183337201              |              0                |
+--------------+------------+--------------+------------+------------------------------+-------------------------------+