我尝试执行DynamoDBMapper.scan()
。
当我在小桌子上请求scan()
时。
当我在scan()
的大型表上请求limit
时,请求执行时应用程序的响应时间不长。所以我想scan()
尝试获取表格中的所有项目而不是我定义的数量。
如果执行低级别AmazonDynamoDBClient.scan()
,它会按预期工作并返回有限的项目。
我知道读取容量单位,这不是很多,但是低级方法工作得很好而且速度很快。
所以问题:我做错了什么?我需要做些什么才能使DynamoDBMapper.scan()
工作正确并请求确切的有限项目。
我的代码段。表大小约1 000 000。
final DynamoDBScanExpression expression = new DynamoDBScanExpression()
.withLimit(1000);
return getMapper().scan(MyEntity.class, expression);