Ideias de soluções
Este artigo é uma ideia de solução. Se você quiser que expandamos o conteúdo com mais informações, como possíveis casos de uso, serviços alternativos, considerações de implementação ou orientação de preços, informe-nos fornecendo feedback do GitHub.
Este artigo apresenta uma solução para usar o Serviço Kubernetes do Azure (AKS) para processar e analisar rapidamente um grande volume de dados de streaming de dispositivos.
Apache®, Apache Kafka e Apache Spark são marcas registadas ou marcas comerciais da Apache Software Foundation nos Estados Unidos e/ou noutros países. Nenhum endosso da Apache Software Foundation está implícito no uso dessas marcas.
Arquitetura
Transfira um ficheiro do Visio desta arquitetura.
Fluxo de dados
- Os sensores geram dados e transmitem-nos para a Gestão de API do Azure.
- Um cluster AKS executa microsserviços que são implantados como contêineres atrás de uma malha de serviço. Os contêineres são criados usando um processo de DevOps e são armazenados no Registro de Contêiner do Azure.
- Um serviço de ingestão armazena dados no Azure Cosmos DB.
- De forma assíncrona, um serviço de análise recebe os dados e os transmite para o Apache Kafka e o Azure HDInsight.
- Os cientistas de dados usam modelos de aprendizado de máquina e a plataforma Splunk para analisar os dados.
- Um serviço de processamento processa os dados e armazena o resultado no Banco de Dados do Azure para PostgreSQL. O serviço também armazena em cache os dados no Cache do Azure para Redis.
- Um aplicativo Web executado no Serviço de Aplicativo do Azure cria visualizações dos resultados.
Componentes
A solução utiliza as seguintes tecnologias-chave:
- Gestão de API
- Serviço de Aplicações
- Cache do Azure para Redis
- Container Registry
- BD do Cosmos para o Azure
- Base de Dados do Azure para PostgreSQL
- HDInsight
- AKS
- Azure Pipelines
Detalhes do cenário
Esta solução é adequada para um cenário que envolve milhões de pontos de dados, onde as fontes de dados incluem dispositivos, sensores e veículos de Internet das Coisas (IoT). Em tal situação, o processamento do grande volume de dados é um desafio. Analisar rapidamente os dados é outra tarefa exigente, à medida que as organizações procuram obter informações sobre cenários complexos.
Microsserviços em contêineres no AKS formam uma parte fundamental da solução. Esses serviços autônomos ingerem e processam o fluxo de dados em tempo real. Eles também são dimensionados conforme necessário. A portabilidade dos contêineres possibilita que os serviços sejam executados em diferentes ambientes e processem dados de várias fontes. Para desenvolver e implantar os microsserviços, são usados 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 usa o Azure Cosmos DB. Esse banco de dados dimensiona elasticamente a taxa de transferência e o armazenamento, o que o torna uma boa opção para grandes volumes de dados.
A solução também usa Kafka. Esta plataforma de streaming de baixa latência lida com feeds de dados em tempo real a velocidades extremamente altas.
Outro componente importante da solução é o HDInsight, que é um serviço de análise de nuvem gerenciado e de código aberto. O HDInsight simplifica a execução de estruturas de big data em grande volume e velocidade ao usar 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
- Atendimento ao cliente no varejo e outras indústrias
- Soluções na nuvem para cuidados de saúde
- Soluções de tecnologia financeira no setor financeiro
Próximos passos
Documentação do produto:
- Sobre o Cache Redis do Azure
- O que é o Gerenciamento de API do Azure?
- Descrição geral do Serviço de Aplicações
- Azure Kubernetes Service
- Introdução aos registros de contêiner privados do Docker no Azure
- Bem-vindo ao Azure Cosmos DB
- O que é o Banco de Dados do Azure para PostgreSQL?
- O que é o Azure HDInsight?
- O que é o Azure Pipelines?
Módulos de formação da Microsoft:
- Criar e armazenar imagens de contêiner com o Registro de Contêiner do Azure
- Configurar planos do Serviço de Aplicativo do Azure
- Trabalhar com o Azure Cosmos DB
- Criar e conectar-se a um Banco de Dados do Azure para PostgreSQL
- Desenvolver para o Cache Redis do Azure
- Explore o gerenciamento de API
- Gerencie a infraestrutura como código usando o Azure e o DSC
- Introdução ao Azure HDInsight