首页 > 解决方案 > 直接从 Lambda 调用 Kinesis Firehose 与 Kinesis Stream

问题描述

我需要将一些数据从 lambda 推送到 S3。传入 Lambda 的数据来自 Dynamodb 流。因为,对于推送到 S3 存储桶,使用 Firehose 被认为是最好的,因为它在推送到 S3 之前对数据进行批处理和缓冲,并提供重试策略。所以,我使用 Firehose 而不是直接推送到 S3。

但我观察到很多人将数据从 Lambda 推送到 Kinesis Stream,然后再将数据推送到 Kinesis Firehose,而不是直接从 AWS Lambda 推送到 Firehose。这样做有什么理由吗?有什么好处吗?直接推送到 Kinesis firehose 有什么缺点?

标签: amazon-web-servicesamazon-s3aws-lambdaamazon-kinesis-firehoseamazon-kinesis

解决方案


如果Amazon Kinesis Data Firehose满足您的需求,那么一定要使用它!与普通的 Kinesis Streams 相比,它会为您处理大部分工作。

唯一使用 Firehose的情况是当您有不同的目的地(例如,您想要处理 Amazon EC2 实例上的数据)或者您想要更多地控制流和分片(例如,处理特定分片上的某些生产者以保留排序在每个分片的基础上)。


推荐阅读