Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我们正在研究使用 Cassandra 来存储来自各种来源的信息流。
我们面临的一个问题是在两个日期之间进行查询的最佳方式。
例如,我们需要检索 datetime dt1 和 datetime dt2 之间的对象。
我们目前正在考虑将创建的 unix 时间戳作为指向实际对象的键,然后使用 get_key_range 进行查询以检索?
显然,如果两个项目具有相同的时间戳,这将不起作用。
一般来说,这是在 noSQL 存储中执行日期时间的最佳方法吗?
Cassandra 行可能非常大,因此请考虑将其建模为一行中的列而不是 CF 中的行;那么您可以使用列切片操作,这比行切片要快。如果没有与此关联的“自然”键,那么您可以使用每日或每小时键,例如“2010/02/08 13:00”。
否则,是的,使用范围查询(get_key_range 在 0.5 中已弃用;使用 get_range_slice)是您的最佳选择。