Este documento aconselha desenvolvedores, arquitetos e tomadores de decisões sobre opções de integração do Serviço Gerenciado para Apache Kafka com outros serviços do Google Cloud.
A tabela a seguir lista alguns fatores a serem considerados ao escolher uma solução de integração para seus dados do Kafka no Google Cloud.
| Solução | Casos de uso |
|---|---|
| Kafka Connect |
Tarefas comuns de integração de dados Replicar dados do Kafka entre clusters Alta disponibilidade/recuperação de desastres |
| Dataflow |
Pipelines de dados de alto volume Transformações ou agregações de dados complexas Janelas avançadas |
| Serviço Gerenciado para Apache Spark |
Integrar com cargas de trabalho do Apache Spark Migrar cargas de trabalho do Apache Spark para o Google Cloud |
Usar o Kafka Connect
O Kafka Connect fornece uma estrutura para streaming de dados entre o Kafka e outros sistemas. Com o Serviço Gerenciado para Apache Kafka, é possível provisionar clusters que executam o Kafka Connect.
O Kafka Connect é recomendado para as tarefas de integração de dados mais comuns que têm um conector compatível. O Kafka Connect com o MirrorMaker 2.0 é recomendado para replicar dados entre clusters do Kafka, por exemplo, em arquiteturas de alta disponibilidade e recuperação de desastres (HA/DR).
As vantagens de usar o Kafka Connect incluem:
Conectores integrados para origens e destinos, como BigQuery, Cloud SQL e Cloud Storage.
Totalmente integrado ao Serviço gerenciado para Apache Kafka, o que simplifica o gerenciamento, as operações e o monitoramento.
Suporte a filtragem e transformações por mensagem.
Usar o Dataflow
O Dataflow é uma plataforma de streaming gerenciada criada com base no projeto de código aberto Apache Beam. É possível executar pipelines do Dataflow para gravar dados do Kafka em receptores como o BigQuery e o Cloud Storage.
Considere usar o Dataflow nos seguintes cenários:
Pipelines de dados de alto volume. Os jobs do Dataflow podem ser escalonar verticalmente para milhares de workers. O Dataflow também oferece suporte ao escalonamento automático horizontal, adicionando ou removendo workers conforme necessário.
Data pipelines que exigem transformações complexas, como limpeza de dados, enriquecimento ou agregação.
Integrar IA e ML ao pipeline de dados.
Unir vários fluxos de dados com controle refinado sobre janelamento e processamento de dados atrasados.
Para implantar um pipeline do Dataflow, execute um modelo pré-criado ou crie um pipeline do Apache Beam. Para cenários comuns de integração de dados, considere executar um modelo. Para ter o máximo de flexibilidade e controle ou se o pipeline exigir uma lógica personalizada, crie um pipeline do Apache Beam.
Usar o Serviço Gerenciado para Apache Spark
Com o Serviço Gerenciado para Apache Spark, é possível executar cargas de trabalho do Apache Spark usando um modelo sem servidor ou baseado em cluster.
Considere usar o Serviço Gerenciado para Apache Spark com seus dados do Kafka se você tiver pipelines do Spark. Por exemplo, se você tiver um aplicativo Spark que processa dados de streaming do Kafka e quiser migrar esse aplicativo para oGoogle Cloud, o Serviço Gerenciado para Apache Spark será uma boa opção.
A seguir
Saiba mais sobre o Kafka Connect no Serviço Gerenciado para Apache Kafka.
Use um modelo do Dataflow:
Crie um pipeline do Apache Beam:
Para o Spark Streaming e o Kafka, o Apache Spark oferece um guia de integração.