Apache Kafka é uma plataforma distribuída de streaming de eventos de código aberto, usada por milhares de empresas para pipelines de dados de alto desempenho, análises em streaming, integração de dados e aplicações de missão crítica. O ClickHouse oferece várias opções para ler dados do e gravar dados no Kafka e em outros brokers compatíveis com a API do Kafka (por exemplo, Redpanda, Amazon MSK).
Opções disponíveis
Escolher a opção mais adequada ao seu caso de uso depende de vários fatores, incluindo o tipo de implantação do ClickHouse, a direção do fluxo de dados e os requisitos operacionais.
| Opção | Tipo de implantação | Totalmente gerenciado | Kafka para ClickHouse | ClickHouse para Kafka |
|---|---|---|---|---|
| ClickPipes for Kafka | Cloud, BYOC (em breve!) | ✅ | ✅ | |
| Kafka Connect Sink | Cloud, BYOC, [Autogerenciado] | ✅ | ||
| engine de tabela Kafka | Cloud, BYOC, [Autogerenciado] | ✅ | ✅ |
Para ver uma comparação mais detalhada entre essas opções, consulte Escolhendo uma opção.
ClickPipes for Kafka
ClickPipes é uma plataforma de integração gerenciada que torna a ingestão de dados de um conjunto diversificado de fontes tão simples quanto clicar em alguns botões. Por ser totalmente gerenciada e voltada para workloads de produção, a ClickPipes reduz significativamente os custos de infraestrutura e de operação, eliminando a necessidade de ferramentas externas de streaming de dados e ETL.
Principais recursos
- Otimizado para ClickHouse Cloud, oferecendo desempenho altíssimo
- Escalabilidade horizontal e vertical para workloads de alta taxa de transferência
- Tolerância a falhas integrada, com réplicas configuráveis e novas tentativas automáticas
- Implantação e gerenciamento por meio da UI do ClickHouse Cloud, da Open API ou do Terraform
- Segurança de nível empresarial com suporte a autorização cloud-native (IAM) e conectividade privada (PrivateLink)
- Oferece suporte a uma ampla variedade de fontes de dados, incluindo Confluent Cloud, Amazon MSK, Redpanda Cloud e Azure Event Hubs
- Oferece suporte aos formatos de serialização mais comuns (JSON, Avro, Protobuf)
Primeiros passos
Para começar a usar o ClickPipes for Kafka, consulte a documentação de referência ou vá para a aba Data Sources na UI do ClickHouse Cloud.
Kafka Connect Sink
Kafka Connect é um framework open source que funciona como um hub centralizado para a integração simples de dados entre o Kafka e outros sistemas de dados. O conector ClickHouse Kafka Connect Sink oferece uma opção escalável e altamente configurável para ler dados do Apache Kafka e de outros brokers compatíveis com a API do Kafka.
Principais funcionalidades
- Pode ser configurado para oferecer a semântica exactly-once
- Suporta os formatos de serialização mais comuns (JSON, Avro, Protobuf)
- Testado continuamente com o ClickHouse Cloud
Primeiros passos
Para começar a usar o ClickHouse Kafka Connect Sink, consulte a documentação de referência.
Engine de tabela Kafka
O engine de tabela Kafka pode ser usado para ler dados do Apache Kafka e gravar dados no Apache Kafka e em outros brokers compatíveis com a API do Kafka. Essa opção já vem incluída no ClickHouse de código aberto e está disponível em todos os tipos de implantação.
Principais recursos
- Pode ser usado para ler e gravar dados
- Incluído na versão open source do ClickHouse
- Suporta os formatos de serialização mais comuns (JSON, Avro, Protobuf)
Primeiros passos
Para começar a usar o engine de tabela Kafka, consulte a documentação de referência.
Como escolher uma opção
| Produto | Pontos fortes | Pontos fracos |
|---|---|---|
| ClickPipes for Kafka | • Arquitetura escalável para alta vazão e baixa latência • Monitoramento e gerenciamento de esquema integrados • Conexões de rede privadas (via PrivateLink) • Suporta autenticação SSL/TLS e autorização IAM • Suporta configuração programática (Terraform, endpoints de API) |
• Não oferece suporte a enviar dados para o Kafka • Semântica at-least-once |
| Kafka Connect Sink | • Semântica exactly-once • Permite controle granular sobre transformação de dados, agrupamento em lotes e tratamento de erros • Pode ser implantado em redes privadas • Permite replicação em tempo real de bancos de dados ainda não compatíveis com o ClickPipes via Debezium |
• Não oferece suporte a enviar dados para o Kafka • É operacionalmente complexo de configurar e manter • Requer experiência com Kafka e Kafka Connect |
| engine de tabela Kafka | • Suporta enviar dados para o Kafka • É operacionalmente simples de configurar |
• Semântica at-least-once • Escalabilidade horizontal limitada para consumidores. Não pode ser escalado independentemente do servidor ClickHouse • Opções limitadas de tratamento de erros e depuração • Requer experiência com Kafka |
Outras opções
-
Confluent Cloud - A Confluent Platform oferece a opção de fazer upload e executar o ClickHouse Connector Sink no Confluent Cloud ou usar o HTTP Sink Connector for Confluent Platform, que integra o Apache Kafka a uma API via HTTP ou HTTPS.
-
Vector - O Vector é um pipeline de dados independente de fornecedor. Com a capacidade de ler dados do Kafka e enviar eventos ao ClickHouse, ele representa uma opção de integração robusta.
-
JDBC Connect Sink - O conector Kafka Connect JDBC Sink permite exportar dados de tópicos do Kafka para qualquer banco de dados relacional com um driver JDBC.
-
Código personalizado - O uso de código personalizado com Kafka e bibliotecas de cliente do ClickHouse pode ser apropriado quando for necessário processar eventos de forma personalizada.