AWS Dynamodb TTL Stream 是否会触发单独的过期事件和已删除事件?

Does AWS Dynamodb TTL Stream fire separate expired versus deleted events?

我们想使用 AWS Dynamodb Streams 来管理订阅续订服务,如此处文档所述https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/time-to-live-ttl-streams.html

AWS 还声明 TTL 实际删除最多可能需要 48 小时。 https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/howitworks-ttl.html

如果我们在 Dynamodb 中的记录上设置 TTL 30 分钟,我们会在 30 分钟后收到过期事件,还是会在 30 分钟加上实际删除事件最多 48 小时?

没有“过期事件”...

所以您会在到期后 48 小时内的某个时间点收到实际的删除事件..

您可以通过查找

来判断删除是由 AWS 由于 TTL 过期而完成的
Records[<index>].userIdentity.type  
"Service"

Records[<index>].userIdentity.principalId  
"dynamodb.amazonaws.com"