Cassandra Truncate

Cassandra Truncate



V tem članku se boste naučili uporabljati ukaz Apache Cassandra TRUNCATE. Ta ukaz vam omogoča, da odstranite vse podatke iz tabele, ne da bi izbrisali tabelo ali njeno shemo.

Preprosto povedano, ukaz TRUNCATE vam omogoča ponastavitev podatkov, shranjenih v tabeli, kar vam omogoča obnovitev ali vstavljanje novih podatkov.







Sintaksa ukaza Cassandra Truncate

Sintaksa ukaza TRUNCATE je prikazana:



TRUNCATE [TABLE] [keyspace.table_name]

V zgornji sintaksi lahko izpustite ključno besedo TABLE. Ukaz bo izvedel podobno dejanje.



Upoštevajte, da ukaz TRUNCATE pošlje ukaz JMX vsem vozliščem v gruči, ki vsebuje ciljne podatke. To omogoča vozliščem, da se sinhronizirajo in ostanejo na tekočem z nedavnimi spremembami podatkov. Če katero od vozlišč v gruči ne deluje, ukaz ne bo uspel in bo vrnil napako.





Ustvarjanje vzorčne tabele in podatkov

Za ponazoritev bomo ustvarili vzorčni prostor ključev in tabelo. Ukazi so prikazani v spodnjih delčkih:

cqlsh> ustvarite keyspace height_info
... z replikacijo = {
... 'class': 'SimpleStrategy',
... 'replikacijski_faktor': 1};
cqlsh> UPORABA višine_info;
cqlsh:height_info> CREATE TABLE recipients(
... tvoja roka,
... besedilo uporabniškega imena,
... notranja višina,
... PRIMARNI KLJUČ(id, višina));

Nato lahko vstavimo vzorčne podatke, kot je prikazano v spodnjih ukazih:



cqlsh:height_info> INSERT INTO vrednosti prejemnikov (id, uporabniško ime, višina) (0, 'user1', 210);
cqlsh:height_info> INSERT INTO recipients(id, username, height) values ​​(1, 'user2', 115);
cqlsh:height_info> INSERT INTO recipients(id, username, height) values ​​(2, 'user3', 202);
cqlsh:height_info> INSERT INTO recipients(id, username, height) values ​​(3, 'user4', 212);
cqlsh:height_info> INSERT INTO recipients(id, username, height) values ​​(4, 'user5', 216);

Primer operacije prirezovanja

Podatki, shranjeni v tabeli pred prirezovanjem, so prikazani:

IZBERI * OD prejemnikov;

Tabelo lahko skrajšamo, kot je prikazano:

cqlsh:height_info> TRUNCATE TABLE height_info.recipients;

Končno lahko potrdimo, da so podatki odstranjeni iz tabele kot:

cqlsh:height_info> IZBERI * OD prejemnikov;

Opazili boste, da tabela še vedno obstaja, vključno z vsemi definicijami sheme. Vendar so bili podatki iz tabele odstranjeni, zato je tabela ostala prazna.

Ne pozabite, da je operacija TRUNCATE nepovratna. Bodite previdni pri njegovi uporabi in morebitni izgubi podatkov.

Zaključek

V tej objavi ste se naučili, kako z ukazom CQL TRUNCATE odstraniti vse podatke iz tabele, hkrati pa ohraniti shemo tabele.