[英]How do I trigger a AWS lambda function only if bulk upload finished on S3?
我们在下面有一个简单的 ETL 设置
这在大多数情况下都可以正常工作,但在某些情况下,我们的供应商可能会在短时间内连续上传文件,例如在刷新历史数据时。 这将导致问题,因为胶水爬虫无法同时运行并且作业将失败。
我想知道我们是否可以做些什么来避免潜在的错误。 我研究了SQS
,但不确定这是否对我有帮助,以下是我想要实现的目标:
这对 S3 和 SQS 可行吗?
SQS举办活动,
是的,您可以这样做,因为您可以将SQS 延迟设置为最多 15 分钟。
等到在给定的时间段内没有其他后续事件,比如 5 分钟。
不,没有自动化的方法。 您必须开发自己的定制解决方案。 最简单的方法是不将 SQS 与 lambda 捆绑在一起,而是让 lambda 按计划运行(例如每 5 分钟一次)。 Lambda 必须有逻辑来确定一段时间后是否没有新文件上传,然后触发您的 Glue 作业。 这可能会涉及到 DynamoDB 来跟踪 lambda 执行之间最后上传的文件。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.