Cassandra Truncateová

Cassandra Truncateova



V tomto článku se dozvíte, jak používat příkaz Apache Cassandra TRUNCATE. Tento příkaz umožňuje odstranit všechna data z tabulky bez odstranění tabulky nebo jejího schématu.

Jednoduše řečeno, příkaz TRUNCATE umožňuje resetovat data uložená v tabulce, což umožňuje obnovit nebo vložit nová data.







Syntaxe příkazu Cassandra Truncate

Syntaxe příkazu TRUNCATE vypadá takto:



ZKRÁTIT [TABLE] [keyspace.table_name]

Ve výše uvedené syntaxi můžete klíčové slovo TABLE vynechat. Příkaz provede podobnou akci.



Mějte na paměti, že příkaz TRUNCATE odesílá příkaz JMX do všech uzlů v klastru, který obsahuje data cíle. To umožňuje uzlům synchronizovat se a zůstat v obraze s nedávnými změnami dat. Pokud je některý z uzlů v clusteru mimo provoz, příkaz selže a vrátí chybu.





Vytváření vzorové tabulky a dat

Pro ilustraci vytvoříme vzorový klíčový prostor a tabulku. Příkazy jsou uvedeny v úryvcích níže:

cqlsh> vytvořit klíčový prostor height_info
... s replikací = {
... 'class': 'SimpleStrategy',
... 'replikační_faktor': 1};
cqlsh> USE info o vyske;
cqlsh:height_info> CREATE TABLE příjemců(
... vaše ruka,
... text uživatelského jména,
... výška int,
... PRIMÁRNÍ KLÍČ(id, výška));

Poté můžeme vložit ukázková data, jak je znázorněno v příkazech níže:



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);

Příklad operace zkrácení

Data uložená v tabulce před zkrácením vypadají takto:

VYBRAT * Z příjemců;

Tabulku můžeme zkrátit takto:

cqlsh:height_info> TRUNCATE TABLE height_info.recipients;

Nakonec můžeme potvrdit, že data byla odstraněna z tabulky jako:

cqlsh:height_info> SELECT * FROM příjemců;

Všimnete si, že tabulka stále existuje včetně všech definic schémat. Data z tabulky však byla odstraněna a zůstala prázdná tabulka.

Mějte na paměti, že operace TRUNCATE je nevratná. Buďte opatrní při jeho používání a potenciální ztrátě dat.

Závěr

V tomto příspěvku jste se naučili, jak odstranit všechna data z tabulky při zachování schématu tabulky pomocí příkazu CQL TRUNCATE.