Cassandra Truncate

Cassandra Truncate



В тази статия ще научите как да използвате командата Apache Cassandra TRUNCATE. Тази команда ви позволява да премахнете всички данни от таблица, без да изтривате таблицата или нейната схема.

С прости думи, командата TRUNCATE ви позволява да нулирате данните, съхранени в таблица, което ви позволява да възстановите или вмъкнете нови данни.







Синтаксис на командата Cassandra Truncate

Синтаксисът на командата TRUNCATE е както е показано:



TRUNCATE [TABLE] [keyspace.table_name]

Можете да пропуснете ключовата дума TABLE в синтаксиса по-горе. Командата ще извърши подобно действие.



Имайте предвид, че командата TRUNCATE изпраща JMX командата до всички възли в клъстера, който съдържа данните на целта. Това позволява на възлите да се синхронизират и да са в крак с последните промени в данните. Ако някой от възлите в клъстера не работи, командата ще се провали и ще върне грешка.





Създаване на примерна таблица и данни

За целите на илюстрацията ще създадем примерно пространство на ключове и таблица. Командите са както е показано във фрагментите по-долу:

cqlsh> създайте keyspace height_info
... с репликация = {
... 'class': 'SimpleStrategy',
... 'репликационен_фактор': 1};
cqlsh> ИЗПОЛЗВАЙТЕ height_info;
cqlsh:height_info> CREATE TABLE recipients(
... Твоята ръка,
... текст на потребителското име,
... височина навътре,
... ПЪРВИЧЕН КЛЮЧ(id, височина));

След това можем да вмъкнем примерни данни, както е показано в командите по-долу:



cqlsh:height_info> INSERT INTO стойности на получатели (id, потребителско име, височина) (0, 'user1', 210);
cqlsh:height_info> INSERT INTO стойности на получатели (id, потребителско име, височина) (1, 'user2', 115);
cqlsh:height_info> INSERT INTO стойности на получатели (id, потребителско име, височина) (2, 'user3', 202);
cqlsh:height_info> INSERT INTO стойности на получатели (id, потребителско име, височина) (3, 'user4', 212);
cqlsh:height_info> INSERT INTO стойности на получатели (id, потребителско име, височина) (4, 'user5', 216);

Примерна операция за съкращаване

Данните, съхранени в таблицата преди отрязването, са както е показано:

ИЗБЕРЕТЕ * ОТ получатели;

Можем да съкратим таблицата, както е показано:

cqlsh:height_info> TRUNCATE TABLE height_info.recipients;

Накрая можем да потвърдим, че данните са премахнати от таблицата като:

cqlsh:height_info> ИЗБЕРЕТЕ * ОТ получатели;

Ще забележите, че таблицата все още съществува, включително всички дефиниции на схемата. Данните от таблицата обаче са премахнати, оставяйки празна таблица.

Имайте предвид, че операцията TRUNCATE е необратима. Бъдете внимателни при използването му и потенциална загуба на данни.

Заключение

В тази публикация научихте как да премахнете всички данни от таблица, като същевременно запазите схемата на таблицата, като използвате командата CQL TRUNCATE.