Vida útil (TTL) - Amazon DynamoDB

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Vida útil (TTL)

O Time To Live (TTL) para DynamoDB é um método econômico para excluir itens que não são mais relevantes. O TTL permite que você defina um timestamp de expiração por item que indica quando um item não é mais necessário. O DynamoDB exclui automaticamente os itens expirados alguns dias após o vencimento, sem consumir a taxa de transferência de gravação.

Para usar o TTL, primeiro ative-o em uma tabela e, em seguida, defina um atributo específico para armazenar o timestamp de expiração do TTL. O carimbo de data/hora deve ser armazenado no formato de hora de época do Unix na granularidade dos segundos. Sempre que um item é criado ou atualizado, você pode calcular o tempo de expiração e salvá-lo no atributo TTL.

Itens com atributos TTL válidos e expirados podem ser excluídos pelo sistema a qualquer momento, normalmente alguns dias após a expiração. Você ainda pode atualizar os itens expirados que estão pendentes de exclusão, incluindo alterar ou remover seus atributos TTL. Ao atualizar um item expirado, recomendamos que você use uma expressão de condição para garantir que o item não tenha sido excluído posteriormente. Use expressões de filtro para remover itens expirados dos resultados do Scan and Query.

Os itens excluídos funcionam de forma semelhante aos excluídos por meio de operações de exclusão típicas. Depois de excluídos, os itens entram no DynamoDB Streams como exclusões de serviços, em vez de exclusões de usuários, e são removidos dos índices secundários locais e globais, assim como outras operações de exclusão.

Se você estiver usando tabelas globais versão 2019.11.21 (atual) de tabelas globais e também usar o recurso TTL, o DynamoDB replica as exclusões de TTL em todas as tabelas de réplica. A exclusão inicial do TTL não consome Unidades de Capacidade de Gravação (WCU) na região em que a expiração do TTL ocorre. No entanto, a exclusão de TTL replicada na (s) tabela (s) de réplica consome uma unidade de capacidade de gravação replicada ao usar a capacidade provisionada, ou uma unidade de gravação replicada ao usar o modo de capacidade sob demanda, em cada uma das regiões da réplica, e as cobranças aplicáveis serão aplicadas.

O DynamoDB Local ajuda você a testar seu código para casos de uso de TTL, permitindo que você habilite o TTL em sua tabela, crie um atributo TTL e defina um prazo de validade para os itens. No entanto, os itens expirados não são excluídos do DynamoDB Local. Isso ocorre porque o DynamoDB Local atualmente não executa um processo em segundo plano, como o processo do lado do servidor usado para excluir itens expirados.

Para obter mais informações sobre TTL, consulte estes tópicos: