Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to retrieve the timestamp from cassandra?

In the below cassandra, "get result"..we can able to retrieve the column name and values. But how to retrieve the timestamp..Is there any better idea to get the values by using timestamp

[default@sample]get user[bob];                                        
=> (column=name, value=bobdroid, timestamp=1335361733545850)
=> (column=email, [email protected], timestamp=1335361733545850)
=> (column=age, value=23, timestamp=1335361733545850)
=> (column=password, value=MTIz, timestamp=1335361733545850)
Returned 4 results.
Elapsed time: 4 msec(s).
like image 262
BobDroid Avatar asked Apr 27 '12 07:04

BobDroid


2 Answers

Just ran across this thread, and found that the answer is out of date. CQL now exposes the internal timestamps using the writetime() function:

select key,columnfoo,writetime(columnfoo) from tablebar;
like image 183
Peter Fales Avatar answered Sep 20 '22 16:09

Peter Fales


It's not recommended to use column Cassandra timestamps directly in client code; ideally, you should add your own timestamps in whatever form is most appropriate to your schema. But if you really want to, it can be done through the thrift interface (and, by extension, certain libraries using the thrift interface).

For the pycassa case, you just need to add include_timestamp=True to the arguments for your .get() call. For the CQL, cqlsh, and cassandra-cli cases, I believe there's totally no way to get the timestamp, sorry.

like image 24
the paul Avatar answered Sep 18 '22 16:09

the paul