操纵Cassandra writetime值

操纵Cassandra writetime值,cassandra,ttl,nosql,Cassandra,Ttl,Nosql,假设我有一个应用程序,它定期接收一些测量数据。 我知道测量数据的准确时间,我希望在测量后的30天内删除每一条数据 我不会立即将数据插入数据库,但我想使用Cassandra的生存时间功能 有没有办法操纵Cassandra中一行的系统实习生时间戳,这样我就可以将生存时间设置为60天,但它实际上用我的时间戳测量每行的寿命 例如,我在2014年8月27日-19:00测量某物。我将2014年8月27日-20:00的数据插入数据库,并将生存时间值设置为1天。我现在希望该行在2014年8月28日--19:00

假设我有一个应用程序,它定期接收一些测量数据。 我知道测量数据的准确时间,我希望在测量后的30天内删除每一条数据

我不会立即将数据插入数据库,但我想使用Cassandra的生存时间功能

有没有办法操纵Cassandra中一行的系统实习生时间戳,这样我就可以将生存时间设置为60天,但它实际上用我的时间戳测量每行的寿命

例如,我在2014年8月27日-19:00测量某物。我将2014年8月27日-20:00的数据插入数据库,并将生存时间值设置为1天。我现在希望该行在2014年8月28日--19:00时删除,而不是像往常一样在2014年8月28日--20:00时删除


这样做可能吗?

基于您的示例,我建议您采用以下方法:

  • 插入前计算Δx=插入时间-测量时间
  • 设置TTL=1天-Δx以插入行
  • 根据评论添加:


    您可以将-client与“一次同时输入多个值”一起使用。有可能一次在每一列和整行上设置TTL。

    我真的不希望在应用程序本身中设置TTL(这样会容易得多)。目前还不清楚是否需要同时输入多个值@好的,看看我最新的答案。不幸的是,计算TTL的其他方法无法提供。