改变运动的aws lambda消费者批处理大小会导致数据丢失或重复吗

问题描述 投票:0回答:1

我有一个现有的kinesis流和多个具有不同批处理大小的lambda使用者。我想将lambda的批处理大小之一(从25更新为1000)。由于edit选项不可用,我认为有两个选项(afaik);

第一个是;

  • 从lambda控制台禁用运动。
  • 创建新的运动学触发器,设置批次大小
  • 删除残障人士。

第二个选项;

  • 从lambda控制台删除现有的运动学
  • 创建新的运动学触发器,设置批次大小

我的问题是;

  • 这些选项中的最佳实践是什么,还有更好的选择吗?
  • 在这两种情况下都不会有任何数据丢失/重复吗?
  • 如果有可能,我如何防止数据丢失或数据重复?

谢谢

amazon-web-services aws-lambda amazon-kinesis
1个回答
0
投票

查看update-event-source-mapping的CLI。

使用选项--batch-size,您可以更新建议的批次大小。

此示例将运行

aws lambda update-event-source-mapping --uuid "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE" --batch-size 8

要运行此程序,您将需要UUID,可以通过list-event-source-mappings命令检索该UUID。将Lambda的函数名称指定为参数将为您提供触发器。

通过这样做,应该不会丢失数据,并且可以编写脚本,因此很容易回滚。

© www.soinside.com 2019 - 2024. All rights reserved.