quinta-feira, 23 de abril de 2020

Apache Kafka


Apache Kafka funciona como um repositório de dados, que permite armazenar uma enorme quantidade de dados e processa este fluxo de dados em tempo real para o consumo em outras aplicações. Entretanto, não permite transações, somente a escrita e leitura dos dados.

É muito vantajoso para soluções de Big Data, analise de dados em tempo real e internet das coisas, visto que promove essa capacidade de armazenar grande volume de dados e acessá-los em tempo real.

A pergunta que fica: É uma solução mais vantajosa que os bancos de dados não relacionais?

Os bancos de dados não relacionais, assim como os relacionais, possuem uma proposta um pouco diferente, pois não funcionam somente como um repositório de dados, mas também permitem o acesso ao banco através de transações, que permite realizar consultas diretamente ao banco. Diferente da ideia do apache Kafka que visa o consumo e análise dos dados em outras aplicações.
Portanto, para saber qual solução é mais vantajosa irá depender dos requisitos do problema.

Algumas trechos e fontes sobre o apache Kafka:

A Kafka foi originalmente desenvolvida no LinkedIn em 2011 e melhorou desde então. Hoje em dia, é uma plataforma inteira, permitindo que você armazene quantidades de dados absurdas redundantemente, tenha um barramento de mensagens com enorme rendimento (milhões / seg) e use o processamento de fluxo em tempo real nos dados que o atravessam de uma só vez.

Apache Kafka
Software de código aberto que funciona como barramento para streaming de mensagens. Pode criar um um feed de suas fontes de dados, organizá-los e enviá-los a um ouvinte.
O Kafka é uma solução madura e poderosa usada em produção e em grande escala. No entanto, é um tanto quanto complexa de implementar.
Então, se você tem várias fontes de dados e quer combinar tudo num data lake, por exemplo, e o tempo real não é tão importante, o Stich pode ser uma boa opção.
Agora, se você se o real time for um deal breaker, é melhor considerar o Kafka.

Essencialmente, o Kafka age como uma espécie de “sistema nervoso central”, que coleta dados de alto volume como por exemplo a atividade de usuários (clicks em um web site), logs, cotações de ações etc… e torna estes dados disponíveis como um fluxo em tempo real para o consumo por outras aplicações.
Kafka funciona em conjunto com o Apache Storm, Apache HBase e Apache Spark, criando um plataforma de análise em tempo real para streaming de dados, praticamente única.


Nenhum comentário:

Postar um comentário