1

我有一个 Lambda,它被配置为 Kinesis 数据流的消费者,批量大小为 10,000(最大)。lambda 解析给定记录并将它们插入到 Aurora Postgresql(使用INSERT命令)。

不知何故,我看到大多数时候调用 lambda 时记录的数量相对较少(少于 200 条),尽管“IteratorAge”一直很高(大约 60 秒)。记录使用随机分区键(生成为 uuid4)放入流中,大小为

这怎么解释?据我了解,如果分片不为空,则应轮询所有当前记录,直至配置的批量大小。

我假设如果以更大的批次调用 Lambda,则可以防止这种延迟。

注意:还有一个 Kinesis Firehose 配置为消费者(似乎没有任何问题)。

4

1 回答 1

0

发现Kinesis的迭代器年龄为 0毫秒,因此这种行为是有道理的。Lambda的迭代器时代有点不同:

测量每批处理的记录的最后一条记录的年龄。年龄是 Lambda 收到批次的时间与批次中最后一条记录写入流的时间之间的差。

于 2018-12-06T09:01:42.000 回答