问题内容 我正在尝试使用 lambda 将数据从 S3 存储桶文件夹加载到雪花表。我设置了一个 S3 触发器,其中我的文件被摄取,并在 lambda 和雪花之间形成集成,以将传入文件加
我正在尝试使用 lambda 将数据从 S3 存储桶文件夹加载到雪花表。我设置了一个 S3 触发器,其中我的文件被摄取,并在 lambda 和雪花之间形成集成,以将传入文件加载到我的 s3 到雪花表中。
问题是有 1000 个文件被提取到我的 S3 文件夹中,并且在我的雪花和 lambda 之间形成拥塞。我正在寻找一种方法,当 1000 个文件被摄取到我的 S3 存储桶时,lambda 应一次处理一个文件。加载第一个文件后,只有它按顺序处理下一个文件。例如:要么从雪花接收确认,要么在其上接收确认。
您可以将 AWS Lambda 函数配置为具有预留并发- AWS Lambda:
通过设置 Reserved Concurrency = 1
,一次只会运行一个 Lambda 函数实例。根据您的 Snowflake 配置,您可以选择将其增加到 2 或 3,以更快地处理文件,而不会压垮 Snowflake。
您还可以配置批量大小,这是传递给函数的最大事件数。如果 S3 向同一 Lambda 实例发送多个文件,您的代码可以循环遍历事件并在每次调用时处理多个文件。
我只是稍微担心,如果您创建了大量对象,并且 Lambda 函数受到并发数 1 的限制,则 S3 对 Lambda 的调用多次重试后可能会导致超时。如果是这样,您应该:
这样,消息将安全地排队,而不是由于大量文件积压而(可能)超时。
以上就是将数据从 S3 加载到 Snowflake,并按 1 by 1 的顺序调用 lambda的详细内容,更多请关注编程网其它相关文章!
--结束END--
本文标题: 将数据从 S3 加载到 Snowflake,并按 1 by 1 的顺序调用 lambda
本文链接: https://lsjlt.com/news/562423.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0