Copias de seguridad

En esta página, se proporciona una descripción general de las copias de seguridad de Cloud Bigtable.

Las copias de seguridad de Cloud Bigtable te permiten guardar una copia del esquema y los datos de una tabla y, luego, restablecer desde la copia de seguridad a una tabla nueva más adelante. Antes de leer esta página, debes familiarizarte con la Descripción general de Cloud Bigtable y Administra tablas.

Para qué sirven las copias de seguridad

Las copias de seguridad pueden ayudarte a recuperarte de una corrupción de datos a nivel de la aplicación o de errores de operadores, como borrar una tabla por accidente.

Para qué no sirven las copias de seguridad

Las copias de seguridad no están destinadas a brindar protección contra fallas regionales o zonales. Usa la replicación si necesitas conmutar por error a diferentes regiones o zonas.

Las copias de seguridad no son legibles, por lo que no son útiles para las estadísticas sin conexión.

Características clave

  • Integración completa: el servicio de Cloud Bigtable controla por completo las copias de seguridad, sin necesidad de importarlas ni exportarlas.
  • Ahorro de costos: el uso de las copias de seguridad de Cloud Bigtable te permite evitar los costos asociados con la exportación, el almacenamiento y la importación de datos mediante otros servicios.
  • Vencimiento automático: cada copia de seguridad tiene una fecha de vencimiento definida por el usuario que puede ser de hasta 30 días posteriores a la creación de la copia de seguridad.

Trabaja con copias de seguridad

Consulta Administra las copias de seguridad para obtener instrucciones paso a paso sobre cómo crear una copia de seguridad y restablecer una tabla, además de operaciones como la actualización y eliminación de las copias de seguridad.

Usa lo siguiente para trabajar con copias de seguridad de Cloud Bigtable:

  • Cloud Console
  • La herramienta de línea de comandos gcloud
  • Bibliotecas cliente de Cloud Bigtable

También puedes acceder a la API directamente, pero te recomendamos que solo lo hagas si no puedes usar una biblioteca cliente de Cloud Bigtable que realice llamadas de copia de seguridad a la API.

Cómo funcionan las copias de seguridad

Almacenamiento

Una copia de seguridad de tablas es un recurso a nivel del clúster. Incluso si una tabla está en una instancia con varios clústeres (lo que significa que el clúster usa la replicación), se crea una copia de seguridad y se almacena en un solo clúster de esa instancia.

Copia de seguridad almacenada en un solo clúster

En una copia de seguridad de una tabla, se incluyen todos los datos que estaban en la tabla cuando se creó la copia de seguridad, en el clúster en el que se creó la copia de seguridad. El tamaño de una copia de seguridad nunca es mayor que el de la tabla de origen en el momento en que se crea la copia de seguridad. Puedes crear hasta 50 copias de seguridad por tabla por clúster.

Puedes borrar una tabla que tenga una copia de seguridad. Para proteger las copias de seguridad, no puedes borrar un clúster que contenga una copia de seguridad y no puedes borrar una instancia que tenga una o más copias de seguridad en cualquier clúster.

La copia de seguridad aún existe después de haberla restablecido a una tabla nueva. Puedes borrarla o dejar que venza cuando ya no la necesites. El almacenamiento de copias de seguridad no se tiene en cuenta para el límite de almacenamiento de nodos de un proyecto.

Los datos de las copias de seguridad se encriptan y se almacenan en un formato de propiedad.

Costos

No se aplican cargos para crear o restablecer una copia de seguridad.

Para almacenar una copia de seguridad, se te cobra la tarifa de almacenamiento estándar de copia de seguridad de la región en la que se encuentra el clúster que contiene la copia de seguridad.

Una copia de seguridad es una copia lógica completa de una tabla. En segundo plano, Cloud Bigtable optimiza el uso del almacenamiento de copia de seguridad, lo que significa que una copia de seguridad comparte el almacenamiento físico con la tabla original o con otras copias de seguridad de la tabla siempre que sea posible. Debido a las optimizaciones de almacenamiento integradas de Cloud Bigtable, el costo de las copias de seguridad a veces puede ser menor que el de una copia física completa de la copia de seguridad de la tabla.

Si restableces una tabla en una instancia que usa la replicación, se cobra un costo de replicación por única vez por que los datos se copien en todos los clústeres de la instancia.

Consideraciones sobre la replicación

En esta sección, se describen conceptos adicionales para comprender las copias de seguridad y el restablecimiento de una tabla en una instancia que usa la replicación.

Crea copias de seguridad

Cuando realizas una copia de seguridad de una tabla en una instancia replicada, debes elegir el clúster en el que deseas crear y almacenar la copia de seguridad. No es necesario dejar de escribir en el clúster que contiene la copia de seguridad, pero debes tener en cuenta cómo se controlan las operaciones de escritura replicadas en el clúster.

Una copia de seguridad es una copia de la tabla en su estado en el clúster en el que se almacena la copia de seguridad cuando la creas. Los datos de la tabla que aún no se han replicado de otro clúster en la instancia no se incluyen en la copia de seguridad.

Cada copia de seguridad tiene una hora de inicio y de finalización. Las operaciones de escritura que se envían al clúster poco antes o durante la operación de copia de seguridad podrían no incluirse en la copia de seguridad. Existen dos factores que contribuyen a esta incertidumbre:

  • Una operación de escritura podría enviarse a una sección de la tabla que la copia de seguridad ya copió.
  • Una operación de escritura a otro clúster podría no replicarse en el clúster que contiene la copia de seguridad.

En otras palabras, existe la posibilidad de que algunas operaciones de escritura con una marca de tiempo anterior al momento de la copia de seguridad no se incluyan en la copia. Si esto no es aceptable para los requisitos de tu negocio, puedes usar un token de coherencia con tus solicitudes de escritura a fin de asegurarte de que todas las operaciones de escritura replicadas se incluyan en una copia de seguridad.

Restablecimiento

Cuando restableces una copia de seguridad a una tabla nueva, la replicación desde y hacia los otros clústeres de la instancia se inicia de inmediato después de que se completa la operación de restablecimiento en el clúster en el que se almacenó la copia de seguridad.

Rendimiento

Crea copias de seguridad

Crear una copia de seguridad suele tomar menos de un minuto, aunque puede llevar hasta una hora. En circunstancias normales, la creación de copias de seguridad no afecta el rendimiento de entrega.

Para obtener un rendimiento óptimo, no crees una copia de seguridad de una sola tabla más de una vez cada cinco minutos. Una mayor frecuencia en la creación de copias de seguridad puede generar un aumento observable en la latencia de entrega.

Restablecimiento

Restablecer una copia de seguridad a una tabla en una instancia de un solo clúster toma unos minutos. En las instancias de varios clústeres, el restablecimiento lleva más tiempo, ya que los datos deben copiarse en todos los clústeres.

Si almacenas tus tablas en clústeres SSD, es posible que al principio experimentes una latencia de lectura más alta, incluso después de que se complete un restablecimiento, mientras la tabla se optimiza. Puedes verificar el estado en cualquier momento durante la operación de restablecimiento para ver si la optimización todavía está en curso.

Control de acceso

Los permisos de IAM controlan el acceso a las operaciones de copia de seguridad y restablecimiento. Los permisos de copia de seguridad están a nivel de la instancia y se aplican a todas las copias de seguridad de la instancia. Si quieres crear una copia de seguridad de una tabla, debes tener permiso para leer la tabla y crear copias de seguridad en la instancia en la que se encuentra.

Acción Permiso de IAM obligatorio
Crear una copia de seguridad bigtable.tables.readRows, bigtable.backups.create
Obtener una copia de seguridad bigtable.backups.get
Mostrar una lista de las copias de seguridad bigtable.backups.list
Borrar una copia de seguridad bigtable.backups.delete
Actualizar una copia de seguridad bigtable.backups.update
Restablecer una copia de seguridad en una tabla bigtable.tables.create, bigtable.backups.restore
Obtener una operación bigtable.instances.get
Mostrar una lista de operaciones bigtable.instances.get

Prácticas recomendadas

Copias de seguridad

  • No hagas una copia de seguridad de una tabla con mayor frecuencia que una vez cada cinco minutos.
  • Cuando creas una copia de seguridad de una tabla que usa la replicación, elige el clúster para almacenar la copia de seguridad después de considerar los siguientes factores:
    • Costo. Un clúster en tu instancia puede estar en una región de menor costo que las demás.
    • Proximidad al servidor de la aplicación. Te recomendamos que almacenes la copia de seguridad lo más cerca posible de la aplicación de entrega.
    • Uso del almacenamiento. Necesitas suficiente espacio de almacenamiento para conservar tu copia de seguridad a medida que aumenta su tamaño. En función de la carga de trabajo, puedes tener clústeres de tamaños diferentes o con un uso del disco diferente. Debes tener en cuenta estos factores cuando eliges un clúster.
  • Si necesitas asegurarte de que todas las operaciones de escritura replicadas se incluyan en una copia de seguridad cuando crees una copia de seguridad de una tabla en una instancia que usa la replicación, usa un token de coherencia con tus solicitudes de escritura.

Restablece las copias de seguridad

  • Planifica qué nombre usarás para la tabla nueva si necesitas realizar un restablecimiento desde una copia de seguridad. El punto clave es estar preparado de antemano para que no tengas que decidir cuando te encuentres con un problema.
  • Si restableces una tabla por algún motivo que no sea la eliminación accidental, asegúrate de que todas las operaciones de lectura y escritura se dirijan a la tabla nueva antes de borrar la original.

Cuotas y límites

Las solicitudes de copia de seguridad y restablecimiento y el almacenamiento de copias de seguridad están sujetos a las cuotas y los límites de Cloud Bigtable.

Limitaciones

Las siguientes limitaciones se aplican a las copias de seguridad de Cloud Bigtable:

  • No puedes leer directamente desde una copia de seguridad.
  • No puedes restablecer una tabla en una tabla existente o en una tabla nueva en una instancia distinta.
  • Si restableces una copia de seguridad en una tabla que se encuentra en un clúster SSD y, luego, borras la tabla recién restablecida, su eliminación puede llevar un poco de tiempo en completarse, ya que Cloud Bigtable espera a que finalice la optimización de la tabla.
  • Las copias de seguridad son zonales y comparten las mismas garantías de disponibilidad que el clúster en el que se crean. Las copias de seguridad no protegen contra las interrupciones regionales.
  • Una copia de seguridad es una versión de una tabla en un solo clúster en un momento específico. Las copias de seguridad no representan un estado coherente. Lo mismo también se aplica a las copias de seguridad de la misma tabla en clústeres diferentes.
  • No se puede realizar una copia de seguridad de más de una tabla en una sola operación.
  • No puedes exportar, copiar o mover una copia de seguridad de Cloud Bigtable a otro servicio, como Cloud Storage.

¿Qué sigue?