有没有办法将Amazon MSK Topic直接转储到S3?

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

我计划使用 Amazon MSK,并且想将消费者日志转储到 S3。但我没有看到任何选择。我是否需要编写自己的消费者,或者有没有办法直接将 Amazon MSK 消费者输出消费到 s3?

apache-kafka apache-kafka-connect aws-msk
3个回答
5
投票

Kafka Connect 通常是在 Kafka 和下游(和上游)系统(例如 S3)之间获取数据的最佳(最简单/可扩展/可移植/弹性)方式。了解有关Kafka Connect 的更多信息以及本次演讲

MSK Connect 可以在 AWS 上为您的 MSK 运行 Kafka Connect 工作负载。

您的另一个选择是运行您自己的 Kafka Connect 工作线程(连接到 MSK)并使用 S3 接收器连接器教程)。


3
投票

MSK 没有直接的方法可以做到这一点。您可以使用外部使用者来执行此操作,或者最好在与 MSK 位于同一 VPC 内的 EC2 中使用 KafkaConnect

无论哪种方式,您都需要考虑高可用性和数据传输成本。对于HA,使用不同AZ中的消费者。对于成本,请使用 MSK 2.4.1,它允许消费者从最近的副本获取数据。


0
投票

是的,Amazon MSK 现在支持在 2023 年 9 月 27 日之前使用 Kinesis Data Firehose 将完全托管的数据传输到 Amazon S3。

Amazon Kinesis Data Firehose 现在与 Amazon MSK 集成,提供完全托管的解决方案,简化了将流数据从 Amazon MSK Apache Kafka 集群处理和传输到存储在 Amazon S3 上的数据湖的过程。只需单击几下,Amazon MSK 客户就可以将数据从所需的 Apache Kafka 集群持续加载到 Amazon S3 存储桶,无需开发或运行自己的连接器应用程序

有趣的是,它还支持使用 lambda 和输出格式以及 Apache Parquet 和 Apache ORC 进行数据转换

我们之前使用连接器,产生了大量成本。然而,我们现在正在过渡到 Kinesis,因为根据我们的初步估计,它似乎是连接器更具成本效益的替代方案。

亚马逊-msk-data-s3-kinesis-data-firehose

https://docs.aws.amazon.com/firehose/latest/dev/writing-with-msk.html

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