Cassandra TTL自动更改

时间:2017-01-24 07:35:58

标签: cassandra

我在cassandra中有一个列系列,默认ttl为3024000(35天),压缩策略是LCS,表结构是这样的

CREATE TABLE xyz (
logdate text,
cookieid text,
count1 int,
count2 int,
count3 int,
PRIMARY KEY (logdate, cookieid)
) WITH CLUSTERING ORDER BY (cookieid ASC)

但是当我检查35天的数据时,它仍然显示20天我不明白为什么会发生这种情况。有人对此有所了解吗?这是因为压缩吗?

1 个答案:

答案 0 :(得分:2)

如果您重新插入同一行,可能会发生这种情况。

例如

INSERT INTO XYZ VALUES(100,..........some value) -- lets say inserted 10 days back.

如果没有再次插入行,则TTl可能已显示25天,但可能发生的情况是该行再次插入。

INSERT INTO XYZ VALUES(100,..........some other value ) -- lets say inserted 5 days back.

TTL将是30天。

每次插入行(同一行键)时,TTL值都会重置。