使用AWS消耗大量第三方API数据的最佳策略?

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

我对AWS来说还很陌生,并且正在制定能够最好地支持我们正在开发的服务的特定业务需求的策略。

我们面临的挑战:

  1. [我们需要从第三方API提取非常大的数据集(数十万条记录),该API可将分页记录分成50组,最多50组;
  2. 我们需要为每个导入的记录分配两个唯一的内部键;
  3. 我们需要通过定期安排调用更新和新记录来更新导入的记录;和
  4. 及时,我们将添加来自其他来源的记录-并且需要协调(匹配,重复)来自多个来源的数据。

我们的目标是使这些数据与我们的主数据库分开,以便我们可以根据需要独立地管理和查询它。因此,我们一直在考虑的策略是:

  1. 在递归lambda函数中进行API调用(由于分页);
  2. 将调用结果作为一个或多个json文件存储在S3存储桶中;
  3. 将S3数据拉入非关系型数据库。

尽管我们在这里遇到了一些问题:

  • 鉴于初始导入将需要几个小时,因此我们的lambda会在15分钟(硬限制)后超时;
  • 将我们自己的唯一密钥分配给传入数据的最佳方法是什么(最好通过获取传入数据并将其重新格式化为我们的需求来生成一个密钥);和
  • 用来自源或第三方的更新信息来更新这些记录的最佳策略是什么?

不确定是否将其分为三个问题-但这似乎是提供完整上下文的最佳方法。

amazon-web-services amazon-s3 aws-lambda amazon-rds aws-glue
1个回答
0
投票

关于数据导入,您可以使用AWS Step Functions构建循环以顺序检索数据。看看这篇博客文章:https://read.acloud.guru/processing-an-arbitrary-number-of-jobs-with-aws-step-functions-c185c2d2608

您的其他两个问题(分配键以及随后的扩充和更新)需要更多的上下文,并且如果作为单独的问题发布,则世界可能是最好的。

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