Fra*_*ras 3 amazon-web-services amazon-dynamodb iot aws-lambda
我想处理DynamoDB表上的最新更新,并将它们保存在另一个表中.假设我从表1中不规则地放置的IoT设备获得更新,我需要使用N个最后更新来计算表2中的更新,以便与原始更新(滑动窗口的类型)同步.
DynamoDB触发器(Streams + Lambda)似乎非常适合我的需求,但我没有找到明确的定义TRIM_HORIZON.在一些文档中,我理解它是Table1中最早的数据(可以变得很大),但在其他文档中,它似乎是24小时.或者也许是流中最古老的,也就是24小时?
所以任何人都知道真相TRIM_HORIZON吗?甚至可以配置它吗?
我看到的替代方案是不使用TRIM_HORIZON,而是使用LATEST并在Table1上执行查询.但这有点打败了溪流的目的.
DynamoDB Streams中的所有数据都有24小时的生命周期.您可以检索和分析任何给定表的最近24小时活动
TRIM_HORIZON - 从最后一条(未修剪的)流记录开始读取,该记录是分片中最旧的记录.在DynamoDB Streams中,数据保留限制为24小时.年龄超过此限制的流记录可以从流中删除(修剪).
所以,如果你有一个持续处理流更新的Lambda,我建议你去LATEST.
此外,由于您"需要使用N次更新来计算Table2中的更新",因此您必须为每次更新查询Table1,以便您可以将当前更新与该设备的先前更新"合并".我不认为你也无法解决这个问题TRIM_HORIZON.
| 归档时间: |
|
| 查看次数: |
3291 次 |
| 最近记录: |