我们可以编写AWS Lambda函数来查询Kinesis Streams

时间:2017-04-13 23:31:52

标签: amazon-web-services aws-lambda amazon-kinesis

我有Amazon Kinesis Streams,它包含所有点击流数据,我们想编写一个API来查询Kinesis Streams。

我的计划是创建一个API网关,调用AWS Lambda函数来查询Kinesis Streams并将其返回。

是否可以使用Lambda查询Kinesis Streams,还是应该使用Kinesis Analytics和Lambda?

3 个答案:

答案 0 :(得分:0)

您可以通过基于流的模型将AWS Kinesis与Lambda一起使用。 AWS Lambda将自行轮询kinesis流并从Kinesis获取记录数(由您配置)。

以下是更多信息:http://docs.aws.amazon.com/lambda/latest/dg/with-kinesis.html

答案 1 :(得分:0)

使用Amazon Kinesis Streams的方法不是典型的方式

正常情况是数据被发送到Kinesis流,该流保存数据24小时(但最多可配置7天)。然后,您的应用程序可以从流中提取数据并对其进行处理 - 实时更新内容或将信息存储在数据库中。事实上, Amazon Kinesis Firehose 可以自动将传入数据存储到Amazon S3,Amazon Redshift或Amazon Elasticsearch Service。

因此,流已处理而不是查询。只需将它们视为可重放队列(而不是数据库)。

或者,只要新消息到达流中,您就可以拥有Amazon Kinesis Streams trigger an AWS Lambda function。这允许近乎实时地处理传入信息。

Amazon Kinesis Streams triggering an AWS Lambda function

答案 2 :(得分:0)

使用类似Firehose的东西,然后将其发送到Elasticsearch,然后您可以使用它来查询数据。 Kinesis流就像一个临时缓冲区,用于保存数据,直到您可以对其进行其他操作,例如将其加载到数据存储中。

请参阅下面的评论,您可以将Kinesis Analytics用于您想要做的事情。