2016-01-24 79 views
0

我通过Python(Boto3)使用DynamoDB,试图执行简单的表扫描,但不断得到0结果。 当我试图使用AWS控制台上相同的扫描过滤器,其返回结果的正确#..DynamoDB简单扫描 - 获得0结果

我请求代码:

response = table.scan(
      FilterExpression=Attr('datetime').eq(1453630770) 
     ) 

注:“日期时间”属性是多少键入

注2:表扫描,而不PARAMS正确

初见成效

我做了什么错?由于duders

回答

1

好了,找到了答案 - 显然我已经达到了最大响应大小(大对象),并通过迭代使用“LastEvaluatedKey”

扫描的几个回合正常产生的所有结果DynamoDB表修好了。

while 'LastEvaluatedKey' in response: 
     response = table.scan(
      ProjectionExpression=pe, 
      FilterExpression=fe, 
      ExpressionAttributeNames= ean, 
      ExclusiveStartKey=response['LastEvaluatedKey'] 
      ) 

此处了解详情:http://docs.aws.amazon.com/amazondynamodb/latest/gettingstartedguide/GettingStarted.Python.04.html

希望有人会发现它有用。