Vista TABLE_STORAGE_BY_ORGANIZATION
La vista INFORMATION_SCHEMA.TABLE_STORAGE_BY_ORGANIZATION
contiene una fila por cada tabla o vista materializada de toda la organización asociada al proyecto actual.
Los datos de esta tabla no se actualizan en tiempo real y pueden 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 reflejarse en la vista INFORMATION_SCHEMA.TABLE_STORAGE
. En los casos de eliminación de conjuntos de datos en los que el conjunto de datos 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_ORGANIZATION
, necesita los siguientes permisos de gestión de identidades y accesos (IAM) en su organización:
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
Esta vista de esquema solo está disponible para los usuarios con Google Cloud organizaciones definidas.
Para obtener más información sobre los permisos de BigQuery, consulta Control de acceso con gestión de identidades y accesos.
Esquema
La vista INFORMATION_SCHEMA.TABLE_STORAGE_BY_ORGANIZATION
tiene el siguiente esquema:
Nombre de la columna | Tipo de datos | Valor |
---|---|---|
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_ORGANIZATION |
Organización 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`
.
En el siguiente ejemplo se muestra cómo devolver información de almacenamiento de las tablas de un proyecto específico de una organización:
SELECT * FROM `myProject`.`region-REGION`.INFORMATION_SCHEMA.TABLE_STORAGE_BY_ORGANIZATION;
En el siguiente ejemplo se muestra cómo devolver información de almacenamiento por proyecto de las tablas de una organización:
SELECT * FROM `region-REGION`.INFORMATION_SCHEMA.TABLE_STORAGE_BY_ORGANIZATION;
Ejemplo
En el siguiente ejemplo se muestra qué proyectos de una organización están usando más espacio de almacenamiento.
SELECT project_id, SUM(total_logical_bytes) AS total_logical_bytes FROM `region-REGION`.INFORMATION_SCHEMA.TABLE_STORAGE_BY_ORGANIZATION 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 | +---------------------+---------------------+