12

在下面的 cassandra 中,“获取结果”..我们可以检索列名和值。但是如何检索时间戳..有没有更好的主意来使用时间戳来获取值

[default@sample]get user[bob];                                        
=> (column=name, value=bobdroid, timestamp=1335361733545850)
=> (column=email, value=bob@gmail.com, timestamp=1335361733545850)
=> (column=age, value=23, timestamp=1335361733545850)
=> (column=password, value=MTIz, timestamp=1335361733545850)
Returned 4 results.
Elapsed time: 4 msec(s).
4

2 回答 2

34

刚刚跑过这个帖子,发现答案已经过时了。writetime()CQL 现在使用以下函数公开内部时间戳:

select key,columnfoo,writetime(columnfoo) from tablebar;
于 2014-04-11T16:17:28.677 回答
5

不建议在客户端代码中直接使用列 Cassandra 时间戳;理想情况下,您应该以最适合您的架构的任何形式添加自己的时间戳。但如果你真的想要,它可以通过 thrift 接口来完成(并且,通过扩展,某些库使用 thrift 接口)。

对于 pycassa 案例,您只需要添加调用include_timestamp=True的参数即可.get()。对于 CQL、cqlsh 和 cassandra-cli 的情况,我相信完全没有办法获得时间戳,抱歉。

于 2012-05-02T22:34:58.020 回答