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á.
Habilitando o time to live (TTL)
O TTl pode ser ativado no console do Amazon DynamoDBAWS Command Line Interface, no () ou usando AWS CLI o Amazon DynamoDB API Reference com qualquer um dos supostos SDKs. AWS Demora aproximadamente uma hora para que o TTL seja ativado em todas as partições.
Faça login no AWS Management Console e abra o console do DynamoDB em https://console.aws.amazon.com/dynamodb/
. -
Escolha Tables (Tabelas) e selecione a tabela que você deseja modificar.
-
Na guia Configurações adicionais, na seção Time to Live (TTL), escolha Ativar para ativar o TTL.
-
Ao habilitar o TTL em uma tabela, o DynamoDB exige identificar um nome de atributo específico que o serviço procurará ao determinar se um item está qualificado para expiração. O nome do atributo TTL, mostrado abaixo, diferencia maiúsculas de minúsculas e deve corresponder ao atributo definido em suas operações de leitura e gravação. Uma incompatibilidade fará com que os itens expirados não sejam excluídos. Renomear o atributo TTL exige que você desative o TTL e depois o reative com o novo atributo daqui para frente. O TTL continuará processando as exclusões por aproximadamente 30 minutos depois de desativado. O TTL deve ser reconfigurado em tabelas restauradas.
-
(Opcional) Você pode realizar um teste simulando a data e a hora da expiração e combinando alguns itens. Isso fornece uma lista de exemplos de itens e confirma que há itens contendo o nome do atributo TTL fornecido junto com o prazo de validade.
Depois que o TTL é ativado, o atributo TTL é marcado como TTL quando você visualiza itens no console do DynamoDB. Você pode visualizar a data e a hora em que um item expira posicionando o mouse sobre o atributo.
-
Habilite o TTL na tabela
TTLExample
.aws dynamodb update-time-to-live --table-name TTLExample --time-to-live-specification "Enabled=true, AttributeName=ttl"
-
Descreva o TTL na tabela
TTLExample
.aws dynamodb describe-time-to-live --table-name TTLExample { "TimeToLiveDescription": { "AttributeName": "ttl", "TimeToLiveStatus": "ENABLED" } }
-
Para adicionar um item à tabela
TTLExample
com o conjunto de atributos de vida útil usando o shell BASH e a AWS CLI.EXP=`date -d '+5 days' +%s` aws dynamodb put-item --table-name "TTLExample" --item '{"id": {"N": "1"}, "ttl": {"N": "'$EXP'"}}'
Este exemplo inicia na data atual e adiciona 5 dias a ela para criar uma data de expiração. Depois, ele converte a data de expiração em formato de hora epoch para finalmente adicionar um item à tabela "TTLExample
".
nota
Uma forma de definir os valores de expiração para a vida útil é calcular o número de segundos para adicionar o tempo de expiração. Por exemplo, 5 dias é igual a 432.000 segundos. No entanto, muitas vezes é preferível começar com uma data e trabalhar a partir desse ponto.
É muito simples obter a hora atual no formato de hora epoch, como nos seguintes exemplos.
-
Terminal Linux:
date +%s
-
Python:
import time; int(time.time())
-
Java:
System.currentTimeMillis() / 1000L
-
JavaScript:
Math.floor(Date.now() / 1000)
-
Habilite o TTL na tabela
TTLExample
.aws dynamodb update-time-to-live --table-name TTLExample --time-to-live-specification "Enabled=true, AttributeName=ttl"
-
Descreva o TTL na tabela
TTLExample
.aws dynamodb describe-time-to-live --table-name TTLExample { "TimeToLiveDescription": { "AttributeName": "ttl", "TimeToLiveStatus": "ENABLED" } }
-
Para adicionar um item à tabela
TTLExample
com o conjunto de atributos de vida útil usando o shell BASH e a AWS CLI.EXP=`date -d '+5 days' +%s` aws dynamodb put-item --table-name "TTLExample" --item '{"id": {"N": "1"}, "ttl": {"N": "'$EXP'"}}'
Este exemplo inicia na data atual e adiciona 5 dias a ela para criar uma data de expiração. Depois, ele converte a data de expiração em formato de hora epoch para finalmente adicionar um item à tabela "TTLExample
".
nota
Uma forma de definir os valores de expiração para a vida útil é calcular o número de segundos para adicionar o tempo de expiração. Por exemplo, 5 dias é igual a 432.000 segundos. No entanto, muitas vezes é preferível começar com uma data e trabalhar a partir desse ponto.
É muito simples obter a hora atual no formato de hora epoch, como nos seguintes exemplos.
-
Terminal Linux:
date +%s
-
Python:
import time; int(time.time())
-
Java:
System.currentTimeMillis() / 1000L
-
JavaScript:
Math.floor(Date.now() / 1000)