Cassandra Truncar

Cassandra Truncar



Neste artigo, você aprenderá como usar o comando Apache Cassandra TRUNCATE. Este comando permite remover todos os dados de uma tabela sem excluir a tabela ou seu esquema.

Em termos simples, o comando TRUNCATE permite redefinir os dados armazenados em uma tabela permitindo restaurar ou inserir novos dados.







Sintaxe do Comando Truncar Cassandra

A sintaxe do comando TRUNCATE é mostrada:



TRUNCATE [TABLE] [keyspace.table_name]

Você pode omitir a palavra-chave TABLE na sintaxe acima. O comando executará uma ação semelhante.



Lembre-se de que o comando TRUNCATE envia o comando JMX para todos os nós do cluster que contém os dados do destino. Isso permite que os nós sincronizem e mantenham-se atualizados com as alterações de dados recentes. Se um dos nós do cluster estiver inativo, o comando falhará e retornará um erro.





Criando Tabela e Dados de Amostra

Para fins de ilustração, criaremos um keyspace e uma tabela de amostra. Os comandos são como mostrados nos trechos abaixo:

cqlsh> cria keyspace height_info
... com replicação = {
... 'class': 'SimpleStrategy',
... 'fator_replicação': 1};
cqlsh> USE height_info;
cqlsh:height_info> CREATE TABLE destinatários(
... sua mão,
... texto do nome de usuário,
... altura int,
... CHAVE PRIMÁRIA(id, altura));

Podemos então inserir dados de amostra conforme mostrado nos comandos abaixo:



cqlsh:height_info> INSERT INTO destinatários(id, username, height) valores (0, 'user1', 210);
cqlsh:height_info> INSERT INTO destinatários(id, username, height) valores (1, 'user2', 115);
cqlsh:height_info> INSERT INTO destinatários(id, username, height) valores (2, 'user3', 202);
cqlsh:height_info> INSERT INTO destinatários(id, username, height) valores (3, 'user4', 212);
cqlsh:height_info> INSERT INTO destinatários(id, username, height) valores (4, 'user5', 216);

Exemplo de operação de truncamento

Os dados armazenados na tabela antes do truncamento são mostrados:

SELECT * FROM destinatários;

Podemos truncar a tabela como mostrado:

cqlsh:height_info> TRUNCATE TABLE height_info.recipients;

Por fim, podemos confirmar que os dados foram removidos da tabela como:

cqlsh:height_info> SELECT * FROM destinatários;

Você notará que a tabela ainda existe incluindo todas as definições de esquema. No entanto, os dados da tabela foram removidos deixando uma tabela vazia.

Tenha em mente que a operação TRUNCATE é irreversível. Seja cauteloso em seu uso e potencial perda de dados.

Conclusão

Neste post, você aprendeu como remover todos os dados de uma tabela preservando o esquema da tabela usando o comando CQL TRUNCATE.