Copia de seguridad y recuperación ante desastres de BigQuery (restauración granular automatizada)
¿Qué es BigQuery?
BigQuery es un almacén de datos de nivel empresarial con una arquitectura sin servidor que permite a los usuarios ejecutar consultas de tipo SQL en grandes conjuntos de datos utilizando la potencia de procesamiento de la infraestructura de Google.
Como solución totalmente gestionada, BigQuery cuenta con funciones integradas como el aprendizaje automático, la inteligencia empresarial, el análisis en tiempo real e incluso el análisis geoespacial que ayudan a las empresas modernas que buscan aprovechar grandes cantidades de datos en su proceso de toma de decisiones. Esto se debe especialmente a su capacidad para procesar terabytes de datos en segundos y petabytes en minutos, lo que la convierte en una herramienta perfecta para el análisis de datos a gran escala.
Importante, BigQuery no tiene servidor. Esto significa que no se necesita ninguna gestión de infraestructura, lo que facilita centrarse en el análisis de datos importantes para obtener perspectivas significativas en lugar de preocuparse por los gastos generales.
Importancia de BigQuery en el análisis y almacenamiento de datos
El concepto de 'big data' (volumen, velocidad y variedad) plantea un reto importante a las capacidades de procesamiento de datos de los sistemas tradicionales. Esto se debe precisamente a su limitada capacidad, escalabilidad y potencia de procesamiento, lo que hace que extraer información significativa de conjuntos de datos vastos y complejos resulte casi imposible y lleve mucho tiempo.
Afortunadamente, aquí es donde BigQuery entra en juego. La sólida arquitectura de BigQuery permite a las empresas crear, entrenar y desplegar modelos de aprendizaje automático utilizando datos estructurados y semiestructurados directamente en BigQuery, lo que agiliza el proceso de extracción de información.
Además, BigQuery también ocupa una posición vital debido a sus ventajas únicas, como:
- Un modelo sin servidor que ayuda a simplificar las operaciones.
- Sus capacidades de alta velocidad hacen posible insertar miles de filas de datos por segundo, lo que permite realizar análisis en tiempo real.
- Su infraestructura subyacente garantiza una alta disponibilidad, lo que facilita el escalado automático para dar cabida a grandes conjuntos de datos.
- Garantiza una sólida seguridad de los datos y se integra a la perfección con otras herramientas y servicios como Data Studio, Looker y Tableau.
- Su modelo de pago por uso' también facilita a las empresas la gestión de los costes de capacidad y CAPEX, especialmente en infraestructura, como servidores, centros de datos y otro hardware.
La necesidad de copias de seguridad y restauración de BigQuery
A pesar de todas sus potentes funciones y capacidades, los datos de BigQuery, como cualquier otro "dato digital", son vulnerables a la eliminación accidental, la pérdida o la corrupción.
Ejemplo real de pérdida de datos de BigQuery
Pongamos que una empresa utiliza BigQuery para sus necesidades de almacenamiento de datos.
- Almacenan una plétora de datos, incluidos registros de ventas, información de clientes y detalles de productos.
- Un día, puede que se encargue a un empleado que elimine los registros obsoletos del sistema para mantener la eficiencia del almacenamiento.
- Así que ejecutan un comando, con la intención de eliminar los datos de más de cinco años.
Sin embargo, debido a un error en el comando SQL, el sistema malinterpreta el criterio de eliminación y se eliminan todos los registros con más de un año de antigüedad.
Si el borrado pasa desapercibido, y otro empleado intenta realizar un análisis de tendencias plurianual, será imposible porque falta un año entero de datos. Sin una sólida estrategia de copias de seguridad, la recuperación de estos datos no está garantizada.
En este escenario, a pesar de la fiabilidad de BigQuery, los datos que contenía eran vulnerables a un error humano, un borrado accidental en este caso. Esto también puede ser aplicable en escenarios relacionados con el cumplimiento normativo y los requisitos de conservación de datos de algunas organizaciones.
Para salvaguardar su valiosa información, es es crucial contar con una sólida estrategia de copias de seguridad que le garantice una rápida recuperación ante cualquier problema imprevisto relacionado con los datos y mantenga la continuidad de su negocio.
Utilizando HYCU para la copia de seguridad de Google BigQuery
Cuando se trata de proteger sus datos en Google BigQuery, HYCU ofrece una solución completa y fácil de usar.
- En caso de pérdida de datos o fallo del sistema, HYCU permite una funcionalidad de restauración instantánea para devolver sus tablas y estados anteriores. De esta forma, el tiempo de inactividad y la interrupción del negocio son mínimos.
- Otro beneficio y superpotencia de HYCU es su proceso de recuperación preciso y fiable para Google Cloud. HYCU garantiza que los datos restaurados mantengan su integridad y coherencia, reflejando el estado de los datos en el momento de la copia de seguridad. Esto es especialmente crucial para cargas de trabajo analíticas o complejas en BigQuery, donde la precisión y la coherencia de los datos son primordiales.
Restaure tablas y conjuntos de datos en unos pocos clics

Automatice todas las operaciones de copia de seguridad en 1 clic
HYCU automatiza la copia de seguridad de sus conjuntos de datos, tablas y esquemas BigQuery, eliminando la necesidad de intervención manual. Esto le libera tiempo y reduce drásticamente el riesgo de que un error humano (por ejemplo, un mal uso del ratón que provoque un borrado accidental) provoque la pérdida de datos.
Además, HYCU ofrece la posibilidad de personalizar la configuración de las copias de seguridad:
- Programe las copias de seguridad para las horas de menor actividad para minimizar el impacto en el rendimiento.
- Establezca políticas de retención para el cumplimiento de la normativa.
- Elija las ubicaciones de almacenamiento de las copias de seguridad para la soberanía de los datos.
Y todas estas copias de seguridad se cifran durante el tránsito y en reposo, garantizando la seguridad de sus datos.
Copias de seguridad nativas de Google Cloud
HYCU está construido de forma nativa para trabajar con las API de Google, y los clientes no tienen que utilizar un script para realizar las configuraciones de las operaciones de copia de seguridad tradicionales.
Además, puede configurar HYCU para que realice copias de seguridad de sus datos BigQuery en Google Cloud Storage (GCS) para la conservación de datos a largo plazo. Esta flexibilidad garantiza que sus datos respaldados puedan utilizarse o migrarse fácilmente según sus casos de uso o requisitos específicos.
Más allá de BigQuery: proteja su infraestructura de Google Cloud
HYCU proporciona copias de seguridad automatizadas y restauración granular en toda la infraestructura de Google Cloud, DBaaS, PaaS y SaaS. De hecho, HYCU cuenta con la cobertura más completa de la infraestructura y los servicios de Google Cloud con soporte completo para:
- Google Cloud Engine (GCE)
- Google Cloud Storage
- Google CloudSQL
- Google BigQuery
- Google Kubernetes Engine (GKE)
- Google Cloud VMware Engine
- Google Workspace
- SAP HANA en Google Cloud
Proteja la infraestructura multicloud, PaaS, DBaaS y SaaS
HYCU no se limita a realizar copias de seguridad de sus datos BigQuery; también es compatible con diversas fuentes de datos y cargas de trabajo. Esto significa que si tiene otras cargas de trabajo en Google, otras nubes públicas, centros de datos locales o incluso aplicaciones SaaS, DBaaS y PaaS, HYCU puede realizar copias de seguridad y restaurarlas sin problemas.
Por otro lado, específicamente para BigQuery, HYCU proporciona una protección de datos completa. Esto asegura que todos sus datos de BigQuery, incluyendo tablas individuales y esquemas, puedan ser restaurados.
💡 Relacionados → Las 14 mejores soluciones y herramientas de copia de seguridad SaaS para la protección de datos SaaS
Suscríbase y proteja en unos pocos clics
Una de las características más destacadas de HYCU es su interfaz fácil de usar y su exhaustiva documentación, que hace que la creación y configuración de sus copias de seguridad de BigQuery se realice sin esfuerzo.
Por ejemplo, HYCU simplifica las operaciones de copia de seguridad descubriendo automáticamente todas las instancias y cargas de trabajo de su cuenta, lo que le permite asignar políticas preconfiguradas con un solo clic o crear las suyas propias.
Notablemente, estas políticas son "configurar y olvidar" - lo que significa que funcionan 24/7/365 sin ninguna operación manual o gestión diaria.
Protección de datos y seguridad mejoradas
Además de heredar automáticamente los roles y permisos de Google Cloud IAM (Identity and Access Management), HYCU también proporciona una función de control de acceso basado en roles (RBAC).
Esta función le permite definir los derechos de acceso y los roles para las operaciones de copia de seguridad y restauración. Esto ayuda a prevenir el acceso no autorizado y garantiza que las copias de seguridad de sus datos se realicen de forma segura y profesional.
Esta integración garantiza que las operaciones de copia de seguridad y restauración sólo sean realizadas por usuarios autorizados.
Precios Rentables
HYCU ofrece opciones de precios flexibles, asegurando que empresas de todos los tamaños se beneficien de sus robustas capacidades de copia de seguridad. El coste de utilizar HYCU se ajusta a sus necesidades especÃficas, como la cantidad de datos de los que necesita hacer copias de seguridad, la frecuencia de las copias de seguridad y el periodo de retención requerido. Este enfoque le permite adaptar el servicio a sus necesidades, asegurándose de que sólo paga por lo que necesita.
Una vista única de su patrimonio de Google con estado de protección
Si su organización es como la mayoría, es posible que esté utilizando muchos más servicios de Google junto con otros servicios de nube pública y aplicaciones SaaS. Esto supone un enorme desafío a la hora de realizar un seguimiento, por no hablar de asegurarse de que los datos y la configuración están protegidos y disponibles para su restauración. Con R-Graph, los usuarios de HYCU pueden realizar un seguimiento de toda la infraestructura en la nube, los servicios, PaaS, DBaaS y SaaS en una única vista de "mapa del tesoro". Podrá rastrear qué servicios están protegidos y cumplen con la normativa y cuáles requieren protección.
💡 Relacionados → Solución de copia de seguridad y recuperación de Google Workspace (G Suite)
Opciones y configuraciones predeterminadas de BigQuery Backup
Para habilitar BigQuery Backup, necesita acceso de administrador con los siguientes roles IAM para gestionar conjuntos de datos:
- Copiar un conjunto de datos (Beta):
- Administrador de BigQuery (roles/bigquery.admin) en el proyecto de destino
- Visor de datos de BigQuery (roles/bigquery.dataViewer) en el conjunto de datos de origen
- Editor de datos de BigQuery (roles/bigquery.dataEditor) en el conjunto de datos de destino
- Eliminar un conjunto de datos: BigQuery Data Owner (roles/bigquery.dataOwner) en el proyecto
- Restaurar un conjunto de datos eliminado: BigQuery Admin (roles/bigquery.admin) en el proyecto
Una vez que tenga acceso, podrá gestionar las configuraciones y opciones de copia de seguridad que se indican a continuación.
Copiar copias de seguridad a nivel de conjunto de datos
Un conjunto de datos típico en BigQuery es un contenedor de nivel superior que alberga sus tablas y vistas. También es una forma eficaz de organizar y controlar el acceso a sus datos. Por ejemplo, separando los datos en bruto de los datos procesados o los datos de diferentes departamentos o proyectos.
Por otro lado, configurar las copias de seguridad a nivel de conjunto de datos implica crear y exportar una copia de sus datos a una ubicación específica, por ejemplo, un bucket de almacenamiento en la nube. Esta acción garantiza la disponibilidad e integridad de sus datos, incluso en caso de borrado o modificación accidental.
Métodos de configuración de las copias de seguridad a nivel de conjunto de datos
Existen dos métodos para configurar las copias de seguridad a nivel de conjunto de datos; la API de BigQuery y los comandos SQL.
Utilizando la API de BigQuery
La API de BigQuery le permite utilizar el servicio de transferencia de datos de BigQuery para programar transferencias de datos automatizadas desde BigQuery para un cubo de almacenamiento en la nube.
- Dado que las copias de seguridad se almacenarán en el cubo de almacenamiento en la nube de Google, cree un nuevo cubo en la sección "Almacenamiento" de la consola de la nube.
- Vaya a la biblioteca API y habilite la API del servicio de transferencia de datos BigQuery y API de almacenamiento en la nube.
- Elija un lenguaje de programación e instale la biblioteca cliente correspondiente para la API BigQuery. Lea la documentación aquí.
- Instale el Google Cloud SDK. Esto proporciona la herramienta de línea de comandos necesaria para interactuar con las API y otros servicios de Google Cloud.
- Autenticar el SDK con su cuenta de Google Cloud utilizando los comandos de la gCLI. Esto garantiza que el SDK pueda acceder y realizar operaciones en su nombre.
- Si aún no dispone de uno, cree un nuevo conjunto de datos.
- Defina la configuración. Especifique el conjunto de datos, el proyecto, los ID de las tablas y el cubo de almacenamiento en la nube.
- Exporte los datos de sus tablas BigQuery a un cubo de almacenamiento en la nube realizando una solicitud a la API.
Una vez confirmado el proceso, asegúrese de que su conjunto de datos BigQuery y Cloud Storage se encuentran en la ubicación exacta para evitar posibles problemas.
💡Nota → Esta opción de copia de seguridad de BigQuery es solo una copia de los datos existentes y no una incremental.
Recomendaciones → Obtenga más información sobre las API de Google Cloud
Utilización de comandos SQL
Los comandos SQL en BigQuery proporcionan otra opción para gestionar e interactuar con conjuntos de datos. En el contexto de 'copia de seguridad de datos, esto no es del todo posible -lo mismo ocurre con todas las opciones de copia de seguridad de BigQuery. En su lugar, se crea una nueva tabla con los datos existentes.
Recomendaciones → Lea la documentación de Google sobre la creación de conjuntos de datos mediante comandos SQL.
💡Nota: Esto no es precisamente una solución de 'copia de seguridad'; en su lugar, está creando conjuntos de datos en otra ubicación.
Además de establecer estas configuraciones de copia de seguridad en BigQuery, hay algunos parámetros clave que debe tener en cuenta:
- Frecuencia de copia de seguridad. Esto depende totalmente de la frecuencia de los cambios de sus datos. Si sus datos cambian rápidamente, es posible que necesite copias de seguridad diarias o cada hora. Si no es el caso, puede establecerla en mensual o semanal.
- Políticas de retención. Esto no es igual en todos los ámbitos y puede definirse en función de los requisitos de su empresa, siempre que cumpla las leyes sobre datos que rigen su sector.
- Preservación de esquemas. Este aspecto crítico de la configuración garantiza que el esquema (o estructura) de sus datos permanezca intacto. Esto significa que todos los tipos de datos, nombres, tablas y demás información relevante son exactos incluso durante la replicación.
Copias instantáneas a nivel de tabla
La copia de seguridad a nivel de tabla en BigQuery le permite seleccionar tablas individuales dentro de un conjunto de datos para su copia de seguridad. Esto resulta especialmente útil en escenarios en los que sólo algunas tablas del conjunto de datos requieren una copia de seguridad.
Creación de instantáneas para tablas individuales.
Existen dos métodos estándar para crear instantáneas para tablas individuales;
- Puede utilizar el comando 'bq extract' a través de la herramienta de línea de comandos, O
- Puede utilizar la API de BigQuery para realizar una solicitud.
Aquí tiene un ejemplo:
bq extract 'my_dataset.my_table' gs://my_bucket/my_table_backup
Dónde:
- 'my_dataset.my_table'es la tabla de la que desea hacer una copia de seguridad - y,
- 'gs://my_bucket/my_table_backup'es la ubicación GCS donde se almacenará la copia de seguridad.
Ambos métodos exportarán los datos de la tabla como archivos en el formato que elija al bucket de Google Cloud Storage (GCS), lo que facilitará la importación y restauración de la tabla en caso necesario.
El GCS es una opción preferible para almacenar sus copias de seguridad de tablas de BigQuery debido a su seguridad, fiabilidad y rentabilidad.
Exportar sus copias de seguridad de tablas BigQuery en diferentes formatos.
Puede exportar los datos de sus tablas en los siguientes formatos:
- JSON (Javascript Object Notation). Este es un formato flexible y legible por humanos, por lo que es más fácil de entender y trabajar con él. Sin embargo, puede ser más grande (en tamaño) y más lento que otros formatos.
- CSV (Comma-Separated Values). Se trata de un formato sencillo y ampliamente admitido para la mayoría de los escenarios de representación de datos en tablas. Sin embargo, no presenta con precisión estructuras de datos complejas.
- Avro es un framework de serialización de datos y orientado a filas. Su formato binario compacto lo hace ideal para manejar grandes conjuntos de datos, especialmente cuando el esquema de la tabla cambia con el tiempo. Además, puede comprimir los archivos almacenados en formato Avro, lo que reduce el almacenamiento y acelera el tiempo de copia de seguridad/restauración.
- Parquet (Apache Parquet) es un formato de almacenamiento de datos orientado a columnas. También puede manejar grandes conjuntos de datos y ofrece excelentes capacidades de compresión. Sin embargo, puede tener algunas limitaciones en cuanto a las actualizaciones frecuentes de las tablas.
Manejo de tablas particionadas de BigQuery y copias de seguridad incrementales
La partición de tablas en BigQuery es un enfoque para gestionar y organizar grandes conjuntos de datos.
Lo ideal es realizar una copia de seguridad basada en la estrategia de partición existente.
Para ello, puede:
- realizar una copia de seguridad de toda la tabla, incluidas todas las particiones, O
- realizar una copia de seguridad de particiones específicas.
Sin embargo, exportar sólo las particiones modificadas o añadidas recientemente es más eficiente desde el punto de vista del almacenamiento si se trata de copias de seguridad incrementales.
Por ejemplo, si su tabla está particionada por fecha, sólo puede extraer la partición de hoy.
Limitaciones de las instantáneas a nivel de tabla
- Una instantánea de tabla debe estar en la misma región, y bajo la misma organización, que su tabla base.
- Las instantáneas de tabla son de sólo lectura. No puede actualizar los datos de una instantánea de tabla a menos que cree una tabla estándar a partir de la instantánea y, a continuación, actualice los datos. Sólo puede actualizar los metadatos de una instantánea de tabla; por ejemplo, su descripción, fecha de caducidad y política de acceso.
- Sólo puede tomar una instantánea de los datos de una tabla tal y como eran hace siete días o más recientemente debido al límite de siete días para viajar en el tiempo.
- No puede tomar una instantánea de una vista o una vista materializada.
- No puede tomar una instantánea de una tabla externa.
- No puede sobrescribir una tabla o una instantánea de tabla existente al crear una instantánea de tabla.
- Si realiza una instantánea de una tabla que tiene datos en almacenamiento optimizado para escritura (búfer de flujo), los datos en el almacenamiento optimizado para escritura no se incluyen en la instantánea de la tabla.
- Si realiza una instantánea de una tabla que tiene datos en recorrido temporal, los datos en recorrido temporal no se incluyen en la instantánea de la tabla.
- Si realiza una instantánea de una tabla particionada que tiene establecida una caducidad de partición, la información de caducidad de partición no se conserva en la instantánea. La tabla 'snapshotted' utiliza en su lugar la caducidad de partición predeterminada del conjunto de datos de destino. Para conservar la información de caducidad de la partición, copie la tabla en su lugar.
- No puede copiar una instantánea de tabla.
Copias de seguridad basadas en instantáneas
Una instantánea en BigQuery es una copia puntual de los datos de una tabla (denominada tabla base). Esto significa que captura el estado de la tabla y sus datos en un momento específico, lo que le permite restaurar desde ese punto específico si es necesario.
En pocas palabras, es tomar una fotografía de sus datos. Y puede ser valioso para instancias como el cumplimiento, la auditoría o el análisis de tendencias, donde proporciona una visión coherente de los datos tal y como existían en un momento dado.
💡Nota → Las instantáneas de tablas son de 'sólo lectura', pero puede crear/restaurar una tabla estándar a partir de una instantánea y luego modificarla.
Creación y gestión de instantáneas para la recuperación puntual
Puede crear una instantánea de una tabla utilizando las siguientes opciones:
- Google Cloud Console
- Instrucción SQL
- El comando
bq cp --snapshot - jobs.insert API
Por ejemplo, si utiliza Google Cloud Console, siga estos pasos:
- Vaya a la Cloud Console, y navegue hasta la página BigQuery.
- Busque el panel Explorador, y expanda los nodos de proyecto y conjunto de datos de la tabla que desea instantanear.
- Haga clic en el nombre de la tabla y en "HACER".
- A continuación, aparecerá "Crear instantánea de tabla". Introduzca la información de Proyecto, Tabla y Conjunto de datos para la nueva instantánea de tabla.
- Establezca su Hora de caducidad.
- Haga clic en Guardar.
Una vez que cree esta instantánea, se separará de la tabla original. Esto significa que cualquier cambio en la tabla no afectará a los datos de la instantánea en la nueva tabla.
Recomendado → Más información sobre la creación de instantáneas de tablas utilizando otras opciones.
Beneficios de las copias de seguridad basadas en instantáneas
- Versión de datos. Esto le permite acceder a los datos tal y como aparecían en momentos concretos. Con ello, puede rastrear los cambios o restaurar los datos a su estado original si es necesario.
- Análisis histórico. Puede comparar diferentes instantáneas para realizar un seguimiento de los cambios de los datos a lo largo del tiempo. Esto puede ayudarle a obtener información sobre las tendencias, mejorando su proceso de toma de decisiones.
- Retención de datos. Algunas industrias y organizaciones tienen políticas estrictas de retención de datos para cumplir con los requisitos reglamentarios. Las copias de seguridad basadas en instantáneas le permiten retener los datos durante un tiempo específico, tal y como exigen las normativas.
Utilización de la función de viaje en el tiempo de BigQuery para la restauración de datos
BigQuery ofrece una función denominada viaje en el tiempo, que le permite acceder a las versiones históricas de su tabla en los últimos siete días.
Con la función de viaje en el tiempo, puede restaurar o conservar los datos de una tabla desde un momento específico, deshaciendo cualquier cambio realizado después de esa marca de tiempo elegida.
Las copias de seguridad basadas en instantáneas y la función de viaje en el tiempo refuerzan significativamente su estrategia de protección de datos en BigQuery.
Tenga en cuenta que el "viaje en el tiempo" no es una solución de recuperación garantizada en caso de fallo operativo, ciberataque o desastres naturales.
Aquí le explicamos por qué:
- La ventana de tiempo para recuperar los datos se limita a siete días. Si hay un problema que no se detecta en ese plazo, los datos no se pueden recuperar.
- El viaje en el tiempo no ofrece la opción de duplicar o hacer una copia de seguridad de sus datos. Todo lo que hace es simplemente permitirle volver a los estados anteriores de sus datos.
Debido a esto, se vuelve crítico emplear otras medidas de copia de seguridad como exportaciones regulares de datos a Google Cloud Storage y replicación de datos para garantizar la seguridad integral de los datos.
Implementación de soluciones de copia de seguridad de BigQuery
Utilización de Python y GitHub
Con su facilidad de uso y su amplio soporte de bibliotecas, Python facilita la interacción con BigQuery y la automatización de todo el proceso de copia de seguridad.
Ahora, utilizando Python con GitHub, una plataforma líder para alojar y controlar versiones de código, puede gestionar sus scripts, realizar un seguimiento de los cambios e incluso colaborar con otras personas.
Para que esto funcione, necesita aprovechar las bibliotecas y repositorios de Python existentes para agilizar su proceso de desarrollo:
- google-cloud-bigquery. Esta biblioteca oficial de Python es de Google Cloud y proporciona funcionalidades como la gestión de conjuntos de datos, la programación y la ejecución de consultas.
He aquí un ejemplo de uso de Python para realizar una consulta
from google.cloud import bigquery
cliente = bigquery.Client()
# Realice una consulta.
CONSULTA = (
'SELECT nombre FROM `bigquery-public-data.usa_names.usa_1910_2013` '
'WHERE estado = "TX" '
'LIMIT 100')
query_job = client.query(QUERY) # Solicitud API
rows = query_job.result() # Espera a que termine la consulta
para fila en filas:
print(row.name)- google-cloud-storage. Esta biblioteca permite automatizar el almacenamiento de sus copias de seguridad en Google Cloud.
- pandas-gbq. Esta biblioteca tiende un puente entre BigQuery y Pandas. Simplifica la recuperación de resultados de las tablas de BigQuery utilizando consultas similares a SQL.
Ejemplos de lo que puede hacer con la librería pandas-gbq:
Realizar una consulta:
importar pandas_gbqresultado_dataframe = pandas_gbq.read_gbq("SELECT columna FROM conjunto_datos.table WHERE value = 'algo'")
Cargar un dataframe:
import pandas_gbq
Además, adherirse a algunas de las mejores prácticas estándar es crucial cuando se utiliza Python y GitHub para crear copias de seguridad de BigQuery.
- Supervise sus trabajos de copia de seguridad. Implemente el manejo de errores y el registro en sus scripts para activar un sistema de alerta que le notifique de posibles problemas con el proceso de copia de seguridad.
- Modularice sus scripts Python. La modularización es simplemente una forma de organizar los programas a medida que se complican. En este caso, divida sus funciones relacionadas con las copias de seguridad en modelos reutilizables, lo que facilitará su gestión y mantenimiento a medida que crecen.
- Utilice archivos de configuración. También conocidos como ficheros de configuración, se utilizan para almacenar pares clave-valor de un código Python. Por ejemplo, al ejecutar copias de seguridad de BigQuery, puede utilizar un archivo de configuración para almacenar los ID de los proyectos, los nombres de los conjuntos de datos y las ubicaciones de las copias de seguridad. Esto permite una fácil modificación sin alterar el código.
Uso de la línea de comandos y del SDK de Google Cloud
La línea de comandos (o la gCLI) es un conjunto de herramientas que se utilizan para gestionar aplicaciones y recursos alojados en Google Cloud. Estas herramientas incluyen gcloud, gsutil y las herramientas de línea de comandos bq. Por ejemplo, puede programar y automatizar todas las tareas relacionadas con las copias de seguridad con la línea de comandos.
Por otro lado, el SDK de Google Cloud facilita el desarrollo y la interacción con la API de Google Cloud utilizando su lenguaje de programación preferido.
Combine ambos y podrá gestionar cómodamente sus copias de seguridad de BigQuery.
Cómo configurar su SDK de Google Cloud.
- Vaya a Cloud SDK - Bibliotecas y herramientas de línea de comandos | Google Cloud.
- Descargue el paquete de instalación de su respectiva máquina (Windows, macOS, Ubuntu y Linux) y siga las instrucciones de la página.
- Instale el SDK de Google Cloud utilizando el ./google-cloud-sdk/install.sh y siga las indicaciones necesarias.
- Autenticé su cuenta para habilitar los recursos de BigQuery utilizando la línea de comandos 'gcloud auth login'.
Ahora que su SDK de Google Cloud está configurado, lo siguiente es utilizar la línea de comandos para realizar diversas funciones de copia de seguridad.
Creación de copias de seguridad
Crear una copia de seguridad de BigQuery utilizando la línea de comandos '[bq cp]' es simplemente copiar la tabla de una ubicación a otra. Las ubicaciones pueden ser diferentes proyectos, diferentes conjuntos de datos o incluso dentro de los mismos conjuntos de datos.
bq cp [project_id]:[dataset].[table] [project_id]:[backup_dataset].[backup_table]
Donde su;
- '[project_id]' es su id de Google Cloud.
- '[dataset]' contiene la tabla de la que desea hacer una copia de seguridad.
- '[tabla]' contiene el nombre de la tabla de la que desea hacer una copia de seguridad.
- '[backup_dataset]' es el conjunto de datos donde desea almacenar la copia de seguridad.
- '[backup_table]' es el nombre de la tabla de copia de seguridad.
Exportar datos
Utilice la línea de comandos '[bq extract]' para exportar datos de BigQuery a Google Cloud Storage o a sistemas de almacenamiento externos. Esta línea de comandos también permite exportar datos en JSON, CSV, Avro y Parquet.
bq extract --destination_format=[format] [project_id]:[dataset].[table] gs://[bucket]/[path]
Aquí, sustituya;
- '[format]' por el formato de exportación que desee.
- '[bucket]' con el nombre de su bucket de Google Cloud Storage.
- '[path]' con la ruta en la que desea almacenar los datos exportados.
Por ejemplo:
bq extract --destination_format CSV 'mydataset.mytable' gs://mybucket/mydata.csv
Gestione las copias de seguridad
Para gestionar sus copias de seguridad de BigQuery, utilice el comando '[bq ls]' para listar todas las copias de seguridad [o tabla] de un conjunto de datos específico - o '[bq rm]' para eliminar una tabla.
bq ls mydatasetbq rm 'mydataset.mytable'
Limitaciones de las opciones de copia de seguridad de BigQuery
Opción de recuperación puntual limitada
Suponga que tiene un conjunto de datos crítico en BigQuery que sufre frecuentes actualizaciones y transformaciones. Un día, el conjunto de datos se vuelve impreciso debido a un problema de corrupción de datos.
Dado que BigQuery no ofrece recuperación puntual, no puede restaurar fácilmente el conjunto de datos a un estado anterior al que se produjo la corrupción. Sin copias de seguridad automatizadas, es posible que tenga que depender de las exportaciones manuales o de las instantáneas que haya tomado anteriormente, lo que podría llevar mucho tiempo y quedar potencialmente obsoleto.
Proceso de importación y exportación complejo
Pongamos que tiene un gran conjunto de datos en BigQuery y desea crear una copia de seguridad en un sistema de almacenamiento externo, como Google Cloud Storage (GCS); aunque BigQuery permite exportar datos en formatos como Avro, Parquet o CSV, la exportación de grandes conjuntos de datos puede ser compleja y consumir muchos recursos.
Por ejemplo, exportar varios terabytes de datos a GCS puede requerir un tiempo y unos recursos de red considerables, lo que conlleva costes adicionales y posibles interrupciones de las operaciones en curso.
Política de retención de copias de seguridad deficiente
Por defecto, BigQuery retiene las tablas o conjuntos de datos eliminados en la "Basura" durante 30 días antes de su eliminación permanente. Aunque esto proporciona un cierto nivel de protección contra los borrados accidentales, no puede ampliar ni personalizar este periodo de retención.
Configuración y secuencias de comandos de uso intensivo de recursos
La gestión de secuencias de comandos y configuraciones personalizadas puede resultar compleja, especialmente a medida que se amplía el entorno. La gestión de scripts puede ser desalentadora y requerir mucho tiempo para un servicio como BigQuery, por no hablar de si usted es responsable de la gestión de múltiples servicios en la nube.

BigQuery Backup & Recovery: Lo esencial
Google BigQuery es sin duda una herramienta poderosa para las organizaciones impulsadas por los datos. Sus rapidísimas consultas SQL, sus capacidades de aprendizaje automático integradas y su infraestructura escalable la convierten en una solución fiable, especialmente para procesar grandes cantidades de datos. Sin embargo, el valioso esquema, los conjuntos de datos y las tablas que residen en BigQuery deben protegerse para mitigar los riesgos de pérdida de datos o fallos del sistema. Aquí es donde HYCU viene a salvar el día.
Con HYCU Protégé, obtendrá copias de seguridad con 1 clic y restauración granular para sus datos BigQuery. Esta copia de seguridad automatizada "configure y olvídese" funciona 24/7/365, ofreciéndole total tranquilidad de que sus datos BigQuery estarán disponibles cuando los necesite.