Acerca de la recuperación de un momento determinado (PITR)

Organiza tus páginas con colecciones Guarda y categoriza el contenido según tus preferencias.

La recuperación de un momento determinado (STR) de Spanner brinda protección contra escrituras o eliminaciones accidentales. Por ejemplo, si un operador escribe datos involuntariamente 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 7 días). Si necesitas una retención de datos a largo plazo, puedes usar Copia de seguridad y restablecimiento o Importar y exportar.

De forma predeterminada, tu base de datos retiene todas las versiones de sus datos y esquema durante 1 hora. Puedes extender este límite hasta un máximo de 7 días con la opción version_retention_period. Spanner almacena versiones antiguas 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.

Formas de recuperar datos

Hay dos formas 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 una fila en particular o actualizas un subconjunto de datos por error, 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 especifica 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 corrupción de datos cuando tiene que revertir toda 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 de una base de datos o exportarla puede llevar varias horas y que no puedes restablecerla ni importarla a una existente. Para obtener instrucciones, consulta Recupera 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 reemplazan los 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 la base de datos tiene una tasa de sobrescritura muy alta (por ejemplo, si se reemplaza varias veces al día), puedes considerar aumentar el período de retención de forma gradual y supervisar el sistema. Tenga en cuenta lo siguiente:

  • Aumento del uso del almacenamiento. Te recomendamos que configures 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á gradualmente a medida que la base de datos acumule versiones anteriores de datos. Esto se debe a que los datos antiguos que hubieran vencido en el período anterior de retención ya no están vencidos. Por ejemplo, si aumentas el período de retención de 3 días a 7 días, debes 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 de almacenamiento.

  • Mayor uso de CPU y latencia. Spanner usa recursos de procesamiento adicionales para comprimir y mantener versiones anteriores de los datos. Supervisa la instancia y la base de datos para asegurarte de que la latencia y el uso de CPU se mantengan en los niveles aceptables.

  • Más tiempo para realizar actualizaciones del esquema. Un período de retención mayor significa que las versiones del esquema deben conservarse por más tiempo, 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 del esquema y de mantenerte dentro de los límites para las actualizaciones del esquema.

¿Qué sigue?