Mostrar capturas de tablas
En este documento se describe cómo obtener una lista de las copias de una tabla de un conjunto de datos de BigQuery en la consola de Cloud de Confiance , consultando la tabla INFORMATION_SCHEMA.TABLE_SNAPSHOTS
, usando el comando bq ls
o llamando a la API tables.list
. También se describe cómo enumerar todas las instantáneas de tabla de una tabla base específica consultando la tabla INFORMATION_SCHEMA.TABLE_SNAPSHOTS
.
Este documento está dirigido a usuarios que conocen las tablas y las instantáneas de tablas de BigQuery.
Permisos y roles
En esta sección se describen los permisos de gestión de identidades y accesos (IAM) que necesitas para enumerar las copias de seguridad de tablas de un conjunto de datos y los roles de IAM predefinidos que conceden esos permisos. Los permisos y los roles para enumerar las copias de una tabla son los mismos que los necesarios para enumerar otros tipos de tablas.
Permisos
Para mostrar las capturas de tablas de un conjunto de datos, necesitas el siguiente permiso:
Permiso | Recurso |
---|---|
bigquery.tables.list
|
El conjunto de datos que contiene las capturas de la tabla. |
Roles
Los roles predefinidos de BigQuery que proporcionan el permiso necesario son los siguientes:
Role | Recurso |
---|---|
Cualquiera de las siguientes: bigquery.dataUser bigquery.dataViewer bigquery.dataEditor bigquery.dataOwner bigquery.admin
|
El conjunto de datos que contiene las capturas de la tabla. |
Mostrar las capturas de tablas de un conjunto de datos
Obtener una lista de capturas de tablas en un conjunto de datos es similar a obtener una lista de otros tipos de tablas. Las instantáneas de la tabla tienen el tipo SNAPSHOT
.
Puedes enumerar las copias de la tabla mediante una de las siguientes opciones:
Consola
En la Cloud de Confiance consola, ve a la página BigQuery.
En el panel de la izquierda, haz clic en
Explorador:Si no ves el panel de la izquierda, haz clic en
Ampliar panel de la izquierda para abrirlo.En el panel Explorador, despliega el proyecto, haz clic en Conjuntos de datos y, a continuación, selecciona el conjunto de datos que contiene las copias de la tabla que quieres mostrar.
Haz clic en Resumen > Tablas. Para encontrar las versiones de la lista, busque el valor
SNAPSHOT
en la columna Tipo.
SQL
Consulta la vista INFORMATION_SCHEMA.TABLE_SNAPSHOTS
:
En la Cloud de Confiance consola, ve a la página BigQuery.
En el editor de consultas, introduce la siguiente instrucción:
SELECT * FROM PROJECT_ID.DATASET_NAME.INFORMATION_SCHEMA.TABLE_SNAPSHOTS;
Haz los cambios siguientes:
PROJECT_ID
: el ID del proyecto que contiene las copias de seguridad que quieres enumerar.DATASET_NAME
: el nombre del conjunto de datos que contiene las copias de seguridad que quieres enumerar.
Haz clic en
Ejecutar.
Para obtener más información sobre cómo ejecutar consultas, consulta Ejecutar una consulta interactiva.
El resultado es similar al siguiente:
+---------------+----------------+------------------+--------------------+-------------------+-----------------+-----------------------------+ | table_catalog | table_schema | table_name | base_table_catalog | base_table_schema | base_table_name | snapshot_time | +---------------+----------------+------------------+--------------------+-------------------+-----------------+-----------------------------+ | myproject | mydataset | mysnapshot | basetableproject | basetabledataset | basetable | 2021-04-16 14:05:27.519 UTC | +---------------+----------------+------------------+--------------------+-------------------+-----------------+-----------------------------+
bq
Introduce el siguiente comando en Cloud Shell:
bq ls \ PROJECT_ID:DATASET_NAME
Haz los cambios siguientes:
PROJECT_ID
: el ID del proyecto que contiene las copias de seguridad que quieres enumerar.DATASET_NAME
: el nombre del conjunto de datos que contiene las copias de seguridad que quieres enumerar.
El resultado es similar al siguiente:
+-------------------------+--------+---------------------+-------------------+ | tableId | Type | Labels | Time Partitioning | +-------------------------+--------+---------------------+-------------------+ | mysnapshot |SNAPSHOT| | | +-------------------------+--------+---------------------+-------------------+
API
Llama al método tables.list
con los siguientes parámetros:
Parámetro | Valor |
---|---|
projectId |
El ID del proyecto que contiene las copias de seguridad que quieres enumerar. |
datasetId |
El nombre del conjunto de datos que contiene las copias de seguridad que quieres enumerar. |
Mostrar las capturas de una tabla base especificada
Para enumerar las instantáneas de una tabla base específica, consulta la vista INFORMATION_SCHEMA.TABLE_SNAPSHOTS
:
SELECT * FROM PROJECT_ID.DATASET_NAME.INFORMATION_SCHEMA.TABLE_SNAPSHOTS WHERE base_table_name = 'books';
Haz los cambios siguientes:
PROJECT_ID
: el ID del proyecto que contiene las copias de seguridad que quieres enumerar.DATASET_NAME
: el nombre del conjunto de datos que contiene las copias de seguridad que quieres enumerar.
Siguientes pasos
- Obtener información sobre una captura de tabla
- Actualizar la descripción, la fecha de vencimiento o la política de acceso de una captura de tabla.
- Eliminar una captura de tabla.