【问题标题】:Cassandra - delete all rows stored in a primary key value fast?Cassandra - 快速删除存储在主键值中的所有行?
【发布时间】:2017-04-11 17:11:34
【问题描述】:

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

表格如下:

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

未来,我们计划删除一年的所有数据,并且不会再向该特定年份添加任何数据。

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

我在文档中没有看到任何关于这种事情的信息,但我是 Cassandra 的新手,所以可能有内部优化完成或其他什么?

感谢您的帮助。

【问题讨论】:

    标签: cassandra


    【解决方案1】:

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

    删除时只需指定分区键年份即可。

    DELETE from data WHERE year = 2017;
    

    而且它很高效,因为它只为该分区值创建一个墓碑。

    【讨论】:

    • 非常感谢,我知道查询,但我不确定它的优化:D
    猜你喜欢
    • 1970-01-01
    • 2014-01-14
    • 1970-01-01
    • 2011-01-21
    • 1970-01-01
    • 2018-03-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多