如何使用DynamoDB流维护重复的数据一致性?

时间:2019-07-04 17:04:51

标签: amazon-dynamodb amazon-dynamodb-streams

据我了解,DynamoDB流的一种使用案例是维护/更新重复的数据。

假设我有一个User对象,并且其name属性被复制到许多Invoice对象中。

User编辑/更新其名称时,我将使用DynamoDb Streams使用lambda,然后使用其新名称更新与此用户相关的所有Invoices

可能有成千上万个与此用户相关的Invoices,所以此更新可能要花一些时间,特别是因为我想执行一个限速的batch_write,以便此操作不会限制我的表。

问题是:我的(网络)应用程序如何知道lambda已完成更新?例如,我想使用该应用程序向客户端显示加载屏幕,直到完成重复的数据更新为止,这样他就不会在浏览器中看到任何过时的信息。

或者还有其他方法可以快速处理数千个重复数据的更新吗?

2 个答案:

答案 0 :(得分:0)

发票可以保留对User对象的引用,而不是存储确切名称,并且可以在生成/打印时获取名称

答案 1 :(得分:0)

为什么不捕获 Lambda 的输出。一旦所有更新都持久化到 DDB,您可以让 Lambda 返回成功状态。