Pertanto, è possibile incontrare uno scenario in cui è necessario eseguire un ripristino nel database o una tabella specifica. Questo post ti insegnerà come rimuovere tutti i dati da una tabella Cassandra senza rimuovere lo schema della tabella. Ciò consente di ripristinare tutti i dati e iniziare da zero."
Comando Cassandra Truncate
Possiamo utilizzare il comando Truncate per rimuovere tutti i dati da una tabella specifica preservando il layout e lo schema della tabella.
Una volta eseguito il comando Truncate, tutti i dati vengono rimossi dalla tabella ed è impossibile invertire a meno che non si disponga di una copia di backup della tabella. Questa operazione viene applicata in tutti i nodi nel cluster Cassandra. Ciò garantisce che tutti i dati siano sincronizzati in tutti i nodi.
La sintassi del comando è come mostrata:
Truncate [tabella] [keyspace_name.table_name]
Se ti trovi già nello spazio del tasto target, è possibile utilizzare la sintassi come mostrato:
Truncate [tabella] [table_name]
Prima di eseguire il comando Truncate, assicurati quanto segue:
Passaggio 1: selezionare la tabella di destinazione
Il primo passo è garantire che la tabella target esista nello spazio di chiavi.
Crea spazio di keys
Prima di impostare tutti i dati di esempio, abbiamo bisogno di un database per archiviare i dati. Possiamo farlo creando uno spazio di chiavi di esempio.
La query è come prevista di seguito:
CQLSH> Crea Store Keyspace con replication = 'class': 'SimpleStrategy', 'Replication_Factor': 3;
La query sopra crea uno spazio di tastiera semplice chiamato Store con una replica_factor di 3. Se non hai familiarità con i semi di tasti Cassandra, dai un'occhiata al nostro tutorial sull'argomento per saperne di più.
Una volta creati, possiamo passare allo spazio di tastiera con il comando:
CQLSH> Usa Store;
Crea tabella
Il prossimo passo è creare una tabella che tiene la struttura per i nostri dati. Tieni presente che Cassandra può gestire i dati non strutturati. Tuttavia, per semplicità, tenteremo di utilizzare una struttura da tavolo.
Possiamo eseguire la query come mostrato:
CQLSH: Store> Crea un'inventario delle tabelle (Product_id Int, Product_Name Testo, quantità int, prezzo int, disponibilità booleana, chiave primaria (Product_id));
La query sopra dovrebbe creare una tabella di inventario con le colonne e i tipi di dati specificati.
CQLSH: Store> INSERT IN INVENTRIA (Product_id, Product_Name, quantità, prezzo, disponibilità)
... valori (1, "meta mischia", 5, 399, vero);
CQLSH: Store> INSERT IN INVENTRIA (Product_id, Product_Name, quantità, prezzo, disponibilità) Valori (2, 'echo dot', 10, 27, true);
CQLSH: Store> INSERT IN INVENTRIA (Product_id, Product_Name, quantità, prezzo, disponibilità) Valori (3, 'Tile Pro', 10, 26, false);
CQLSH: Store> INSERT IN INVENTRIA (Product_id, Product_Name, quantità, prezzo, disponibilità) Valori (4, 'Monitor', 100, 499, false);
CQLSH: Store> INSERT IN INVENTRIA (Product_id, Product_Name, quantità, prezzo, disponibilità) Valori (5, 'Laptop', 87, 700, true);
Possiamo quindi interrogare il tavolo come:
Seleziona * dall'inventario;
La query sopra dovrebbe restituire i record memorizzati nella tabella come mostrato:
Cassandra Elimina tutte le righe
Per rimuovere tutti i dati dal cluster preservando lo schema della tabella, possiamo eseguire il comando Truncate:
Truncate Table Store.inventario;
Questo comando dovrebbe cancellare tutti i dati dalla tabella pur conservando la struttura della tabella.
Conclusione
Questo articolo ha riguardato come utilizzare il comando tabella truncate per rimuovere i dati da una determinata tabella senza far cadere la tabella o la struttura della tabella. Questo è un ottimo comando quando si ripristina la tabella senza ricrearla.
Grazie per la lettura e la codifica felice!!