本文為開發人員、架構師和決策者提供建議,說明如何整合 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 工作最多可擴充至數千個 worker。Dataflow 也支援水平自動調度資源,可視需要新增或移除 worker。
需要複雜轉換的資料管道,例如資料清理、擴充或匯總。
將 AI 和機器學習技術整合至資料管道。
加入多個資料串流,並精細控管視窗和處理延遲抵達的資料。
如要部署 Dataflow 管道,您可以執行預先建構的範本,或建立 Apache Beam 管道。如要處理常見的資料整合情境,建議執行範本。如要享有最大的彈性和控制權,或管道需要自訂邏輯,請建立 Apache Beam 管道。
使用 Managed Service for Apache Spark
Managed Service for Apache Spark 可讓您使用無伺服器或叢集式模型執行 Apache Spark 工作負載。
如果您有現有的 Spark 管道,不妨考慮搭配 Kafka 資料使用 Managed Service for Apache Spark。舉例來說,如果您有處理 Kafka 串流資料的 Spark 應用程式,並想將這個應用程式遷移至Google Cloud,Managed Service for Apache Spark 就是合適的選擇。
後續步驟
使用 Dataflow 範本:
建立 Apache Beam 管道:
如要瞭解如何整合 Spark Streaming 和 Kafka,請參閱 Apache Spark 提供的整合指南。