Ir para seção

O que é um serviço Kafka?

Copiar URL

Um serviço Kafka se refere a uma oferta de serviços de nuvem do Apache Kafka, uma plataforma de streaming de dados. 

O Apache Kafka é complexo de ser implantado em escala, especialmente em um ambiente de nuvem híbrida. É por isso que muitos usuários de streaming de dados optam por um serviço Kafka, no qual o gerenciamento e a infraestrutura do sistema são transferidos para um provedor de serviços.

O Apache Kafka é uma plataforma de fluxo de dados open source e distribuída que pode publicar, subscrever, armazenar e processar fluxos de registros em tempo real. Essa plataforma foi desenvolvida para processar fluxos de dados provenientes de diversas fontes e entregá-los a vários clientes.

Criado para lidar com grandes quantidades de dados, o Apache Kafka é uma solução adequada para aplicações empresariais. O Apache Kafka é projetado para gerenciar o streaming de dados e é rápido, escalável horizontalmente e tolerante a falhas.

O Apache Kafka é bem adequado para desafios de big data. Em muitos casos de uso de processamento de dados, como IoT e mídias sociais, os dados aumentam exponencialmente e, em pouco tempo, podem sobrecarregar uma aplicação que a empresa esteja criando com base no volume de dados atual.

Para desenvolvedores que trabalham com microserviços, o Apache Kafka é uma ótima opção ao usar integração assíncrona orientada por eventos, o que pode aumentar o uso de integração síncrona e interfaces de programação de aplicações (APIs).

O streaming de dados é o fluxo contínuo de informações em tempo real, muitas vezes representado como um registro contínuo de mudanças ou eventos que ocorreram em um conjunto de dados.

Casos de uso de streaming de dados podem envolver qualquer situação que exija uma resposta em tempo real a eventos, desde dados de transações financeiras e Internet das Coisas (IoT) até o monitoramento de pacientes hospitalares. 

O software que interage com o streaming de dados possibilita processar os dados no momento em que eles chegam, muitas vezes usando o modelo de arquitetura orientada a eventos.

Com um modelo de transmissão de eventos, os consumidores de eventos podem ler a partir de qualquer parte dele e ingressar nele a qualquer momento. Um evento básico de streaming de dados inclui uma chave, um valor e um carimbo de data e hora. Uma plataforma de streaming de dados ingere eventos e processos ou transforma o fluxo de eventos. E o processamento de fluxo de eventos pode ser usado para encontrar padrões em fluxos de dados.

Por todos os seus benefícios, o Apache Kafka pode ser difícil de ser implantado em escala em um ambiente de nuvem híbrida. Os serviços de streaming de dados podem ter requisitos mais rigorosos do que outras aplicações de dados. 

Os fluxos de dados devem enviar informações sequenciadas em tempo real e devem ser consistentes e altamente disponíveis. A quantidade de dados brutos em um fluxo pode aumentar rapidamente. Os fluxos precisam priorizar o sequenciamento adequado, a consistência e a disponibilidade dos dados, mesmo em momentos de alta atividade. Eles também devem ser projetados para durabilidade no caso de uma falha parcial do sistema.

Em um ambiente de nuvem híbrida distribuída, um cluster de streaming de dados tem requisitos especiais. Os brokers de dados do Apache Kafka são stateful e devem ser preservados no caso de um reinício. A escalabilidade requer uma orquestração cuidadosa para garantir que os serviços de mensageria se comportem como esperado e que nenhum registro seja perdido.

Esses desafios são a razão pela qual muitos usuários do Apache Kafka optam por um serviço gerenciado de nuvem, no qual o gerenciamento de infraestrutura e sistema são transferidos para um provedor de serviços.

Alguns dos benefícios obtidos com o uso de um serviço Kafka incluem:

  • As equipes podem se concentrar no desenvolvimento de aplicações e outras competências essenciais, já que o gerenciamento da infraestrutura é realizado por prestadores de serviços.
  • Maior velocidade de aplicação, pois as equipes podem começar a se desenvolver imediatamente e implementar novas tecnologias de forma rápida.
  • Um grande ecossistema de serviços adicionais em nuvem, que também pode simplificar a entrega de aplicações baseadas em fluxos.
  • Conectores que vinculam os brokers do Kafka a serviços distribuídos, facilitando o consumo e o compartilhamento de streaming de dados entre aplicações e sistemas.
  • Preços baseados no consumo, permitindo que os clientes paguem pelo que precisam e quando precisam.

Quando executados em uma plataforma gerenciada do Kubernetes, os clusters do Apache Kafka podem ser distribuídos em ambientes locais e em nuvens públicas, privadas ou públicas, além de utilizar sistemas operacionais diferentes.
 

Teste o Kafta gratuitamente

Acesse o Red Hat OpenShift Streams for Apache Kafka, um serviço totalmente hospedado e gerenciado pelo Kafka para aplicações baseadas em stream.

Keep reading

Artigo

O que é integração?

Quer saber o que é integração? Descubra o que é, como incorporá-la e por que ela é muito melhor com tecnologias open source.

Artigo

O que é Apache Kafka?

O Apache Kafka é uma plataforma distribuída de transmissão de dados que é capaz de publicar, subscrever, armazenar e processar fluxos de registro em tempo real.

Artigo

O que é uma API?

API significa interface de programação de aplicações, um conjunto de definições e protocolos para criar e integrar softwares de aplicações.

Leia mais sobre integração

Soluções Red Hat

Red Hat Integration

Conjunto abrangente de tecnologias para integração e mensageria.

Red Hat Cloud Services

Plataforma gerenciada e hospedada, aplicações e data services que otimizam a experiência da nuvem híbrida, reduzindo os custos e a complexidade operacionais de aplicações nativas em nuvem.

Red Hat Runtimes

Conjunto de soluções, ferramentas e componentes para desenvolvimento e manutenção de aplicações nativas em nuvem.

Red Hat Process Automation

Conjunto de soluções para automatizar decisões e processos empresariais de maneira inteligente.

Conteúdo adicional

Ebook

Integração ágil

Crie uma infraestrutura ágil para viabilizar uma organização adaptável.

Relatório de analistas

Red Hat Integration

Red Hat Integration ajuda a otimizar o desempenho das aplicações.

Visão geral

Red Hat Cloud Services

Serviços gerenciados para desenvolvimento nativo em nuvem.

Treinamento

Treinamento gratuito

Red Hat Agile Integration Technical Overview

Illustration - mail

Quer receber mais conteúdo deste tipo?

Cadastre-se para receber a nossa newsletter Red Hat Shares.