Uma maneira comum de processar dados é retirá-los do Kafka usando um microsserviço, processá-los usando o mesmo ou potencialmente um microsserviço diferente e, em seguida, despejá-los de volta no Kafka ou em outra fila. No entanto, você pode usar o Flink emparelhado com o Kafka para fazer todos os itens acima, gerando uma solução mais confiável com menor latência, tolerância a falhas integrada e garantias de eventos.

Confluente

O Flink pode ser configurado para escutar a entrada de dados, usando um fluxo contínuo empurrar processo em vez de um processo discreto puxar. Além disso, usar o Flink em vez de um microsserviço permite aproveitar todas as precisões integradas do Flink, como exatamente uma vez semântica. O Flink tem um protocolo de commit de duas fases que permite aos desenvolvedores ter garantias de processamento de eventos exatamente uma vez de ponta a ponta, o que significa que os eventos inseridos no Kafka, por exemplo, serão processados ​​exatamente uma vez com Kafka e Flink. Observe que o tipo de microsserviço que o Flink melhor substitui é aquele relacionado ao processamento de dados, atualizando o estado da análise operacional.

Usar Kafka e Flink juntos permite mover e processar dados em tempo real e criar fluxos de dados reutilizáveis ​​e de alta qualidade. Esses recursos são essenciais para aplicações compostas de IA em tempo real, que precisam de dados confiáveis ​​e prontamente disponíveis para a tomada de decisões em tempo real. Pense no padrão de geração aumentada de recuperação (RAG), complementando qualquer modelo que usamos com contexto certo no momento e de alta qualidade para melhorar as respostas e mitigar alucinações.