python2.7-如何在boto-dyna2查询中指定组合范围键条件



我创建了一个DynamoDB表,其中包含日志消息,每个日志消息都有一个相关的时间戳:

table = Table.create('myTable',
                      schema=[
                         HashKey('cluster'),
                         RangeKey('messageTimestamp', data_type=NUMBER)],
                      throughput={'read': 10,
                                  'write': 5},
                      connection=conn)

我知道如何查询表以获取时间戳晚于给定时间戳的所有项目:

tThresh = time.time()
results = table.query(cluster__eq="clusterA", messageTimestamp__gte=tThresh)

("集群"散列键值大多是恒定的,即消息仅来自两个不同的集群)

是否可以构造一个查询来获取具有"之前和之后"时间戳的所有项目,即在一个查询中基本上组合"gte"one_answers"lte"?感谢

在4月24日之前,您不能在查询中指定Greater ThanLesser ThanBetween。但截至4月24日,AWS DynamoDB已更新其API,以允许这些先进的运营商。

http://aws.typepad.com/aws/2014/04/improved-queries-and-updates-for-dynamodb.html

我已经验证了这些操作程序适用于Java SDK 1.7.7,但对于boto,我猜boto API也已经更新,你应该更新到最新的API版本并进行测试。

最新更新