Подтвердить что ты не робот

Как получить временную метку из кассандры?

В приведенной ниже кассандре "получить результат".. мы можем получить имя столбца и значения. Но как получить временную метку. Есть ли какая-то лучшая идея, чтобы получить значения с помощью timestamp

[[email protected]]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).
4b9b3361

Ответ 1

Не рекомендуется использовать временные метки столбца Cassandra непосредственно в клиентском коде; в идеале вы должны добавить свои собственные временные метки в любой форме, наиболее подходящей для вашей схемы. Но если вы действительно этого захотите, это можно сделать через интерфейс trift (и, в дополнение, к некоторым библиотекам, использующим интерфейс trift).

Для случая pycassa вам просто нужно добавить include_timestamp=True к аргументам для вашего вызова .get(). Для случаев CQL, cqlsh и cassandra-cli я считаю, что нет абсолютно никакой возможности получить временную метку, извините.

Ответ 2

Просто пробежал этот поток и обнаружил, что ответ устарел. CQL теперь предоставляет внутренние временные метки с помощью функции writetime():

select key,columnfoo,writetime(columnfoo) from tablebar;