Cassandra 中的时间戳数据持久性



在我们的爬行系统中,我们有5个节点的Cassandra集群。我有一个场景,我想在 cassandra 数据超过 x 天时立即删除它。

前任:

身份证 | 姓名 |created_date

1 | Dan      |  "2017-08-01"             
2 | Monk     |  "2017-08-02" 
3 | Shibuya  |  "2017-08-03"             
4 | Rewa     |  "2017-08-04"             
5 | Himan    |  "2017-08-05"

如果x = 3那么应该是以下情况:

身份证 | 姓名 |created_date

1 | Dan      |  "2017-08-01"   --------------> DELETE          
2 | Monk     |  "2017-08-02"   --------------> DELETE
3 | Shibuya  |  "2017-08-03"   -------------->(REMAIN)Latest 3 days data
4 | Rewa     |  "2017-08-04"   -------------->(REMAIN)Latest 3 days data
5 | Himan    |  "2017-08-05"   -------------->(REMAIN)Latest 3 days data

如果添加了新数据,则应删除id=3。 是否有任何Cassandra配置或任何方法来执行此操作?

Cassandra 具有 TTL 功能,允许您指定每个 CQL 单元的有效期。详细信息可在插入文档中找到,但它也适用于更新。

您可以使用TTL。

但要小心墓葬和压实程序

最新更新