我正在尝试从 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 并且不存在辅助列。