DynamoDB 有触发器吗?

有。DynamoDB 触发器由 DynamoDB Streams 加 AWS Lambda 构成:流捕获每一次项目级变更,订阅该流的 Lambda 函数会自动响应运行。不存在 CREATE TRIGGER 语句——触发器代码位于 Lambda 中,在数据库之外。

触发器如何工作

你在表上启用 DynamoDB Streams,然后将流的 ARN 与一个 Lambda 函数关联。每次创建、更新和删除都会被捕获为一条流记录;Lambda 服务每秒轮询流四次,并以成批的新记录同步调用你的函数。你还可以过滤事件,让函数只针对你关心的变更运行。

触发器用于什么

经典用途:在某个值变化时发送通知、启动工作流、维护聚合值和计数器,以及将每次变更复制到持久化存储(如 S3)以形成永久的审计轨迹。如果函数出错,Lambda 会重试该批次,直到成功或记录过期,重试和批处理行为均可配置。

值得了解的限制

AWS 建议一个流最多订阅两个 Lambda 函数——更多可能导致读取限流。触发器函数应短小快速;对于繁重的处理,应交给异步工作流,而不要内联运行冗长的逻辑。

深入了解

先从 DynamoDB Streams 指南了解流模型本身,用表达式构建器构造触发器所响应的写入,并下载 DynoTable 观察为你的流供数的项目变更。

参考资料

最后核实于 2026-07-13,依据上方所链接的 AWS 官方文档。

无需控制台即可使用 DynamoDB

DynoTable 是面向 DynamoDB 的快速桌面客户端 —— 浏览表、运行 SQL 风格的查询,并在本地编辑项。