从 AWS 中的外部 API 收集大量数据

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

我正在 AWS 中创建一个无服务器应用程序,需要将通过外部 API 收集的一些数据存储到 DynamoDB 实例中。

我试图通过 Lambda 函数来实现它,但是数据非常重,所以每次我尝试对它们执行一些数据操作时,即使我的超时时间设置为几分钟(如果我在我的计算机上运行相同的脚本,执行时间不到 10 秒)。 我尝试收集数据并仅使用

json.loads()
处理它们,但仍然出现超时错误。

浏览互联网,我发现有相当多的方法可以从 AWS 中的外部 API 端点提取数据,例如 Glue 或 AppFlow。

我的问题是:

  1. 对于此类任务使用 Lambda 是一个不错的选择吗?
  2. 什么可能导致我的“超时”问题?
  3. 您是否建议更好的替代方案来完成这项任务?

提前谢谢您

amazon-web-services aws-lambda amazon-dynamodb aws-glue amazon-appflow
1个回答
0
投票

我的问题是:

对于此类任务使用 Lambda 是一个不错的选择吗?

Lambda 的最大超时时间为 15 分钟。如果您的工作可能需要超过 15 分钟,那么您可以尝试以下几种方法:

  1. 增加您的 Lambda 内存
  2. 将工作分配给多个 Lambda

什么可能导致我的“超时”问题?

确保任务没有陷入循环,使用足够的日志记录。增加 Lambda 内存,Lambda 应该能够匹配你本地机器的时间。

您是否建议更好的替代方案来完成这项任务?

这要看情况,如果数据量很大(GB+)那么我建议使用AWS Glue。

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