题
我们正在考虑使用Cassandra存储来自各种来源的信息流。
我们面临的一个问题是在两个日期之间查询的最佳方法。
例如,我们需要在DateTime DT1和DateTime DT2之间检索对象。
我们目前正在考虑创建的UNIX时间戳作为指向实际对象的密钥,然后使用get_key_range查询检索?
显然,如果两个项目具有相同的时间戳,这将行不通。
这通常是在NOSQL商店中进行DateTime的最佳方法吗?
解决方案
Cassandra行可能很大,因此请考虑将其建模为一行而不是CF中的行;然后,您可以使用比行切片快的列切片操作。如果没有与此相关联的“天然”键,那么您可以使用“ 2010/02/08 13:00”之类的日常键或小时键。
否则,是的,使用范围查询(get_key_range在0.5中弃用;使用get_range_slice)是您的最佳选择。
不隶属于 StackOverflow