Cassandra Truncate

Cassandra Truncate



I denne artikkelen vil du lære hvordan du bruker Apache Cassandra TRUNCATE-kommandoen. Denne kommandoen lar deg fjerne alle dataene fra en tabell uten å slette tabellen eller skjemaet.

Enkelt sagt lar TRUNCATE-kommandoen deg tilbakestille dataene som er lagret i en tabell, slik at du kan gjenopprette eller sette inn nye data.







Cassandra Truncate Command Syntax

TRUNCATE kommandosyntaksen er som vist:



TRUNCATE [TABLE] [keyspace.table_name]

Du kan utelate nøkkelordet TABLE i syntaksen ovenfor. Kommandoen vil utføre en lignende handling.



Husk at TRUNCATE-kommandoen sender JMX-kommandoen til alle nodene i klyngen som inneholder dataene til målet. Dette lar nodene synkronisere og holde seg oppdatert med de siste dataendringene. Hvis en av nodene i klyngen er nede, vil kommandoen mislykkes og returnere en feil.





Opprette prøvetabell og data

For illustrasjonsformål vil vi lage et eksempel på et nøkkelområde og en tabell. Kommandoene er som vist i utdragene nedenfor:

cqlsh> create keyspace height_info
... med replikering = {
... 'class': 'SimpleStrategy',
... 'replikeringsfaktor': 1};
cqlsh> BRUK høyde_info;
cqlsh:height_info> LAG TABELL-mottakere(
... din hånd,
... brukernavn tekst,
... høyde int,
... PRIMÆR NØKKEL(id, høyde));

Vi kan deretter sette inn eksempeldata som vist i kommandoene nedenfor:



cqlsh:height_info> INSERT INTO mottakere(id, brukernavn, høyde) verdier (0, 'bruker1', 210);
cqlsh:height_info> INSERT INTO recipients(id, username, height) verdier (1, 'bruker2', 115);
cqlsh:height_info> INSERT INTO recipients(id, username, height) verdier (2, 'bruker3', 202);
cqlsh:height_info> INSERT INTO mottakere(id, brukernavn, høyde) verdier (3, 'bruker4', 212);
cqlsh:height_info> INSERT INTO recipients(id, username, height) verdier (4, 'user5', 216);

Eksempel på trunkeringsoperasjon

Dataene som er lagret i tabellen før trunkering er som vist:

VELG * FRA mottakere;

Vi kan avkorte tabellen som vist:

cqlsh:height_info> TRUNCATE TABLE height_info.recipients;

Til slutt kan vi bekrefte at dataene er fjernet fra tabellen som:

cqlsh:height_info> VELG * FRA mottakere;

Du vil legge merke til at tabellen fortsatt eksisterer, inkludert alle skjemadefinisjonene. Dataene fra tabellen er imidlertid fjernet og etterlot en tom tabell.

Husk at TRUNCATE-operasjonen er irreversibel. Vær forsiktig med bruken og potensielt tap av data.

Konklusjon

I dette innlegget lærte du hvordan du fjerner alle dataene fra en tabell mens du bevarer tabellskjemaet ved å bruke CQL TRUNCATE-kommandoen.