如何在使用Python和CQL时从Cassandra返回时间戳?

2 投票
1 回答
1097 浏览
提问于 2025-04-18 01:12

在运行查询的时候。

"select * from temperature_by_day"

Cassandra 返回了一个字符串 '\x00\x00\x017\xa7\xea\x9e\x00' 作为时间戳。

如果我在服务器上用 cqlsh 查询,它会返回我设置的日期。

我看过这篇文章:如何从 Cassandra 获取时间戳?

里面说“在客户端代码中直接使用 Cassandra 的列时间戳是不推荐的。”

为什么呢?

这里的教程说要直接查询时间戳。

http://planetcassandra.org/blog/post/getting-started-with-time-series-data-modeling/

那么正确的做法是添加一个不属于主键的额外时间戳,并根据这个时间戳进行查询吗?

提前谢谢你。

1 个回答

2

Datastax Python驱动支持时间戳类型。如果你想了解如何将时间戳转换为可用的格式,可以查看DataType.deserialize这个方法:

return datetime.utcfromtimestamp(int64_unpack(byts) / 1000.0)

撰写回答