我在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天我不明白为什么会发生这种情况。有人对此有所了解吗?这是因为压缩吗?
答案 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值都会重置。