V tomto článku sa dozviete, ako používať príkaz Apache Cassandra TRUNCATE. Tento príkaz vám umožňuje odstrániť všetky údaje z tabuľky bez vymazania tabuľky alebo jej schémy.
Jednoducho povedané, príkaz TRUNCATE vám umožňuje resetovať údaje uložené v tabuľke, čo vám umožňuje obnoviť alebo vložiť nové údaje.
Syntax príkazu Cassandra Truncate
Syntax príkazu TRUNCATE vyzerá takto:
SKRAŤ [TABLE] [keyspace.table_name]
Vo vyššie uvedenej syntaxi môžete vynechať kľúčové slovo TABLE. Príkaz vykoná podobnú akciu.
Majte na pamäti, že príkaz TRUNCATE odošle príkaz JMX do všetkých uzlov v klastri, ktorý obsahuje údaje cieľa. To umožňuje uzlom synchronizovať sa a zostať aktuálne s najnovšími zmenami údajov. Ak niektorý z uzlov v klastri nefunguje, príkaz zlyhá a vráti chybu.
Vytvorenie vzorovej tabuľky a údajov
Pre ilustráciu vytvoríme vzorový kľúčový priestor a tabuľku. Príkazy sú uvedené v úryvkoch nižšie:
cqlsh> vytvorte kľúčový priestor height_info... s replikáciou = {
... 'class': 'SimpleStrategy',
... 'replikačný_faktor': 1};
cqlsh> USE info o vyske;
cqlsh:height_info> CREATE TABLE príjemcovia(
... tvoja ruka,
... text používateľského mena,
... výška int,
... PRIMÁRNY KĽÚČ(id, výška));
Potom môžeme vložiť vzorové údaje, ako je znázornené v príkazoch nižšie:
cqlsh:height_info> INSERT INTO recipients(id, username, height) values (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);
Príklad operácie skrátenia
Údaje uložené v tabuľke pred skrátením vyzerajú takto:
VYBRAŤ * Z príjemcov;
Tabuľku môžeme skrátiť takto:
cqlsh:height_info> TRUNCATE TABLE height_info.recipients;Nakoniec môžeme potvrdiť, že údaje sú z tabuľky odstránené ako:
cqlsh:height_info> SELECT * FROM príjemcov;
Všimnete si, že tabuľka stále existuje vrátane všetkých definícií schém. Údaje z tabuľky však boli odstránené a zostala prázdna tabuľka.
Majte na pamäti, že operácia TRUNCATE je nevratná. Buďte opatrní pri jeho používaní a potenciálnej strate údajov.
Záver
V tomto príspevku ste sa naučili, ako odstrániť všetky údaje z tabuľky pri zachovaní schémy tabuľky pomocou príkazu CQL TRUNCATE.