A estrutura do Apache Kafka e do Kafka Connect¶
Este tópico descreve os conceitos básicos da estrutura do Apache Kafka e do Kafka Connect.
O software Apache Kafka usa um modelo de publicação e assinatura para escrever e gravar fluxos de registros, semelhante a uma fila de mensagens ou sistema de mensagens empresariais. O Kafka permite que os processos leiam e gravem mensagens de forma assíncrona. Um assinante não precisa estar conectado diretamente a um editor. Uma editora pode colocar uma mensagem na fila no Kafka para que o assinante a receba mais tarde.
Um aplicativo publica mensagens para um tópico, e um aplicativo assina um tópico para receber essas mensagens.
O Kafka Connect é uma estrutura para conectar o Kafka a sistemas externos, incluindo bancos de dados. Um cluster Kafka Connect é um cluster separado do cluster Kafka. O cluster Kafka Connect oferece suporte para executar e dimensionar conectores (componentes que permitem a leitura e/ou gravação em sistemas externos).
O Kafka Connect pode ser usado com dois tipos de conectores:
Conectores de origem: importe dados de sistemas externos para tópicos do Kafka.
Conectores do tipo coletor: exporte dados de tópicos do Kafka para sistemas externos.
O conector Snowflake de alto desempenho para Kafka é um conector do tipo coletor que lê dados de tópicos do Kafka e os carrega nas tabelas do Snowflake.
O Kafka Connect resolve questões operacionais comuns, como:
Escalabilidade: o Kafka Connect pode ser dimensionado horizontalmente adicionando mais nós de trabalho ao cluster.
Tolerância a falhas: se um nó de trabalhador falhar, o Kafka Connect redistribui automaticamente o trabalho para outros nós disponíveis.
Gerenciamento de deslocamento: o Kafka Connect rastreia quais registros foram processados, garantindo que os dados não sejam perdidos ou duplicados em caso de falhas.
Gerenciamento de configuração: os conectores podem ser configurados e gerenciados por meio de uma API REST, facilitando a implantação e o monitoramento de pipelines de dados.