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 si 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 Exportar e importar.

De forma predeterminada, la base de datos retiene todas las versiones de sus datos y esquemas durante una hora. Puedes aumentar este límite de tiempo a un máximo de siete días mediante la opción version_retention_period. Para obtener instrucciones, consulta Cómo establecer 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 vez 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 que especifique 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. Generalmente se utiliza 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, crea una copia de seguridad o exporta la base de datos que especifique una marca de tiempo en el pasado y, luego, restablécela o impórtala a una base de datos nueva. Por lo general, se usa para recuperarse de problemas de daños en los datos cuando tienes que revertir la base de datos a un momento determinado antes de que se produzca el daño. Ten en cuenta que crear una copia de seguridad o exportar una base de datos puede demorar 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, aquellas que reemplazan los datos con frecuencia, usan más recursos del sistema. Esto puede afectar el rendimiento de la base de datos, en especial si tu instancia no está aprovisionada con suficiente capacidad de procesamiento. Si tu base de datos tiene una tasa de reemplazo muy alta (por ejemplo, si 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 manera gradual a medida que la base de datos acumule versiones más antiguas de datos. Esto se debe a que los datos antiguos que habrían vencido en el período de retención anterior ya no vencieron. 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 del almacenamiento de la base de datos. También proporcionamos instrucciones para estimar el aumento del almacenamiento.

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

  • Más tiempo para realizar actualizaciones del esquema. Un período de retención mayor significa que las versiones de esquema deben retenerse durante períodos más largos, lo que podría causar 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 esquemas y de mantenerte dentro de los límites de las actualizaciones de esquemas.

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 de una hora predeterminada, es posible que aumenten los costos de almacenamiento de la base de datos y capacidad de procesamiento. El costo de la copia de seguridad a pedido no se ve afectado porque 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?