tssl在cassandra创建墓碑

时间:2017-11-03 00:56:27

标签: cassandra cassandra-3.0

我只对cassandra进行插入。插入时,只插入非空值以避免使用墓碑。但是很少有记录插入TTL。但是从表中选择count(*)会产生以下错误 -

  

读取76个实时行和1324个逻辑删除单元格以查询SELECT * FROM   xx.yy WHERE标记(y)> =   令牌(fc872571-1253-45a1-ada3-d6f5a96668e8)限制100(见   tombstone_warn_threshold)

TTL插入导致cassandra 3.7中的墓碑吗?如何减轻警告?

没有更新只进行插入,有些记录没有TTL,有些记录有TTL

2 个答案:

答案 0 :(得分:4)

为TTL和压缩添加一个点。即使在gc_grace_seconds之后,压缩的默认设置也会启动,具体取决于tombstone_compaction_intervaltombstone_threshold

之前,由于具有大量记录的表格的大量墓碑,我们读取了超时问题。最后,我们需要减少tombstone_threshold以及启用unchecked_tombstone_compaction以更频繁地触发压缩过程。

您可以参考以下文档了解更多详情

http://docs.datastax.com/en/cql/3.3/cql/cql_reference/cqlCreateTable.html?hl=unchecked_tombstone_compaction#tabProp__cqlTableGc_grace_seconds

答案 1 :(得分:1)

来自datastax文档:https://docs.datastax.com/en/cql/3.1/cql/cql_using/use_expire_c.html

  

自列创建超过TTL值后的秒数,TTL数据被视为已过期并包含在结果中。在读取路径上的下一次读取之后,过期数据用逻辑删除标记,但最多保留gc_grace_seconds。经过这段时间后,在正常的压缩和修复过程中会自动删除逻辑删除的数据。

这些条目将被视为墓碑,直到压缩或修复。