Análise em tempo real de dados com o Barramento de Serviço do Azure e o Azure Data Explorer

Barramento de Serviço do Azure
Azure Data Explorer
Serviço de aplicativo do Azure
Banco de Dados SQL do Azure
Azure Cosmos DB

Ideias de soluções

Esse artigo é uma ideia de solução. Caso deseje que ampliemos o conteúdo com mais informações, como possíveis casos de uso, serviços alternativos, considerações sobre implementação ou diretrizes de preços, fale conosco enviando seus comentários no GitHub.

Este artigo descreve como usar o Azure Data Explorer e o Barramento de Serviço do Azure para aprimorar uma arquitetura de corretor de mensagens existente com análises quase em tempo real. Destina-se a administradores de TI, arquitetos de nuvem e equipes de operações e monitoramento.

Arquitetura

Diagrama que mostra uma arquitetura para implementar análises quase em tempo real.

Baixe um Arquivo Visio dessa arquitetura.

O logotipo Grafana é uma marca comercial da Raintank, Inc., dba Grafana Labs. Nenhum endosso é implícito pelo uso dessa marca.

O diagrama mostra dois caminhos de dados. O caminho principal, que é representado por linhas sólidas e caixas 1 a 5, é a ingestão de dados de várias fontes em um barramento de serviço, onde são processados por um trabalho de análise de fluxo e armazenados em um banco de dados SQL. O segundo caminho, que é representado por linhas pontilhadas e caixas, mostra os dados que fluem do barramento de serviço para um cluster do Azure Data Explorer, onde podem ser consultados e analisados por meio do Kusto Query Language (KQL).

O Barramento de Serviço é usado para implementar um padrão de Nivelamento de Carga Baseado em Fila para um aplicativo transacional.

O Azure Data Explorer é usado para executar análises quase em tempo real e expor dados por meio de APIs ou consultas diretas a, por exemplo, painéis do Power BI, Espaço Gerenciado do Azure para Grafana ou Azure Data Explorer.

Fluxo de dados

A fonte de dados na arquitetura é um aplicativo OLTP (Online Transaction Processing) existente. O Barramento de Serviço é usado para dimensionar o aplicativo de forma assíncrona.

  1. O aplicativo OLTP (a fonte de dados), hospedado no Serviço de Aplicativo do Azure, envia dados para o Barramento de Serviço.

  2. Os dados fluem do Barramento de Serviço em duas direções:

    1. No fluxo de aplicativo OLTP existente, ele dispara um aplicativo de função para armazenar dados no Banco de Dados SQL do Azure, no Azure Cosmos DB ou em um banco de dados operacional semelhante.

    2. No fluxo de análise quase em tempo real, ele dispara um fluxo de orquestração.

  3. O fluxo de orquestração envia dados para o Azure Data Explorer para análises quase em tempo real. O fluxo pode usar:

    • Um aplicativo de função que usa SDKs para enviar dados em microlotes ou que usa o suporte de ingestão de streaming gerenciado fornecido pelo Azure Data Explorer quando configurado para ingestão de streaming.
    • Um serviço de sondagem, como um aplicativo hospedado no Serviço de Kubernetes do Azure (AKS) ou em uma VM do Azure, que envia dados para o Azure Data Explorer em microlotes. Essa opção não requer a configuração da ingestão de streaming do Azure Data Explorer.
  4. O Azure Data Explorer processa os dados usando mapeamento de esquema e políticas de atualização e os disponibiliza por meio de uma API, SDK ou conector para análise ou relatórios interativos. Opcionalmente, o Azure Data Explorer também pode ingerir ou referenciar dados de outras fontes de dados, como o Banco de Dados SQL ou Azure Data Lake Storage.

  5. Aplicativos, serviços personalizados ou serviços de relatório, como painéis do Azure Data Explorer, Power BI e Espaço Gerenciado do Azure para Grafana podem consultar os dados no Azure Data Explorer quase em tempo real.

Componentes

  • O Serviço de Aplicativo permite que você crie e hospede aplicativos Web, back-ends de dispositivos móveis e APIs RESTful na linguagem de programação de sua escolha sem gerenciar a infraestrutura.
  • O Barramento de Serviço fornece mensagens confiáveis na nuvem como um serviço.
  • O Banco de Dados SQL é um banco de dados SQL totalmente gerenciado criado para a nuvem. Ele fornece atualizações automáticas, provisionamento, dimensionamento e backups.
  • O Azure Cosmos DB é um banco de dados multimodelo distribuído globalmente para aplicativos de qualquer escala.
  • O Azure Functions é uma plataforma de computação sem servidor orientada a eventos. Com o Functions, você pode implantar e operar em escala na nuvem e usar gatilhos e associações para integrar serviços.
  • O AKS é um serviço Kubernetes altamente disponível, altamente seguro e totalmente gerenciado para cargas de trabalho de aplicativos e microsserviços.
  • O Azure Data Explorer é um serviço de análise de dados rápido, totalmente gerenciado e altamente escalável para análise em tempo real de grandes volumes de dados que são transmitidos de aplicativos, sites, dispositivos IoT e muito mais.
  • O Data Lake Storage, criado no Armazenamento de Blobs do Azure, fornece funcionalidade de data lake massivamente escalonável.
  • O Power BI pode ajudá-lo a transformar seus dados em insights coerentes, visualmente imersivos e interativos.
  • O Espaço Gerenciado do Azure para Grafana é um serviço totalmente gerenciado que permite implantar o Grafana sem gastar tempo na configuração.

Detalhes do cenário

A análise em tempo real é o processo de analisar dados assim que eles são gerados para obter insights sobre o estado atual do sistema. As organizações estão adotando cada vez mais análises em tempo real para obter uma vantagem competitiva. A análise quase em tempo real é uma variante da análise em tempo real que fornece insights em segundos ou minutos após a geração de dados.

Esses processos permitem que as organizações obtenham insights mais rapidamente, tomem melhores decisões e respondam às mudanças nas condições de forma mais eficaz. A análise quase em tempo real pode ser aplicada a vários domínios, como comércio eletrônico, saúde, manufatura e finanças. Por exemplo, uma empresa de comércio eletrônico pode usar análises quase em tempo real para monitorar o comportamento do cliente, otimizar preços e personalizar recomendações.

Muitas organizações implementam análises quase em tempo real em soluções existentes. Essa ideia de solução demonstra como adicionar análises quase em tempo real a uma arquitetura existente baseada em um agente de mensagens e que faz parte de um aplicativo OLTP operacional.

OLTP significa Processamento de Transações Online. É um tipo de processamento de dados que gerencia aplicativos orientados a transações, normalmente para transações de entrada e recuperação de dados em um ambiente de tempo real. Os sistemas OLTP são projetados para processar transações pequenas e rápidas que são frequentemente de natureza financeira, como transações bancárias ou compras com cartão de crédito.

Possíveis casos de uso

Veja a seguir alguns casos de uso que ilustram os benefícios da análise quase em tempo real:

  • Os profissionais de saúde podem acompanhar os resultados dos pacientes, detectar anomalias e melhorar a qualidade do atendimento.
  • As empresas de manufatura podem otimizar a produção, reduzir o desperdício e evitar o tempo de inatividade.
  • As instituições financeiras podem monitorar transações, detectar fraudes, gerenciar riscos e garantir a conformidade com os regulamentos.
  • As empresas de comércio podem monitorar campanhas e obter insights para apoiar a promoção.
  • As empresas podem monitorar, otimizar, analisar e prever cadeias de suprimentos.

Colaboradores

Esse artigo é mantido pela Microsoft. Ele foi originalmente escrito pelos colaboradores a seguir.

Autor principal:

Outro colaborador:

Para ver perfis não públicos do LinkedIn, entre no LinkedIn.

Próximas etapas