Cassandra - 快速删除存储在主键值中的所有行?
问题描述:
我正在创建一个表,它将包含很多(我们正在说亿元,如果不是十亿)由主键存储的数据,这将是一年存储为int的数据。 我们这样做是因为我们希望能够执行简单清除。Cassandra - 快速删除存储在主键值中的所有行?
表是这样的:
TABLE data (
year int,
fulldate date,
ref1 text,
ref2 text,
data blob,
PRIMARY KEY ((year), fulldate, ref1, ref2)
);
在未来,我们计划放弃一年的所有数据,并没有任何更多的数据添加到这个特殊的年份。
我们能否以有效的方式删除主键值存储的所有数据?喜欢做类似下降的事情?
我在文档中没有看到关于这种事情的任何内容,但我对Cassandra是新手,所以也许有内部优化完成或什么?
感谢您的帮助。
答
是的,您可以只用一个查询来删除分区键的所有数据。
只需指定删除时的分区键年。
DELETE from data WHERE year = 2017;
它很有效,因为它只为该分区值创建单个逻辑删除。
非常感谢,我知道查询,但我不确定它的优化:D – MrBouh