Descripción general de la recuperación de un momento determinado (PITR)

La recuperación de un momento determinado (PITR) de Spanner proporciona protección contra escrituras o eliminaciones accidentales. Por ejemplo, si un operador escribe datos de forma involuntaria o el lanzamiento de una aplicación daña la base de datos, con la PITR puedes recuperar los datos de un momento determinado en el pasado (hasta un máximo de siete días) sin problemas. Si necesitas una retención de datos a largo plazo, puedes usar Copia de seguridad y restablecimiento o Importar y exportar.

De forma predeterminada, la base de datos retiene todas las versiones de sus datos y esquema durante una hora. Puedes aumentar este límite de tiempo a siete días con la opción version_retention_period. Para obtener instrucciones, consulta Configura el período de retención. Spanner almacena versiones anteriores de datos con un nivel de detalle de microsegundos y la base de datos mantiene un earliest_version_time, que representa la primera hora en el pasado en la que puedes recuperar versiones anteriores de los datos.

Cómo recuperar datos

Existen dos maneras de recuperar datos:

  • Para recuperar una parte de la base de datos, realiza una lectura inactiva especificando una condición de consulta y una marca de tiempo en el pasado y, luego, vuelve a escribir los resultados en la base de datos activa. Esto suele usarse para operaciones quirúrgicas en una base de datos activa. Por ejemplo, si borras una fila en particular por accidente o actualizas un subconjunto de datos de forma incorrecta, puedes recuperarlo con este método. Para obtener instrucciones, consulta cómo recuperar una parte de tu base de datos.

  • Para recuperar toda la base de datos, copia de seguridad o exporta la base de datos especificando una marca de tiempo anterior y, luego, restablécela o impórtala a una base de datos nueva. Por lo general, esto se usa para recuperarse de problemas de corrupción de datos cuando tienes que revertir la base de datos a un momento determinado antes de que se produzca la corrupción. Ten en cuenta que crear una copia de seguridad o exportar una base de datos puede tardar varias horas y que no puedes restablecer ni importar a una base de datos existente. Para obtener instrucciones, consulta cómo recuperar toda la base de datos.

Consideraciones sobre el rendimiento

Las bases de datos con períodos de retención más largos y, en particular, las que reemplazan datos con frecuencia, usan más recursos del sistema. Esto puede afectar el rendimiento de la base de datos, en especial si la instancia no está aprovisionada con suficiente capacidad de procesamiento. Si tu base de datos tiene una tasa de reemplazo muy alta (por ejemplo, si tu base de datos se reemplaza varias veces al día), te recomendamos aumentar el período de retención de forma gradual y supervisar el sistema. Ten en cuenta lo siguiente:

  • Mayor uso del almacenamiento. Te recomendamos configurar alertas de almacenamiento para asegurarte de no exceder el límite de almacenamiento. Cuando aumentes el período de retención, ten en cuenta que el uso del almacenamiento aumentará de forma gradual a medida que la base de datos acumule versiones anteriores de datos. Esto se debe a que los datos antiguos que habrían vencido en el período de retención anterior ya no están vencidos. Por ejemplo, si aumentas el período de retención de 3 a 7 días, deberás esperar 4 días para que se estabilice el uso de almacenamiento de la base de datos. También proporcionamos instrucciones para estimar el aumento de almacenamiento.

  • Aumento en el uso y la latencia de la CPU. Spanner usa recursos de procesamiento adicionales para compactar y mantener versiones antiguas de datos. Supervisa la instancia y la base de datos para garantizar que la latencia y el uso de CPU permanezcan en niveles aceptables.

  • Mayor tiempo para realizar actualizaciones de esquema. Un período de retención mayor significa que las versiones de esquema deben retenerse durante períodos más largos, lo que, a su vez, puede provocar que las actualizaciones del esquema sean throttled mientras se esperan los recursos del servidor. Asegúrate de seguir las prácticas recomendadas para las actualizaciones de esquema y mantenerte dentro de los límites de actualizaciones de esquema.

Precios

No se aplican cargos adicionales por usar la función PITR. Sin embargo, si aumentas el período de retención de la versión de la base de datos del valor predeterminado de una hora, los costos de almacenamiento de la base de datos y de capacidad de procesamiento podrían aumentar. El costo de las copias de seguridad a pedido no se ve afectado, ya que solo se almacena una versión de tu base de datos. Para obtener más información, consulta la sección Consideraciones de rendimiento. Antes de aumentar el período de retención de versiones de una base de datos, puedes estimar el aumento esperado en el almacenamiento de la base de datos.

Para obtener información general sobre cómo se cobra Spanner, consulta Precios de Spanner.

¿Qué sigue?