将 100 个新文件添加到 s3 后的 AWS 触发器

AWS Trigger after 100 new files are added to s3

我想要一个触发器来启动胶水作业,在 100 个新文件(自上次触发器被触发后的新文件)添加到 s3 后一次。如何实现?

您可以为 S3 存储桶中的对象创建添加事件:

S3 存储桶 -> 属性 -> 事件通知

现在,这会为创建的每个对象执行一个事件。它不能每 100 次执行一次。因此,要解决这个问题,您可以执行以下操作:

  1. 创建 DynamoDB table,它将使用 on-demand 容量模式。在那个 table 中,只使用 1 个对象,它将具有字段 ID 和计数。
  2. 创建将在从 S3 存储桶创建对象时调用的 Lambda 函数。您要做的是检查 DynamoDB 中的计数。如果小于 99,则增加计数。如果是 99,则重置为 0 并触发胶水作业(因为此加法将为 100)。