cassandra中TTL的最大值

时间:2014-11-10 15:18:49

标签: cassandra ttl

我们可以为TTL分配的最大值是什么?

在cassandra的java驱动程序中,TTL设置为int。这是否意味着它仅限于Integer.MAX(2,147,483,647秒)?

2 个答案:

答案 0 :(得分:7)

最大TTL实际上是20年。来自org.apache.cassandra.db.ExpiringCell

public static final int MAX_TTL = 20 * 365 * 24 * 60 * 60; // 20 years in seconds

我认为这是在CQL和Thrift查询路径中验证的。

答案 1 :(得分:0)

我不知道您为什么需要这样做,但是Cassandra中的默认TTL为空,这意味着直到您强制执行,它才会被删除。

  

Cassandra提供的一项非常强大的功能是   使不再需要的数据过期。这个有效期非常灵活   并在各个列值的级别上工作。生存的时间   (或TTL)是Cassandra将每个列值存储到的值   指示保留值的时间。

     

TTL值默认为null,这意味着写入的数据将   不过期。

https://www.oreilly.com/library/view/cassandra-the-definitive/9781491933657/ch04.html