Cassandra ścięta

Cassandra ścięta

W tym artykule dowiesz się, jak korzystać z polecenia Apache Cassandra Truncate. To polecenie pozwala usunąć wszystkie dane z tabeli bez usuwania tabeli lub jej schematu.

Mówiąc prosto, polecenie obrotowe umożliwia zresetowanie danych przechowywanych w tabeli umożliwiającej przywrócenie lub wstawienie nowych danych.

Składnia polecenia Cassandra Truncate

Pokazana jest składnia polecenia obcięcia:

Obcinaj [Tabela] [Keysspace.Nazwa tabeli]

Możesz pominąć słowo kluczowe tabeli w powyższej składni. Polecenie wykona podobną akcję.

Należy pamiętać, że polecenie obcięcia wysyła polecenie JMX do wszystkich węzłów w klastrze zawierającym dane celu. To pozwala węzłom synchronizować i być na bieżąco z najnowszymi zmianami danych. Jeśli którykolwiek z węzłów w klastrze jest opuszczony, polecenie nie powiedzie się i zwróci błąd.

Tworzenie przykładowej tabeli i danych

Do celów ilustracyjnych utworzymy przykładową przestrzeń i tabelę. Polecenia są jak pokazane na poniższych fragmentach:

CQLSH> Utwórz keyspace Height_Info
… Z replikacją =
… „Klasa”: „ProsteStrategy”,
… „Replikacja_factor”: 1;
cqlSh> Użyj Height_Info;
cqlsh: height_info> Utwórz odbiorców tabeli (
… Id Int,
… Tekst nazwy użytkownika,
… Wysokość int,
… Klucz podstawowy (id, wysokość));

Następnie możemy wstawić przykładowe dane, jak pokazano w poniższych poleceniach:

cqlsh: height_info> wstaw do odbiorców (id, nazwa użytkownika, wysokość) wartości (0, „user1”, 210);
cqlsh: height_info> wstaw do odbiorców (id, nazwa użytkownika, wysokość) wartości (1, „user2”, 115);
cqlsh: height_info> Wstaw do odbiorców (id, nazwa użytkownika, wysokość) wartości (2, „user3”, 202);
cqlsh: height_info> wstaw do odbiorców (id, nazwa użytkownika, wysokość) wartości (3, „user4”, 212);
cqlsh: height_info> Wstaw do odbiorców (id, nazwa użytkownika, wysokość) wartości (4, „user5”, 216);

Przykładowa operacja obcięcia

Dane przechowywane w tabeli przed obcięciem są jak pokazano:

Wybierz * od odbiorców;

Możemy obciąć tabelę, jak pokazano:

cqlsh: height_info> obcięty tabela wysokości_info.odbiorcy;

Na koniec możemy potwierdzić, że dane są usuwane z tabeli jako:

cqlsh: height_info> wybierz * od odbiorców;

Zauważysz, że stół nadal istnieje, w tym wszystkie definicje schematu. Jednak dane z tabeli zostały usunięte, pozostawiając pustą tabelę.

Należy pamiętać, że operacja obcięcia jest nieodwracalna. Zachowaj ostrożność w zakresie wykorzystania i potencjalnej utraty danych.

Wniosek

W tym poście nauczyłeś się usunąć wszystkie dane z tabeli, zachowując schemat tabeli za pomocą polecenia obrotowego CQL.