将 Managed Service for Apache Kafka 与其他 Google Cloud 服务集成

本文档旨在为开发者、架构师和决策者提供有关将 Managed Service for Apache Kafka 与其他 Google Cloud服务集成的选项。

下表列出了一些在 Google Cloud中为 Kafka 数据选择集成解决方案时需要考虑的因素。

解决方案使用场景
Kafka Connect

常见的数据集成任务

在集群之间复制 Kafka 数据

高可用性/灾难恢复

Dataflow

高容量数据流水线

复杂的数据转换或数据汇总

高级窗口化

Managed Service for Apache Spark

与现有的 Apache Spark 工作负载集成

将 Apache Spark 工作负载迁移到 Google Cloud

使用 Kafka Connect

Kafka Connect 提供了一个框架,用于在 Kafka 和其他系统之间流式传输数据。借助 Managed Service for Apache Kafka,您可以预配运行 Kafka Connect 的集群。

对于有受支持的连接器的大多数常见数据集成任务,建议使用 Kafka Connect。 建议使用 Kafka Connect 和 MirrorMaker 2.0 在 Kafka 集群之间复制数据,例如在高可用性和灾难恢复 (HA/DR) 架构中。

使用 Kafka Connect 的优势包括:

  • 针对 BigQuery、Cloud SQL 和 Cloud Storage 等来源和接收器的内置连接器。

  • 完全集成到 Managed Service for Apache Kafka 中,可简化管理、运营和监控。

  • 支持过滤和单条消息转换。

使用 Dataflow

Dataflow 是一种基于开源 Apache Beam 项目构建的托管式流式平台。您可以运行 Dataflow 流水线,将 Kafka 数据写入 BigQuery 和 Cloud Storage 等接收器。

在以下场景中,请考虑使用 Dataflow:

  • 高流量数据流水线。Dataflow 作业最多可扩容到数千个工作器。Dataflow 还支持横向自动扩缩,可根据需要添加或移除工作器。

  • 需要复杂转换(例如数据清理、丰富或聚合)的 Data Pipelines。

  • 将 AI 和机器学习集成到数据流水线中。

  • 联接多个数据流,并对窗口化和延迟到达的数据处理进行精细控制。

如需部署 Dataflow 流水线,您可以运行预建的模板或创建 Apache Beam 流水线。对于常见的数据集成场景,请考虑运行模板。如需最大限度地提高灵活性和控制力,或者您的流水线需要自定义逻辑,请创建 Apache Beam 流水线。

使用 Managed Service for Apache Spark

借助 Managed Service for Apache Spark,您可以使用无服务器模型或基于集群的模型来运行 Apache Spark 工作负载。

如果您有现有的 Spark 流水线,不妨考虑将 Managed Service for Apache Spark 与 Kafka 数据搭配使用。例如,如果您有一个 Spark 应用可以处理来自 Kafka 的流式数据,并且您想将此应用迁移到Google Cloud,那么 Managed Service for Apache Spark 是一个合适的选择。

后续步骤

Apache Kafka® 是 Apache Software Foundation 或其关联公司在美国和/或其他国家/地区的注册商标。