Python Boto3扫描行为异常
我想通过以下扫描从DynamoDB表中获取对象列表Python Boto3扫描行为异常,python,aws-lambda,amazon-dynamodb,boto3,serverless,Python,Aws Lambda,Amazon Dynamodb,Boto3,Serverless,我想通过以下扫描从DynamoDB表中获取对象列表 video_list = video_table.scan( FilterExpression="attribute_not_exists(title)", ) 但是我收到这样的东西 {'Items': [], 'Count': 0, 'ScannedCount': 948 ...} 通过从DynamoDB控制台执行完全相同的扫描,我得到了许多结果 我正确地连接到了表,因为我以前收到过结果,但它最近才停止
video_list = video_table.scan(
FilterExpression="attribute_not_exists(title)",
)
但是我收到这样的东西
{'Items': [], 'Count': 0, 'ScannedCount': 948 ...}
通过从DynamoDB控制台执行完全相同的扫描,我得到了许多结果
我正确地连接到了表,因为我以前收到过结果,但它最近才停止接收
脚本位于Lambda函数中,与无服务器框架一起部署。计数
和ScannedCount
表示DynamoDB读取了948个项目,但这些项目都不匹配属性\u not \u exists(title)
。我可以想到两种可能的情况:
也许您的查询中有输入错误-也许属性名标题
错了?也许你的意思是属性\u存在
,而不是属性\u不存在
与往常一样,扫描
操作被分页。此操作只读取一页948个项目,而这些特定项目都不匹配。这948个项目是整个数据库,还是只是一个大得多的数字中的前948个?如果是后者,完全有可能(但我不知道你的情况有多大可能…)由于纯粹的运气,前948项都不匹配,你必须继续阅读下一页才能找到匹配项
这确实是第二个问题,我需要使用LastEvaluatedKey,谢谢。