Search code examples
node.jsamazon-web-servicescassandraamazon-keyspaces

How to delete all rows in Cassandra Keyspace


I need to delete all rows in Cassandra but with Amazon Keyspace isn't possible to execute TRUNCATE tbl_name because the TRUNCATE api isn't supported yet.

Now the few ideas that come in my mind are a little bit tricky:

Solution A

  • select all the rows
  • cycle all the rows and delete it (one by one or in a batch)

Solution B

  • DROP TABLE
  • CREATE TABLE with the structure of the old table

Do you have any idea to keep the process simplest?

Tnx in advance


Solution

  • Solution B should be fine in absence of TRUNCATE. In older versions (version prior to 2.1) of Cassandra recreating table with the same name was a problem. Refer article Datastax FAQ Blog. But since then issue has been resolved via CASSANDRA-5202.

    If data in table is not required anymore it is better to drop the table and recreate it. Moreover it will be very tedious task if table contains big amount of data.