Hubs de Eventos do Azure – Uma plataforma de streaming de dados em tempo real com suporte nativo do Apache Kafka

Os Hubs de Eventos do Azure são um serviço de streaming de dados nativo de nuvem que pode transmitir milhões de eventos por segundo, com baixa latência, de qualquer fonte para qualquer destino. Os Hubs de Eventos são compatíveis com o Apache Kafka e permitem executar cargas de trabalho existentes do Kafka sem nenhuma alteração de código.

Usando os Hubs de Eventos para ingerir e armazenar dados de streaming, as empresas podem aproveitar o poder dos dados de streaming para obter insights valiosos, impulsionar a análise em tempo real e responder a eventos à medida que eles acontecem, aumentando a eficiência geral e a experiência do cliente.

Diagram that shows how Azure Event Hubs fits in an event streaming platform.

Os Hubs de Eventos do Azure são a camada preferencial de ingestão de eventos de qualquer solução de streaming de eventos que você cria no Azure. Eles se integram perfeitamente aos serviços de análise e dados dentro e fora do Azure para criar seu pipeline completo de streaming de dados para atender aos casos de uso a seguir.

Principais recursos

Apache Kafka no Hubs de Eventos do Azure

Os Hubs de Eventos do Azure são um mecanismo de streaming de eventos de vários protocolos que dá suporte nativo aos protocolos AMQP, Apache Kafka e HTTPs. Como ele dá suporte ao Apache Kafka, você leva as cargas de trabalho do Kafka para os Hubs de Eventos do Azure sem fazer nenhuma alteração de código. Não é preciso instalar, configurar e gerenciar seus clusters do Kafka nem usar uma oferta de Kafka como serviço não nativa do Azure.

Os Hubs de Eventos são criados desde o início como um mecanismo de agente nativo de nuvem. Portanto, você pode executar cargas de trabalho do Kafka com melhor desempenho, melhor economia e sem sobrecarga operacional.

Para saber mais, confira Hubs de Eventos do Azure para o Apache Kafka.

Registro de Esquema nos Hubs de Eventos do Azure

O Registro de Esquema do Azure nos Hubs de Eventos fornece um repositório centralizado para gerenciar esquemas de aplicativos de streaming de eventos. O Registro de Esquema do Azure é gratuito com cada namespace dos Hubs de Eventos e se integra perfeitamente a aplicativos Kafka ou aplicativos baseados no SDK dos Hubs de Eventos.

Diagram that shows Schema Registry and Azure Event Hubs integration.

Ele garante a compatibilidade e a consistência de dados entre produtores e consumidores de eventos. O registro de esquema permite a evolução do esquema, a validação e a governança perfeitas, além de promover a troca e a interoperabilidade eficientes de dados.

O registro de esquema integra-se perfeitamente aos aplicativos Kafka existentes e dá suporte a vários formatos de esquema, incluindo os esquemas Avro e JSON.

Para saber mais, confira Registro de Esquema do Azure nos Hubs de Eventos.

Processamento em tempo real de eventos de streaming com o Azure Stream Analytics

Os Hubs de Eventos se integram perfeitamente ao Azure Stream Analytics para permitir o processamento de fluxo em tempo real. Com o editor interno sem código, você pode desenvolver com facilidade um trabalho do Stream Analytics usando a funcionalidade do tipo “arrastar e soltar”, sem nenhuma codificação.

Screenshot showing the Process data page with Enable real time insights from events tile selected.

Como alternativa, os desenvolvedores podem usar a linguagem de consulta do Stream Analytics baseada em SQL para executar o processamento de fluxo em tempo real e aproveitar uma ampla gama de funções para analisar dados de streaming.

Para obter mais informações, confira os artigos na seção de integração do Azure Stream Analytics do sumário.

Como explorar dados de streaming com o Azure Data Explorer

O Azure Data Explorer é uma plataforma totalmente gerenciada para análise de Big Data que oferece alto desempenho e permite a análise de grandes volumes de dados quase em tempo real. Ao integrar os Hubs de Eventos ao Azure Data Explorer, você pode fazer a análise quase em tempo real e a exploração de dados de streaming com facilidade.

Diagram that shows Azure Data explorer query and output.

Para obter mais informações, confira Ingestão de dados de um hub de eventos no Azure Data Explorer e os artigos na mesma seção.

Ecossistema sofisticado: funções do Azure, SDKs e ecossistema do Kafka

Ingerir, armazenar em buffer, armazenar e processar seu fluxo em tempo real para obter análises acionáveis. Os Hubs de Eventos usam um modelo de consumidor particionado, permitindo que vários aplicativos processem o fluxo simultaneamente e permitindo que você controle a velocidade de processamento. Os Hubs de Eventos do Azure também se integram ao Azure Functions, permitindo arquiteturas sem servidor.

Com um amplo ecossistema disponível para o protocolo AMQP 1.0 padrão do setor e SDKs disponíveis em vários idiomas: .NET, Java, Python, JavaScript, você poderá facilmente começar a processar seus fluxos nos Hubs de Eventos. Todos as linguagens com suporte do cliente fornecem integração de baixo nível.

O ecossistema também fornece integração perfeita ao Azure Functions, aos Aplicativos Spring do Azure, aos conectores do Kafka e a outras plataformas e tecnologias de análise de dados, como o Apache Spark e o Apache Flink.

Streaming de eventos flexível e econômico

Experimente o streaming flexível e econômico de eventos por meio da seleção diversificada de camadas dos Hubs de Eventos, incluindo Standard, Premium e Dedicado. Essas opções atendem a necessidades de streaming de dados que variam de alguns MB/s a vários GB/s, permitindo que você escolha a combinação perfeita para seus requisitos.

Escalonável

Com os Hubs de eventos, você pode iniciar com fluxos de dados em megabytes e aumentar para gigabytes ou terabytes. O recurso Expandir automaticamente é uma das muitas opções disponíveis para aumentar o número de unidades de produtividade ou unidades de processamento conforme suas necessidades de uso.

Capturar dados de streaming para retenção de longo prazo e análise em lote

Capture seus dados em tempo quase real em um Armazenamento de blobs do Azure ou no Azure Data Lake Storage para retenção de longo prazo ou processamento em microlotes. Obtenha esse comportamento no mesmo fluxo que você usa para obter a análise em tempo real. A configuração da captura de dados de evento é rápida.

Image showing capturing of Event Hubs data into Azure Storage or Azure Data Lake Storage using Managed Identity

Como ele funciona

Os Hubs de Eventos fornecem uma plataforma unificada de streaming de eventos com o buffer de retenção de tempo, separando os produtores dos consumidores do evento. Os aplicativos produtores e consumidores podem fazer a ingestão de dados em grande escala por meio de vários protocolos.

A seguinte figura mostra os principais componentes da arquitetura dos Hubs de Eventos:

Diagram that shows the main components of Event Hubs.

Os principais componentes funcionais dos Hubs de Eventos incluem:

  • Os aplicativos produtores podem ingerir dados em um hub de eventos usando os SDKs dos Hubs de Eventos ou qualquer cliente produtor do Kafka.
  • O namespace é o contêiner de gerenciamento de um ou mais hubs de eventos ou tópicos do Kafka. As tarefas de gerenciamento, como alocar capacidade de streaming, configurar a segurança de rede, habilitar a recuperação de desastres geográficos etc., são tratadas no nível do namespace.
  • Hub de Eventos/tópico do Kafka: nos Hubs de Eventos, você pode organizar eventos em um hub de eventos ou em um tópico do Kafka. É um log distribuído somente de acréscimo, que pode ser composto por uma ou mais partições.
  • As partições são usadas para escalar um hub de eventos. Elas são como pistas em uma via expressa. Se você precisar de mais taxa de transferência de streaming, precisará adicionar mais partições.
  • Os aplicativos consumidores consomem dados buscando por meio do log de eventos e mantendo o deslocamento do consumidor. Os consumidores podem ser clientes consumidores do Kafka ou clientes SDK dos Hubs de Eventos.
  • O grupo de consumidores é um grupo lógico de instâncias de consumidor que lê dados de um hub de eventos/tópico do Kafka. Ele permite que vários aplicativos consumidores leiam os mesmos dados de streaming em um hub de eventos de modo independente em um ritmo próprio e com os respectivos deslocamentos.

Próximas etapas

Para começar a usar os Hubs de Eventos, confira os guias de início rápido a seguir.

Transmitir dados usando o SDK dos Hubs de Eventos (AMQP)

Use uma das amostras a seguir para transmitir dados para os Hubs de Eventos usando SDKs.

Transmitir dados usando o Apache Kafka

Use as amostras a seguir para transmitir dados dos seus aplicativos Kafka para os Hubs de Eventos.

Validação de esquema com o registro de esquema

Use o registro de esquema dos Hubs de Eventos para fazer a validação de esquema para seus aplicativos de streaming de eventos.