Vista TABLE_STORAGE_BY_FOLDER
La vista INFORMATION_SCHEMA.TABLE_STORAGE_BY_FOLDER
contiene una fila por cada tabla o vista materializada de la carpeta superior del proyecto actual, incluidas sus subcarpetas.
Esta tabla no mantiene datos en tiempo real y puede tener un retraso de unos segundos o minutos. Los cambios en el almacenamiento que se deban únicamente a la caducidad de particiones o tablas, o a modificaciones en el periodo de viaje en el tiempo del conjunto de datos, pueden tardar hasta un día en aparecer en la vista INFORMATION_SCHEMA.TABLE_STORAGE
. Si se elimina un conjunto de datos que contiene más de 1000 tablas, esta vista no reflejará el cambio hasta que haya transcurrido el periodo de retroceso del conjunto de datos eliminado.
Las vistas de almacenamiento de tablas te ofrecen una forma cómoda de observar el consumo de almacenamiento actual y, además, proporcionan detalles sobre si el almacenamiento utiliza bytes lógicos sin comprimir, bytes físicos comprimidos o bytes de viajes en el tiempo. Esta información puede ayudarte con tareas como planificar el crecimiento futuro y comprender los patrones de actualización de las tablas.
Datos incluidos en las *_BYTES
columnas
Las columnas *_BYTES
de las vistas de almacenamiento de tablas incluyen información sobre el uso de bytes de almacenamiento. Esta información se determina analizando el uso del almacenamiento de las vistas materializadas y los siguientes tipos de tablas:
- Tablas permanentes creadas con cualquiera de los métodos descritos en Crear y usar tablas.
- Tablas temporales creadas en sesiones. Estas tablas se colocan en conjuntos de datos con nombres generados, como "_c018003e063d09570001ef33ae401fad6ab92a6a".
- Tablas temporales creadas en consultas de varias instrucciones ("scripts"). Estas tablas se colocan en conjuntos de datos con nombres generados, como "_script72280c173c88442c3a7200183a50eeeaa4073719".
Los datos almacenados en la caché de resultados de consultas no se te facturan, por lo que no se incluyen en los valores de la columna *_BYTES
.
Los clones y las copias de seguridad muestran los valores de las columnas *_BYTES
como si fueran tablas completas, en lugar de mostrar la diferencia del almacenamiento usado por la tabla base, por lo que son una sobreestimación. En tu factura se tiene en cuenta correctamente esta diferencia en el uso del almacenamiento. Para obtener más información sobre los bytes delta almacenados y facturados por los clones y las instantáneas, consulta la TABLE_STORAGE_USAGE_TIMELINE
vista.
Previsión de la facturación del almacenamiento
Para predecir la facturación mensual del almacenamiento de un conjunto de datos, puede usar las columnas logical
o physical *_BYTES
de esta vista, en función del modelo de facturación del almacenamiento del conjunto de datos que utilice. Ten en cuenta que esta es solo una previsión aproximada y que los importes de facturación precisos se calculan en función del uso de la infraestructura de facturación del almacenamiento de BigQuery y se muestran en Facturación de Cloud.
En el caso de los conjuntos de datos que usan un modelo de facturación lógica, puedes predecir tus costes de almacenamiento mensuales de la siguiente manera:
((Valor de ACTIVE_LOGICAL_BYTES
/ POW
(1024, 3)) * precio de bytes lógicos activos) +
((Valor de LONG_TERM_LOGICAL_BYTES
/ POW
(1024, 3)) * precio de bytes lógicos a largo plazo)
El valor ACTIVE_LOGICAL_BYTES
de una tabla refleja los bytes activos que usa esa tabla en ese momento.
En el caso de los conjuntos de datos que usan un modelo de facturación física, puedes predecir los costes de almacenamiento de la siguiente manera:
((valor de ACTIVE_PHYSICAL_BYTES + FAIL_SAFE_PHYSICAL_BYTES
/ POW
(1024, 3)) * precio de bytes físicos activos) +
((valor de LONG_TERM_PHYSICAL_BYTES
/ POW
(1024, 3)) * precio de bytes físicos a largo plazo)
El valor ACTIVE_PHYSICAL_BYTES
de una tabla refleja los bytes activos que usa actualmente esa tabla más los bytes que se usan para la función de viaje en el tiempo de esa tabla.
Para ver los bytes activos de la tabla, resta el valor de TIME_TRAVEL_PHYSICAL_BYTES
al valor de ACTIVE_PHYSICAL_BYTES
.
Para obtener más información, consulta la página Precios de almacenamiento.
Permisos obligatorios
Para consultar la vista INFORMATION_SCHEMA.TABLE_STORAGE_BY_FOLDER
, necesitas los siguientes permisos de gestión de identidades y accesos (IAM) en la carpeta superior 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.admin
roles/bigquery.dataViewer
roles/bigquery.dataEditor
roles/bigquery.metadataViewer
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_BY_FOLDER
tiene el siguiente esquema:
Nombre de la columna | Tipo de datos | Valor |
---|---|---|
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_BY_FOLDER .
|
PROJECT_ID |
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_CATALOG |
STRING |
El ID 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 denominado datasetId . |
TABLE_NAME |
STRING |
Nombre de la tabla o de la vista materializada, también conocido como tableId . |
CREATION_TIME |
TIMESTAMP |
Hora de creación de la tabla. |
TOTAL_ROWS |
INT64 |
Número total de filas de la tabla o de la vista materializada. |
TOTAL_PARTITIONS |
INT64 |
Número de particiones presentes en la tabla o en la vista materializada. Las tablas sin particiones devuelven 0. |
TOTAL_LOGICAL_BYTES |
INT64 |
Número total de bytes lógicos (sin comprimir) de la tabla o de la vista materializada. |
ACTIVE_LOGICAL_BYTES |
INT64 |
Número de bytes lógicos (sin comprimir) que tienen menos de 90 días. |
LONG_TERM_LOGICAL_BYTES |
INT64 |
Número de bytes lógicos (sin comprimir) que tienen más de 90 días. |
CURRENT_PHYSICAL_BYTES |
INT64 |
Número total de bytes físicos del almacenamiento actual de la tabla en todas las particiones. |
TOTAL_PHYSICAL_BYTES |
INT64 |
Número total de bytes físicos (comprimidos) usados para el almacenamiento, incluidos los bytes activos, a largo plazo y de viajes en el tiempo (datos eliminados o modificados). No se incluyen los bytes de seguridad (datos eliminados o modificados que se conservan después del periodo de la función de viaje en el tiempo). |
ACTIVE_PHYSICAL_BYTES |
INT64 |
Número de bytes físicos (comprimidos) con una antigüedad inferior a 90 días, incluidos los bytes de viajes en el tiempo (datos eliminados o modificados). |
LONG_TERM_PHYSICAL_BYTES |
INT64 |
Número de bytes físicos (comprimidos) con más de 90 días de antigüedad. |
TIME_TRAVEL_PHYSICAL_BYTES |
INT64 |
Número de bytes físicos (comprimidos) usados por el almacenamiento de viajes en el tiempo (datos eliminados o modificados). |
STORAGE_LAST_MODIFIED_TIME |
TIMESTAMP |
La hora más reciente en la que se escribieron datos en la tabla. |
DELETED |
BOOLEAN |
Indica si la tabla se ha eliminado. |
TABLE_TYPE |
STRING |
El tipo de tabla. Por ejemplo, BASE TABLE .
|
MANAGED_TABLE_TYPE |
STRING |
Esta columna está en versión preliminar. Tipo gestionado de la tabla. Por ejemplo, NATIVE o BIGLAKE .
|
FAIL_SAFE_PHYSICAL_BYTES |
INT64 |
Número de bytes físicos (comprimidos) utilizados por el almacenamiento a prueba de fallos (datos eliminados o modificados). |
LAST_METADATA_INDEX_REFRESH_TIME |
TIMESTAMP |
La hora de la última actualización del índice de metadatos de la tabla. |
TABLE_DELETION_REASON |
STRING |
Motivo de la eliminación de la tabla si el campo DELETED es true. Los
valores posibles son los siguientes:
|
TABLE_DELETION_TIME |
TIMESTAMP |
Hora de eliminación de la tabla. |
Ámbito y sintaxis
Las consultas en esta vista deben incluir un calificador de región. 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_BY_FOLDER |
Carpeta que contiene el proyecto especificado | REGION |
-
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_BY_FOLDER;
Ejemplo
La siguiente consulta muestra qué proyectos de una carpeta usan más almacenamiento:
SELECT project_id, SUM(total_logical_bytes) AS total_logical_bytes FROM `region-REGION`.INFORMATION_SCHEMA.TABLE_STORAGE_BY_FOLDER GROUP BY project_id ORDER BY total_logical_bytes DESC;
El resultado es similar al siguiente:
+---------------------+---------------------+ | project_id | total_logical_bytes | +---------------------+---------------------+ | projecta | 971329178274633 | +---------------------+---------------------+ | projectb | 834638211024843 | +---------------------+---------------------+ | projectc | 562910385625126 | +---------------------+---------------------+