Escolha Hubs de Eventos do Azure

Concluído

Existem certas aplicações que produzem um grande número de eventos a partir de quase tantas fontes. Muitas vezes ouvimos o termo "Big Data" aplicado a essas situações, e elas exigem uma infraestrutura única para lidar com elas.

Imagine que você trabalha para a Contoso Aircraft Engines. Os motores que o seu empregador fabrica têm centenas de sensores. Antes de uma aeronave poder voar todas as manhãs, os seus motores são ligados a um equipamento de teste e colocados à prova. Além disso, os dados armazenados em cache em voo são transmitidos quando a aeronave está conectada ao equipamento de solo.

Você deseja usar os dados históricos do sensor para encontrar padrões nas leituras do sensor que indicam que a falha do mecanismo provavelmente acontecerá em breve. Você deseja que as leituras do sensor em tempo real sejam comparadas com esses padrões de falha. Você pode então avisar os usuários quase em tempo real se um mecanismo estiver mostrando leituras preocupantes.

O que são Hubs de Eventos do Azure?

de hubs de eventos é um intermediário para o padrão de comunicação publicar-assinar. Ao contrário de Event Grid, no entanto, está otimizado para uma taxa de transferência extremamente alta, um grande número de publicadores, segurança e resiliência.

Enquanto o Event Grid se encaixa perfeitamente no padrão de publicação-assinatura, ao simplesmente gerir assinaturas e encaminhar comunicações para esses assinantes, o Event Hubs executa vários serviços adicionais. Estes serviços adicionais fazem com que pareça mais um barramento de serviços ou uma fila de mensagens do que uma simples emissora de eventos.

Divisórias

À medida que os Hubs de Eventos recebem comunicações, ele as divide em partições. As partições são buffers nos quais as comunicações são salvas. Devido aos buffers de eventos, os eventos não são efêmeros e um evento não é perdido apenas porque um assinante está ocupado ou mesmo offline. O assinante sempre pode usar o buffer para "recuperar o atraso". Por padrão, os eventos permanecem no buffer por 24 horas antes de expirarem automaticamente. Os buffers são chamados de partições porque os dados são divididos entre eles. Cada partição tem um conjunto separado de assinantes.

Captura

Os Hubs de Eventos podem enviar todos os seus eventos imediatamente para do Azure Data Lake ou armazenamento de Blob do Azure para persistência permanente e barata.

Autenticação

Todos os editores são autenticados e recebem um token. Isso significa que os Hubs de Eventos podem aceitar eventos de dispositivos externos e aplicativos móveis sem se preocupar que dados fraudulentos de trolls possam arruinar a sua análise.

Usando Hubs de Eventos

Os Hubs de Eventos têm suporte para canalizar fluxos de eventos para outros serviços do Azure. Usá-lo com o Azure Stream Analytics, por exemplo, permite a análise complexa de dados quase em tempo real, com a capacidade de correlacionar vários eventos e procurar padrões. Neste caso, o Stream Analytics seria considerado um assinante.

Para nossos motores de aeronaves, configuraremos nossa arquitetura para que os Hubs de Eventos autentiquem as comunicações de nossos motores. Em seguida, usaremos a captura para salvar todos os dados no Data Lake. Mais tarde, podemos usar todos esses dados para treinar novamente e melhorar nossos modelos de aprendizado de máquina. Por fim, os assinantes do Stream Analytics recolhem os nossos fluxos de eventos. O Stream Analytics usa nosso modelo de aprendizado de máquina para procurar padrões nos dados do sensor que possam indicar problemas.

Como temos várias partições e cada mecanismo envia todos os seus dados para apenas uma partição, cada instância de nosso assinante do Stream Analytics só precisa lidar com um subconjunto de nossos dados gerais. Ele não precisa filtrar e correlacionar tudo isso.

Que serviço devo escolher?

Assim como a nossa escolha de fila de espera, selecionar entre estes dois serviços de entrega de eventos pode parecer difícil ao princípio. Ambos suportam pelo menos uma vez semântica.

Escolha Hubs de Eventos se:

  • Você precisa oferecer suporte à autenticação de um grande número de editores.
  • Você precisa salvar um fluxo de eventos no armazenamento Data Lake ou Blob.
  • Você precisa de agregação ou análise em seus eventos
  • Você precisa de mensagens confiáveis ou resiliência.

Caso contrário, se necessitar de uma infraestrutura simples de publicação-assinatura de eventos com publicadores de confiança (por exemplo, o seu próprio servidor web), deve escolher o Event Grid.

Os Hubs de Eventos permitem criar um pipeline de big data capaz de processar milhões de eventos por segundo com baixa latência. Ele pode lidar com dados de fontes simultâneas e encaminhá-los para várias infraestruturas de processamento de fluxo e serviços de análise. Permite o processamento em tempo real e suporta a repetição repetida de dados brutos armazenados.