Как получить временную метку из кассандры?
В приведенной ниже кассандре "получить результат".. мы можем получить имя столбца и значения. Но как получить временную метку. Есть ли какая-то лучшая идея, чтобы получить значения с помощью 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).
Ответы
Ответ 1
Не рекомендуется использовать временные метки столбца Cassandra непосредственно в клиентском коде; в идеале вы должны добавить свои собственные временные метки в любой форме, наиболее подходящей для вашей схемы. Но если вы действительно этого захотите, это можно сделать через интерфейс trift (и, в дополнение, к некоторым библиотекам, использующим интерфейс trift).
Для случая pycassa вам просто нужно добавить include_timestamp=True
к аргументам для вашего вызова .get()
. Для случаев CQL, cqlsh и cassandra-cli я считаю, что нет абсолютно никакой возможности получить временную метку, извините.
Ответ 2
Просто пробежал этот поток и обнаружил, что ответ устарел. CQL теперь предоставляет внутренние временные метки с помощью функции writetime()
:
select key,columnfoo,writetime(columnfoo) from tablebar;