【发布时间】:2013-09-20 13:01:48
【问题描述】:
我正在尝试从 cassandra 表的 sstable2json 转储中恢复时间戳以进行批处理。表架构如下所示:
CREATE TABLE actions (
userid text,
action text,
ts timestamp,
PRIMARY KEY (userid, ts)
) WITH CLUSTERING ORDER BY (ts DESC);
特定用户的 sstable2json 转储如下所示:
{"key": "HEX_VALUE_OF_USERID","columns": [["2013-07-10 19\\:25\\:44+0000:","",1373484344552000], ["2013-07-10 19\\:44\\:11+0000:action","blog",1373484344552000]]},
当我在数据库中查找相同的用户详细信息时,从转储中恢复日期时间(“2013-07-10 19:25:44+0000”),我没有找到匹配的记录。但是,我可以通过使用恢复日期时间(+/-1 秒)的范围查询来找到匹配的记录。是否有可能以某种方式恢复实际的 ts(我猜是毫秒)?附加到该行的其他时间戳不一致(可能与 ts 相差几毫秒)。我正在使用 cassandra 1.2.6 并且不存在辅助列。
【问题讨论】:
-
您的 ts 列是否有二级索引,您如何插入时间戳以及您使用的 cassandra 的确切版本是什么?
标签: cassandra unix-timestamp cql cql3