Transmissão em fluxo de dados com o AKS

Serviço de Aplicações
Gestão de API
Container Registry
Cache para Redis
Cosmos DB

Ideias de solução

Este artigo é uma ideia de solução. Se quiser que expandamos o conteúdo com mais informações, como potenciais casos de utilização, serviços alternativos, considerações de implementação ou orientação de preços, informe-nos ao fornecer feedback do GitHub.

Este artigo apresenta uma solução para utilizar Azure Kubernetes Service (AKS) para processar e analisar rapidamente um grande volume de dados de transmissão em fluxo de dispositivos.

O Apache®, o Apache Kafka e o Apache Spark são marcas registadas ou marcas registadas da Apache Software Foundation no Estados Unidos e/ou noutros países. A utilização destas marcas não implica o endosso da Apache Software Foundation.

Arquitetura

Diagrama de arquitetura que mostra como os dados de transmissão em fluxo de dispositivos são ingeridos, processados e analisados.Transfira um SVG desta arquitetura.

Fluxo de dados

  1. Os sensores geram dados e transmitem-nos em fluxo para o Azure Gestão de API.
  2. Um cluster do AKS executa microsserviços que são implementados como contentores atrás de uma malha de serviço. Os contentores são criados com um processo de DevOps e armazenados em Azure Container Registry.
  3. Um serviço de ingestão armazena dados no Azure Cosmos DB.
  4. De forma assíncrona, um serviço de análise recebe os dados e transmite-os em fluxo para o Apache Kafka e o Azure HDInsight.
  5. Os cientistas de dados utilizam modelos de machine learning e a plataforma Splunk para analisar os dados.
  6. Um serviço de processamento processa os dados e armazena o resultado em Base de Dados do Azure para PostgreSQL. O serviço também coloca os dados em cache no Cache do Azure para Redis.
  7. Uma aplicação Web executada no Serviço de Aplicações do Azure cria visualizações dos resultados.

Componentes

A solução utiliza as seguintes tecnologias principais:

Detalhes do cenário

Esta solução é adequada para um cenário que envolve milhões de pontos de dados, em que as origens de dados incluem dispositivos IoT (Internet das Coisas), sensores e veículos. Nesta situação, o processamento do grande volume de dados é um desafio. Analisar rapidamente os dados é outra tarefa exigente, uma vez que as organizações procuram obter informações sobre cenários complexos.

Os microsserviços contentorizados no AKS constituem uma parte fundamental da solução. Estes serviços autónomos ingerem e processam o fluxo de dados em tempo real. Também dimensionam conforme necessário. A portabilidade dos contentores permite que os serviços sejam executados em diferentes ambientes e processem dados de várias origens. Para desenvolver e implementar os microsserviços, são utilizados DevOps e integração contínua/entrega contínua (CI/CD). Estas abordagens encurtam o ciclo de desenvolvimento.

Para armazenar os dados ingeridos, a solução utiliza o Azure Cosmos DB. Esta base de dados dimensiona elasticamente o débito e o armazenamento, o que a torna uma boa opção para grandes volumes de dados.

A solução também utiliza o Kafka. Esta plataforma de transmissão em fluxo de baixa latência processa feeds de dados em tempo real a velocidades extremamente elevadas.

Outro componente de solução chave é o HDInsight, que é um serviço de análise de cloud open source gerido e open source. O HDInsight simplifica a execução de arquiteturas de macrodados em grande volume e velocidade ao utilizar o Apache Spark no Azure. O Splunk ajuda no processo de análise de dados. Esta plataforma cria visualizações a partir de dados em tempo real e fornece business intelligence.

Potenciais casos de utilização

Esta solução beneficia as seguintes áreas:

  • Segurança dos veículos, especialmente na indústria automóvel
  • Suporte ao cliente no retalho e noutros setores
  • Soluções para a cloud de cuidados de saúde
  • Soluções de tecnologia financeira no setor financeiro

Passos seguintes

Documentação do produto:

Microsoft módulos de formação: