Amazon dynamodb 如何增量扫描AWS dynamoDb中的数据

Amazon dynamodb 如何增量扫描AWS dynamoDb中的数据,amazon-dynamodb,Amazon Dynamodb,我在AWS dynamoDb中创建了一个只有一个哈希键的表。目前它拥有2000多万条数据,每天插入数千条数据 最近,我想每天把这些数据从dynamoDb拿到本地硬盘上。我写了一个小程序来使用扫描操作来保存它们。数据的总大小不是很大,大约为10G,但扫描过程中的时间成本几乎是每天5小时。当然,考虑到费用,我没有设置更大的阅读量 我的问题是:是否有一种方法可以增量扫描这些数据,这意味着我只需要复制新插入的数据,而不需要复制整个数据库。我曾经尝试将与ExclusiveStartKey一起使用,但它找不

我在AWS dynamoDb中创建了一个只有一个哈希键的表。目前它拥有2000多万条数据,每天插入数千条数据

最近,我想每天把这些数据从dynamoDb拿到本地硬盘上。我写了一个小程序来使用扫描操作来保存它们。数据的总大小不是很大,大约为10G,但扫描过程中的时间成本几乎是每天5小时。当然,考虑到费用,我没有设置更大的阅读量


我的问题是:是否有一种方法可以增量扫描这些数据,这意味着我只需要复制新插入的数据,而不需要复制整个数据库。我曾经尝试将
与ExclusiveStartKey一起使用,但它找不到新插入的数据,这可能是因为
lastKeyEvaluated
只描述了特定段的最后一个键。

您可以在表上创建LSI,然后使用

默认情况下为true,它将按加入顺序给出结果如果您希望按降序排列,您可以使用“ScanIndexForward”=>false

例如

您将在递减模型中得到结果

如果您想要前50条记录,那么您还可以设置如下限制

'limit' => Number;

希望它能对您有所帮助。

Scan
查看整个表格。如果只想对新项进行某种查询,则需要以这种方式对数据建模。如果您只关心新的更新,您可能需要查看和。好的,谢谢。我已经为每个数据段添加了一个时间戳字段,并每天在配置单元中查询新插入的数据。扫描会保持一些顺序吗?看起来数据被插入到不同的段中,扫描收集这些段中的每条记录,并输出到客户端。
'limit' => Number;