繁体   English   中英

在 AWS Kinesis 上从外部 API 推送数据

[英]Push data from external API on AWS Kinesis

我是 AWS 生态系统的新手。 我正在构建一个(近乎)实时系统,其中数据来自外部 API。 API 每 10 秒更新一次,所以我想在新数据出现后立即使用和填充我的 Kinesis 管道。 但是,我不确定使用哪种工具。 我做了一个小的研究,我认为,我有两个选择:

  • AWS lambda 每 10 秒触发一次,并将数据放在 Kinesis 上
  • AWS StepFunction

给定用例的标准方法是什么?

AWS Step 函数由 Lambda 函数创建。 也就是说,工作流中的每一步实际上都是一个 Lambda function。 您可以将 AWS Step Functions 创建的工作流视为 Lambda 函数链。

如果您不熟悉如何创建工作流程,请参阅此 AWS 教程:

使用适用于 Java 的 AWS SDK 创建 AWS 无服务器工作流

(您可以使用任何支持的编程语言创建 Lambda function。这个恰好使用 Java)。

现在,要回答您的问题,可以使用工作流填充 Kinesis 数据 stream。 You can build a Lambda function that gathers data (using logic in your Lambda function), and then invoke the putRecord operation of Kinesis to populate the data stream. 您可以创建一个基于 CRON 表达式每 x 分钟触发一次的计划事件。

如果您确实使用 CRON 表达式,则可以使用 AWS Step Functions API 来启动工作流。 也就是说,创建另一个 Lambda function 计划每 10 分钟触发一次。 然后在此 Lambda 函数中,使用 Step Functions API 调用工作流。 现在,工作流可以使用数据填充 Kinesis 数据 stream。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM