Recuperación de un momento determinado

Descripción general

La recuperación de un momento determinado (PITR) de Cloud Spanner proporciona protección contra eliminaciones o escrituras accidentales. Por ejemplo, si un operador escribe datos de forma inadvertida o el lanzamiento de una aplicación daña la base de datos, con PITR puedes recuperar los datos de un momento determinado en el pasado (hasta un máximo de 7 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.

Según la configuración predeterminada, tu base de datos retiene todas las versiones de los datos y el esquema durante 1 hora. Puede aumentar este límite de tiempo hasta 7 días mediante la opción version_retention_period. Cloud Spanner almacena versiones anteriores de los datos con un nivel de detalle de microsegundos y la base de datos mantiene un earliest_version_time, que representa el momento más antiguo en el que puedes recuperar las versiones anteriores de los datos.

Formas de 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. Por lo general, se usa para operaciones quirúrgicas en una base de datos activa. Por ejemplo, si borras accidentalmente una fila en particular 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, realiza 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 en una base de datos nueva. Por lo general, se usa para recuperarse de los problemas de corrupción de datos cuando tienes que revertir la base de datos completa a un momento determinado antes de que se produjera el daño. Ten en cuenta que la creación de copias de seguridad o la exportación de una base de datos puede demorar varias horas y que no puedes restablecer una importación a una base de datos existente. Para obtener instrucciones, consulta cómo recuperar toda la base de datos.

Consideraciones de rendimiento

Las bases de datos con períodos de retención más largos y, en particular, aquellas que suelen reemplazar los datos, usan más recursos del sistema. Esto puede afectar el rendimiento de la base de datos, en especial si la instancia no se aprovisiona 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), podrías considerar aumentar el período de retención de forma gradual ySupervisar el sistema , Debes tener en cuenta lo siguiente:

  • Aumento del uso del almacenamiento. 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 de almacenamiento aumentará de manera gradual a medida que la base de datos acumula versiones anteriores de datos. Esto se debe a que los datos antiguos que venían en el período de retención anterior ya no caducan. Por ejemplo, si aumentas el período de retención de 3 días 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. Cloud Spanner usa recursos de procesamiento adicionales para compactar y mantener versiones antiguas de datos. Supervisa tu instancia y base de datos para asegurarte de que la latencia y el uso de CPU se mantengan en niveles aceptables.

  • Tiempo mayor para realizar actualizaciones del esquema Un período de retención mayor significa que las versiones de esquema deben conservarse durante períodos más largos, lo que podría 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 las actualizaciones de esquema.