Gestionar la conservación de datos con políticas de TTL

En esta página se describe cómo usar la consola de Google Cloud y la CLI de Google Cloud para configurar políticas de tiempo de vida (TTL). Antes de leer esta página, debes conocer el modelo de datos del modo Datastore.

Resumen del tiempo de vida

Usa políticas de TTL para eliminar automáticamente los datos obsoletos de tus bases de datos. Una política de TTL designa una propiedad determinada como la hora de vencimiento de las entidades de un tipo concreto. Con TTL, puedes reducir los costes de almacenamiento eliminando los datos obsoletos. Los datos suelen eliminarse en un plazo de 24 horas después de su fecha de vencimiento.

Precios

Las operaciones de eliminación por TTL se tienen en cuenta en los costes de eliminación de entidades. Para consultar los precios de las operaciones de eliminación, consulta los precios de Firestore en el modo de Datastore.

Límites y restricciones

  • Solo puedes marcar una propiedad por tipo como propiedad de TTL.
  • Puedes tener un máximo de 500 políticas de TTL.

Eliminación de TTL

Ten en cuenta los siguientes comportamientos clave de la eliminación basada en TTL:

  • La eliminación mediante TTL no es un proceso instantáneo. Las entidades caducadas siguen apareciendo en las consultas y las solicitudes de búsqueda hasta que el proceso de TTL las elimina. El TTL intercambia la puntualidad de la eliminación por el beneficio de reducir el coste total de propiedad de las eliminaciones. Los datos suelen eliminarse en un plazo de 24 horas después de su fecha de vencimiento.

  • Al eliminar una entidad mediante TTL, no se eliminan las entidades secundarias de esa entidad.

  • Si se aplica una política de TTL a un tipo ya existente, se eliminarán en bloque todos los datos que hayan caducado según la nueva política de TTL. Ten en cuenta que esta eliminación en bloque tampoco es instantánea y depende de la cantidad de datos que haya de ese tipo.

  • Si una entidad tiene un tiempo de vencimiento anterior y añades una nueva política de TTL al tipo, la entidad se eliminará en un plazo de 24 horas después de que se complete la configuración de la política de TTL y se active.

  • El TTL no elimina necesariamente las entidades en el mismo orden que sus marcas de tiempo de vencimiento.

  • Las eliminaciones no se realizan de forma transaccional. Las entidades con la misma hora de vencimiento no se eliminan necesariamente al mismo tiempo. Si necesitas este comportamiento, realiza las eliminaciones con una biblioteca de cliente.

  • El modo Datastore siempre tendrá en cuenta el campo TTL más reciente para determinar la caducidad. Por ejemplo, si se actualiza el campo TTL de una entidad caducada pero aún no eliminada a una fecha posterior, la entidad no caducará y se usará la nueva fecha.

  • El modo Datastore solo caducará un documento cuando el campo TTL se haya definido como de tipo Timestamp. Si no se incluye el campo o se le asigna un valor como null, se pueden inhabilitar las caducidades por documento.