AWS Lambda 与 AWS 步骤函数

AWS Lambda vs AWS step function

我正在设计一个应用程序,其输入是每 15 分钟上传到 S3 存储桶的大型文本文件(大小范围为 1-30 GB)。它将文件分成 n 个小文件,并将这些文件复制到 3 个不同的 aws 区域中的 3 个不同的 S3 存储桶。然后 3 个加载器应用程序从各自的 s3 存储桶中读取这 n 个文件,并将数据加载到各自的 aerospike 集群中。

我正在考虑使用 AWS lambda 函数来拆分文件以及加载数据。我最近遇到了 AWS step function,它也可以根据我阅读的内容来达到目的。我不确定选择哪一个,哪个在定价方面会更便宜。感谢您的帮助。

提前致谢!

步骤函数非常擅长协调涉及多个预定义步骤的工作流。它可以很好地执行并行任务和错误处理。它主要使用Lambda函数来执行每个任务。

根据您的用例,步进函数听起来很合适。就定价而言,它在 Lambdas 之上增加了非常小的额外费用。根据您的描述,我怀疑您甚至不会注意到额外费用。您需要根据您将使用的 number of "state transitions" 对其进行评估。当然,您还必须为 Lambda 调用付费。

Lambda 和 Step 函数就像楼层和通往每一层的阶梯。你不能用一个替换另一个。

Lambda 正在计算,步骤函数将它们带到所需的步骤。

Youtube视频解释的很好:https://www.youtube.com/watch?v=Dh7h3lkpeP4

再次类比,您可以在一个楼层进行多个计算 (lambda),然后再将它传递到下一层。

其中一个例子如下图

用例: https://john.soban.ski/transcribe-customer-service-voicemails-and-alert-on-keywords.html

希望对您有所帮助。