Use a UPDATE instrução para editar configurações personalizadas de Time to Live (TTL) para linhas e colunas - Amazon Keyspaces (para Apache Cassandra)

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á.

Use a UPDATE instrução para editar configurações personalizadas de Time to Live (TTL) para linhas e colunas

nota

Antes de definir TTL valores personalizados para linhas e colunas, você deve primeiro ativar TTL na tabela. Para obter mais informações, consulte Atualize a tabela com Time to Live (TTL) personalizado.

Você pode usar a UPDATE instrução para substituir o TTL valor padrão de uma tabela definindo a data de expiração para linhas e colunas individuais:

  • Linhas — você pode atualizar uma linha de dados existente com um TTL valor personalizado.

  • Colunas — você pode atualizar um subconjunto de colunas nas linhas existentes com um TTL valor personalizado.

A configuração de TTL valores para linhas e colunas tem precedência sobre a TTL configuração padrão da tabela.

Para alterar as TTL configurações da coluna “assunto” inserida anteriormente de 259.200 segundos (3 dias) para 86.400 segundos (um dia), use a seguinte declaração.

UPDATE my_table USING TTL 86400 set subject = 'Updated Message' WHERE userid = B79CB3BA-745E-5D9A-8903-4A02327A7E09 and time = 96a29100-5e25-11ec-90d7-b5d91eceda0a;

Você pode executar uma consulta de seleção simples para ver o registro atualizado antes do prazo de expiração.

SELECT * from my_table;

A consulta mostra o a saída a seguir.

userid | time | body | subject | user --------------------------------------+--------------------------------------+-------+-----------------+----------------- b79cb3ba-745e-5d9a-8903-4a02327a7e09 | 96a29100-5e25-11ec-90d7-b5d91eceda0a | Hello | Updated Message | 205.212.123.123 50554d6e-29bb-11e5-b345-feff819cdc9f | cf03fb21-59b5-11ec-b371-dff626ab9620 | Hello | Message | 205.212.123.123

Para confirmar que a expiração foi bem-sucedida, execute a mesma consulta novamente após o tempo de expiração configurado.

SELECT * from my_table;

A consulta mostra a seguinte saída após a expiração da coluna “assunto”.

userid | time | body | subject | user --------------------------------------+--------------------------------------+-------+---------+----------------- b79cb3ba-745e-5d9a-8903-4a02327a7e09 | 96a29100-5e25-11ec-90d7-b5d91eceda0a | Hello | null | 205.212.123.123 50554d6e-29bb-11e5-b345-feff819cdc9f | cf03fb21-59b5-11ec-b371-dff626ab9620 | Hello | Message | 205.212.123.123