Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
GAMESUS01-BP02 Usa políticas de ciclo de vida o caducidad de TTL para eliminar juegos innecesarios, datos de usuario, archivos de registro o activos obsoletos.
Puede utilizar etiquetas y tipos de datos para crear políticas de ciclo de vida o bien utilizar los TTL para mover los datos al almacenamiento de archivos o eliminarlos por completo del servicio. Esto puede incluir configuraciones temporales, contenido archivado caducado y registros históricos que ya no se necesitan. La mayoría de los servicios admiten el etiquetado.
Nivel de riesgo expuesto si no se establece esta práctica recomendada: alto
Guía para la implementación
En el caso de los datos almacenados en S3, puede utilizar políticas de ciclo de vida para trasladarlos a niveles de almacenamiento de acceso y archivado poco frecuentes. En una configuración del ciclo de vida de S3, puede definir reglas para pasar objetos de una clase de almacenamiento a otra para ahorrar costos de almacenamiento. Cuando desconoce los patrones de acceso de los objetos o si los patrones de acceso cambian con el tiempo, es posible realizar la transición de los objetos a la clase de almacenamiento S3 Intelligent-Tiering para un ahorro automático de los costos.
Amazon S3 admite un modelo en cascada para las transiciones entre clases de almacenamiento, tal y como se muestra en el siguiente diagrama.
Puede agregar acciones de transición a una configuración de S3 Lifecycle para indicar a Amazon S3 que elimine objetos al final de su ciclo de vida. Cuando un objeto llega al final de su vida útil en función de la configuración de su ciclo de vida, Amazon S3 realiza una acción de caducidad en función del estado de control de versiones de S3 en el que se encuentra el bucket:
-
Depósito no versionado: Amazon S3 coloca el objeto en cola para su eliminación y lo elimina de forma asíncrona, lo que elimina el objeto de forma permanente.
-
Depósito habilitado para el control de versiones: si la versión actual del objeto no es un marcador de eliminación, Amazon S3 añade un marcador de eliminación con un identificador de versión único. Esto convierte la versión actual en no actual, y el marcador de eliminación en la versión actual.
-
Depósito suspendido por control de versiones: Amazon S3 crea un marcador de eliminación con null como ID de versión. Este marcador de eliminación reemplaza la versión de un objeto por un identificador de versión nulo en la jerarquía de versiones, lo que elimina el objeto de forma efectiva.
-
Cuando añade una configuración de ciclo de vida a un bucket, las reglas de configuración se aplican a los objetos existentes y a los objetos que añade posteriormente. Por ejemplo, si hoy añade una regla de configuración del ciclo de vida con una acción de caducidad que hace que los objetos con un prefijo específico caduquen 30 días después de su creación, Amazon S3 pondrá en cola para eliminar los objetos existentes que tengan más de 30 días de antigüedad y que tengan el prefijo especificado.
Tiempo de vida (TTL) para DynamoDB es un método rentable para eliminar elementos que ya no son relevantes. TTL permite definir una marca de tiempo de vencimiento por elemento que indica cuándo deja de necesitarse un elemento. DynamoDB elimina automáticamente los elementos vencidos a los pocos días de su fecha de vencimiento, sin afectar al rendimiento de escritura.
-
Para usar TTL, primero debe activarlo en una tabla y, a continuación, definir un atributo específico para almacenar la marca de tiempo de vencimiento de TTL. La marca de tiempo debe almacenarse en el formato de tiempo Epoch de Unix
con nivel de precisión de segundos. Cada vez que se crea o actualiza un elemento, puede calcular el tiempo de vencimiento y guardarlo en el atributo TTL. -
El sistema puede eliminar los elementos con atributos TTL válidos y vencidos, normalmente a los pocos días de su caducidad. Puede seguir actualizando los elementos vencidos que no se hayan eliminado todavía, lo que incluye cambiar o eliminar los atributos TTL. Al actualizar un elemento vencido, le recomendamos que utilice una expresión de condición para asegurarse de que el elemento no se haya eliminado posteriormente. Utilice expresiones de filtro para eliminar los elementos vencidos de los resultados de Scan y Query.
-
Los elementos eliminados funcionan de forma similar a los que se eliminan con las operaciones de eliminación habituales. Una vez eliminados, los elementos pasan a DynamoDB Streams como eliminaciones de servicio en lugar de eliminaciones de usuarios, y se eliminan de los índices secundarios locales y de los índices secundarios globales al igual que otras operaciones de eliminación.
Con ElastiCache Redis, puede controlar la actualización de los datos almacenados en caché mediante el uso o la caducidad de las claves almacenadas en caché. TTLs Una vez transcurrido el tiempo establecido, la clave se elimina de la memoria caché y es necesario acceder al almacén de datos de origen además de acceder a los datos actualizados.
-
Dos principios determinan qué patrones de almacenamiento en caché se TTLs deben aplicar y cuáles son los tipos de patrones de almacenamiento en caché que se deben implementar. En primer lugar, es importante que comprenda la tasa de cambio de los datos subyacentes. En segundo lugar, es importante que evalúe el riesgo de que los datos obsoletos se devuelvan a su aplicación en lugar de a la versión actualizada.
-
En el caso de los datos dinámicos que cambian con frecuencia, es posible que desee aplicar menos datos TTLs que caduquen a un ritmo de cambio que coincida con el de la base de datos principal. Esto reduce el riesgo de que se devuelvan datos obsoletos y, al mismo tiempo, proporciona un búfer para reducir las solicitudes de la base de datos.
-
También es importante tener en cuenta que, aunque solo guardes los datos en caché durante minutos o segundos, en lugar de hacerlo durante más tiempo, utilizarlos adecuadamente en las claves almacenadas en caché puede mejorar el rendimiento y, en general, mejorar la experiencia del jugador con el juego. TTLs
Pasos para la implementación
-
Utilice las políticas de ciclo de vida de Amazon S3 para hacer la transición de los objetos a niveles de acceso o archivado poco frecuentes y configure acciones de caducidad para eliminar los objetos innecesarios en función de las reglas del ciclo de vida.
-
Active el tiempo de vida (TTL) en las tablas de DynamoDB para eliminar automáticamente los elementos caducados sin consumir el rendimiento de escritura, definiendo la marca de tiempo de caducidad en Unix.
-
Configura ElastiCache las claves adecuadas en función TTLs de las tasas de cambio de los datos y de la tolerancia al riesgo de datos obsoletos, lo que facilita la actualización de los datos en caché y mejora la experiencia del jugador.