Compartilhar via


Escolha uma tecnologia de processamento de streaming e análise em tempo real no Azure

Há vários serviços disponíveis para análise em tempo real e processamento de streaming no Azure. Este artigo fornece as informações necessárias para decidir qual tecnologia é a melhor opção para seu aplicativo.

Quando usar o Azure Stream Analytics

O Azure Stream Analytics é o serviço recomendado para análise de fluxo no Azure. Você pode usá-lo para uma ampla variedade de cenários que incluem, mas não se limitam a:

Adicionar um trabalho do Azure Stream Analytics ao seu aplicativo é a maneira mais rápida de colocar a análise de streaming em execução no Azure, usando a linguagem SQL que você já conhece. O Azure Stream Analytics é um serviço de trabalho, portanto, você não precisa gastar tempo gerenciando clusters e não precisa se preocupar com o tempo de inatividade com um SLA (Contrato de Nível de Serviço) de 99,9% no nível do trabalho. A cobrança também é feita no nível do trabalho, tornando os custos de inicialização baixos (uma Unidade de Streaming), mas escalonáveis (até 396 Unidades de Streaming). É muito mais econômico executar alguns trabalhos do Stream Analytics do que executar e manter um cluster.

Azure Stream Analytics tem uma experiência completa e pronta para uso. Você pode aproveitar imediatamente os seguintes recursos sem nenhuma configuração extra:

  • Operadores temporais internos, como agregações em janelas, junções temporais e funções de análise temporal.
  • Adaptadores nativos de entrada e saída do Azure
  • Suporte para dados de referência de alteração lenta (também conhecidos como tabelas de pesquisa), incluindo a junção com dados de referência geoespaciais para delimitação geográfica.
  • Soluções integradas, como detecção de anomalias
  • Várias janelas de tempo na mesma consulta
  • Capacidade de compor vários operadores temporais em sequências arbitrárias.
  • Latência de ponta a ponta abaixo de 100 ms da entrada que chega aos Hubs de Eventos, até a saída de destino nos Hubs de Eventos, incluindo o atraso da rede de e para os Hubs de Eventos, mantendo uma alta taxa de transferência

Quando usar outras tecnologias

Você deseja gravar UDFs, UDAs e desserializadores personalizados em uma linguagem diferente de JavaScript ou C#

O Azure Stream Analytics dá suporte a UDF (funções definidas pelo usuário) ou UDA (agregações definidas pelo usuário) em JavaScript para trabalhos de nuvem e C# para trabalhos do IoT Edge. Também há suporte para desserializadores definidos pelo usuário em C#. Se você quiser implementar um desserializador, um UDF ou um UDA em outras linguagens, como Java ou Python, poderá usar o Streaming Estruturado do Spark. Você também pode executar o EventProcessorHost dos Hubs de Eventos em suas próprias máquinas virtuais para realizar processamento de streaming arbitrário.

Sua solução está em um ambiente local ou multinuvem

O Azure Stream Analytics é a tecnologia proprietária da Microsoft e só está disponível no Azure. Se você precisar que sua solução seja portátil entre nuvens ou locais, considere tecnologias de software livre, como o Streaming Estruturado do Spark ou o Apache Flink.

Próximas etapas