View a markdown version of this page

将数据传输到 Amazon S3 通用存储桶 - Amazon Managed Streaming for Apache Kafka

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

将数据传输到 Amazon S3 通用存储桶

借助 Amazon MSK 数据交付,您可以将源格式的 Apache Kafka 数据传输到 Amazon S3 通用存储桶进行下游处理,为任务关键型工作负载提供端到端的可靠性。使用它将 Kafka 数据放入 Amazon S3,用于日志存档、合规性保留、Kafka 回放和训练模型等用例。 AI/ML 这种方法消除了建立自我管理的连接器管道的需求,随着工作负载的扩展,这些管道的成本和操作也会变得越来越复杂。

整合

  • 亚马逊 MSK Express 经纪商 — 数据来源。

  • 亚马逊 S3 — 通用对象目的地。

  • 亚马逊 CloudWatch -指标和操作日志。

  • AWS CloudTrail— API 审计日志。

  • AWS KMS— 可选的客户管理的静态加密。

常见使用案例

  • 将 Kafka 主题数据存档到 S3 以进行存储、重放或下游批处理。

  • 在不增加经纪人负荷的情况下,将单个话题分散到多个目的地。

有关 API 规范 CreateChannelDescribeChannel,请参阅亚马逊 MSK API 参考ListChannels中的UpdateChannelDeleteChannel、、、和。

数据流

下图显示了记录如何从亚马逊 MSK Express 代理主题通过数据传送渠道流向您的目的地,将无法处理的记录路由到死信队列。

数据从亚马逊 MSK Express 代理主题通过数据传输渠道流向通用的 Amazon S3 存储桶,不可处理的记录会路由到死信队列。

优势

  • 无需管理基础架构 -没有连接器或计算集群。您配置一个频道,该服务将处理交付、扩展和容错问题。

  • 不影响经纪商 — 渠道在不消耗代理吞吐量或影响生产者和消费者工作负载的情况下读取主题。

  • 随数据扩展 -支持高达 10 Gbps 的数据传输吞吐量,无需手动扩展。

  • 几分钟内的数据新鲜度 — 交付的数据可在针对该主题生成后的 5 到 15 分钟内进行查询或处理。

  • Built-in 错误处理 — 无法处理的记录会被路由到带有错误上下文的死信队列,因此传送可以不间断地继续。

工作原理

要将数据传输到通用 S3 存储桶,您需要创建一个频道。您在使用 Express 代理的 Amazon MSK 预置集群上创建频道。该频道从 Kafka 主题读取记录并将其传送到配置的目的地。

对于 Amazon S3 通用存储桶,该频道使用可配置的输出密钥模板将记录(JSON 或字符串)作为对象写入通用的 S3 存储桶。 ByteArray

无法处理的记录将路由到所需的死信队列 (DLQ) S3 存储桶。

注意

渠道不会回填先前生成的数据,只能回填启用后生成的数据。

要求和支持的配置

  • 带有 Express 代理的 Amazon MSK 预置集群。不支持标准经纪人和亚马逊 MSK 服务器。

  • 至少一个 Kafka 主题。

  • 死信队列 (DLQ) 的 Amazon S3 存储桶。这是必需的

  • 渠道为交付数据而承担的 IAM 服务角色。

  • 数据新鲜度配置在 5 到 15 分钟之间。

  • JSON 字符串格式的主题数据。 ByteArray

  • 用于交付的通用 Amazon S3 存储桶。