Restaurar tablas eliminadas
En este documento se describe cómo restaurar (o recuperar) una tabla eliminada en BigQuery. Puedes restaurar una tabla eliminada en el periodo de viaje en el tiempo especificado para el conjunto de datos, incluidas las eliminaciones explícitas y las implícitas debido al vencimiento de la tabla. También puedes configurar la ventana de viaje en el tiempo.
Para obtener información sobre cómo restaurar un conjunto de datos o una instantánea eliminados, consulta los siguientes recursos:
La ventana de viaje en el tiempo puede tener una duración de entre dos y siete días. Una vez que ha pasado el periodo de recuperación, BigQuery ofrece un periodo de seguridad en el que los datos eliminados se conservan automáticamente durante siete días más. Una vez que haya pasado el periodo de seguridad, no se podrá restaurar una tabla con ningún método, ni siquiera abriendo una incidencia de asistencia.
Antes de empezar
Asegúrate de que tienes los permisos de gestión de identidades y accesos (IAM) necesarios para restaurar una tabla eliminada.
Roles obligatorios
Para obtener los permisos que necesitas para restaurar una tabla eliminada, pide a tu administrador que te asigne el rol de gestión de identidades y accesos Usuario de BigQuery (roles/bigquery.user
) en el proyecto.
Para obtener más información sobre cómo conceder roles, consulta el artículo Gestionar el acceso a proyectos, carpetas y organizaciones.
También puedes conseguir los permisos necesarios a través de roles personalizados u otros roles predefinidos.
Restaurar una tabla
Cuando restauras una tabla a partir de datos históricos, las etiquetas de la tabla de origen no se copian en la tabla de destino.
Puedes restaurar una tabla que se haya eliminado, pero que aún esté dentro del periodo de la función de viaje en el tiempo, copiándola en una tabla nueva con el decorador de tiempo @<time>
.
No puedes consultar una tabla eliminada, aunque uses un decorador de tiempo. Primero debes restaurarlo.
Para restaurar una tabla, selecciona una de las siguientes opciones:
Consola
No puedes restaurar una tabla eliminada con la Google Cloud consola.
bq
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
Para restaurar una tabla, primero debes determinar la marca de tiempo UNIX de cuándo existía la tabla (en milisegundos). Puedes usar el comando
date
de Linux para generar la marca de tiempo de Unix a partir de un valor de marca de tiempo normal:date -d '2023-08-04 16:00:34.456789Z' +%s000
A continuación, usa el comando
bq copy
con el decorador de viaje en el tiempo@<time>
para copiar la tabla.Por ejemplo, introduce el siguiente comando para copiar la tabla
mydataset.mytable
en el momento1418864998000
en una tabla nuevamydataset.newtable
.bq cp mydataset.mytable@1418864998000 mydataset.newtable
(Opcional) Proporcione la marca
--location
y asigne el valor a su ubicación.También puedes especificar un desplazamiento relativo. En el siguiente ejemplo se copia la versión de una tabla de hace una hora:
bq cp mydataset.mytable@-3600000 mydataset.newtable
Para obtener más información, consulta Restaurar una tabla a partir de un momento concreto.
Go
Antes de probar este ejemplo, sigue las Goinstrucciones de configuración de la guía de inicio rápido de BigQuery con bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API Go de BigQuery.
Para autenticarte en BigQuery, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación para bibliotecas de cliente.
Java
Antes de probar este ejemplo, sigue las Javainstrucciones de configuración de la guía de inicio rápido de BigQuery con bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API Java de BigQuery.
Para autenticarte en BigQuery, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación para bibliotecas de cliente.
Node.js
Antes de probar este ejemplo, sigue las Node.jsinstrucciones de configuración de la guía de inicio rápido de BigQuery con bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API Node.js de BigQuery.
Para autenticarte en BigQuery, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación para bibliotecas de cliente.
Python
Antes de probar este ejemplo, sigue las Pythoninstrucciones de configuración de la guía de inicio rápido de BigQuery con bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API Python de BigQuery.
Para autenticarte en BigQuery, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación para bibliotecas de cliente.
Si prevé que puede que quiera restaurar una tabla más adelante de lo que permite el periodo de viaje en el tiempo, cree una instantánea de la tabla. Para obtener más información, consulta el artículo Introducción a las capturas de tablas.
No puedes restaurar una vista lógica directamente. Para obtener más información, consulta Restaurar una vista.
Siguientes pasos
- Consulta cómo crear y usar tablas.
- Consulta cómo gestionar tablas.
- Consulta cómo modificar los esquemas de tabla.
- Consulta información sobre cómo trabajar con datos de tablas.