DynamoDB Streams 和 Amazon Lambda 触发器 - Amazon DynamoDB
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

DynamoDB Streams 和 Amazon Lambda 触发器

Amazon DynamoDB 与 Amazon Lambda 集成,使您能够创建触发器,自动响应 DynamoDB Streams 中的事件的代码片段。利用触发器,您可以创建应对 DynamoDB 表中的数据修改的应用程序。

如果您在表中启用 DynamoDB Streams,则可以将流 Amazon Resource Name (ARN) 与您编写的 Amazon Lambda 函数关联起来。在修改表中的项目之后,表的流中都将出现一条新记录。Amazon Lambda 将轮询流并在检测到新的流记录时同步调用 Lambda 函数。

Lambda 函数可以执行您指定的任何操作,例如发送通知或启动工作流。例如,您可以编写一个仅将每个流记录复制到持久性存储(Amazon Simple Storage Service (Amazon S3))的 Lambda 函数,以在您的表中创建编写活动的永久审核跟踪。或者,假设您有一个写入到 GameScores 表的移动游戏应用程序。每当更新 TopScore 表的 GameScores 属性时,一个相应的流记录将被写入该表的流。然后,此事件会触发一个 Lambda 函数,该函数会在社交媒体网络上发布一条祝贺消息。(该函数简单地忽略任何不是针对 GameScores 的更新或不修改 TopScore 属性的流记录。)

如果您的函数返回错误,则 Lambda 将重试批处理,直到它成功处理或数据过期。还可以将 Lambda 配置为以较小批处理进行重试、限制重试次数、在记录变得过旧时丢弃以及其它选项。

有关 Amazon Lambda 的更多信息,请参阅《Amazon Lambda 开发人员指南》https://docs.amazonaws.cn/lambda/latest/dg/