1

我们使用 Cassandra 来存储日志。我们的数据访问模式看起来像一个队列——有一个将日志写入 Cassandra 的进程,还有一个读取和分析它们的进程。如果一切顺利,日志会延迟 15 分钟从 Cassandra 中读取出来,然后可以删除 - 因此,可以使用 TTL 功能有效地清理 Cassandra 中过时的日志。

但是,如果读取过程失败或其他原因,则需要暂停自动清理以防止数据丢失。有没有办法全局和动态地打开/关闭 TTL 或以某种方式自定义 TTL 过程(挂钩到压缩,设置自定义清理条件而不是时间戳等)?

4

1 回答 1

0

不,没有办法暂停 TTL 处理。您需要从消费者那里发出删除,或者有更长的 TTL 以确保您可以及时处理数据,即使出现故障也是如此。

于 2013-05-27T21:12:10.857 回答