Cassandra - 快速删除存储在主键值中的所有行?

时间:2017-04-11 08:50:08

标签: cassandra

我正在创建一个表,其中包含很多(我们说的数百万甚至数十亿)由主键存储的数据,这些数据将作为int存储一年。 我们这样做是因为我们希望能够执行简单的清除。

表格如下:

TABLE data (
 year int,
 fulldate date,
 ref1 text,
 ref2 text,
 data blob,
 PRIMARY KEY ((year), fulldate, ref1, ref2)
);

将来,我们计划删除一年的所有数据,并且不会在此特定年份添加更多数据。

我们能否以有效的方式删除主键值存储的所有数据?喜欢做类似于跌落的事情吗?

我在文档中没有看到关于此类事情的任何内容,但我是Cassandra的新手,所以也许内部优化已完成或其他什么?

感谢您的帮助。

1 个答案:

答案 0 :(得分:2)

是的,您只需一个查询即可删除分区键的所有数据。

只需在删除时指定分区密钥年份。

DELETE from data WHERE year = 2017;

它很有效因为它只为该分区值创建一个逻辑删除。