在卡桑德拉中检索"tombstoned"记录



我的问题很简单。是否有可能在GCGraceSeconds期限到期(默认为10天)之前检索标记为tombstone的列?如果是的话,确切的CQL查询是什么?

如果我理解删除过程,墓碑在memtable上被标记,SSTable是不可变的,等待压缩,仍然有被删除的数据等待压缩。因此,在压缩发生之前,是否有任何方法从Memtable或SSTable读取墓碑数据?

在CQLSH命令提示符&卡桑德拉2.0。

您是对的,当插入墓碑时,它通常不会立即删除底层数据(除非您的所有数据都在memtable中)。然而,你无法控制它何时发生。如果你没有太多的数据,压缩发生得很快,底层数据可能会很快被删除,比10天快得多。

没有查询读取已删除的数据,但是你可以使用sstable2json检查所有的sstable,看看它们是否包含已删除的数据。

只是为了添加到前面的注释中。对于频繁删除的列族,设置较低的gc_grace_seconds值。gc需要一些时间,但是墓碑应该会被清除。

相关内容

  • 没有找到相关文章

最新更新