2013-09-28 22 views
16

我有一个表/列家族,我插入的行将在一段时间后过期。是否有可能再查询该表来检查哪些行马上就要到期(用于诊断目的,即是这样的:检查cassandra中的TTL行吗?

select subject, ?ttl? from discussions; 
+0

https://docs.datastax.com/en/cql/3.0/cql/cql_using/use_ttl_t.html – OrangeDog

回答

34

你可以做

select subject, TTL(subject) from discussions; 

归还剩余TTL中秒主题。

例如

> insert into discussions (uid, subject) VALUES (now(), 'hello') using ttl 100; 
> select subject, TTL(subject) from discussions; 

subject | ttl(subject) 
---------+-------------- 
    hello |   84 

因为我等16秒befor运行选择。

+0

非常详细但简洁的答案。谢谢! – Jacob

+1

这不适合我:别人有同样的问题http://stackoverflow.com/questions/22201000/check-current-ttl-on-collection-columns-in-cassandra –

+0

适合我。也许发布一个问题,详细说明你的确切场景。 – Jacob