我的想法是使用TTL = 15 minutes向Cassandra添加行,这样我就可以加载实时数据(now - 15 minutes, now),而不需要存储时间戳等。也就是说,当我运行select count(*) from realtime_table时,它们会被计算在内吗
发布于 2018-06-28 20:03:58
不会,逻辑删除的行将不会作为结果返回-在读取数据时将跳过它们。
但是如果你主动使数据过期,你可能需要调优gc_grace_period,否则你可能会得到太多未删除的逻辑删除,在某些情况下,如果读操作需要跳过逻辑删除,在读操作过程中会开始收到警告或错误(由tombstone_warn_threshold和cassandra.yaml的tombstone_failure_threshold选项控制)。
下面是描述如何删除和清理数据的very good blog post。
但select count(*) from table在Cassandra中是真正的反模式--您需要考虑使用分区等对数据进行正确的建模。
https://stackoverflow.com/questions/51078654
复制相似问题