Análise de dados para frotas de testes automotivos

Armazenamento do Blobs do Azure
Azure Data Explorer
Hubs de eventos do Azure
Funções do Azure
Hub IoT do Azure

Os OEMs automotivos precisam de soluções para minimizar o tempo entre fazer test drives e obter dados de diagnóstico de test drive para engenheiros do R&D. Conforme os veículos se tornam mais automatizados, os ciclos de vida do software são mais curtos e os ciclos de feedback digital devem se tornar mais rápidos. A nova tecnologia pode democratizar o acesso aos dados e fornecer aos engenheiros de P&D insights quase em tempo real sobre dados de diagnóstico de test drive. O compartilhamento seguro de dados pode melhorar a colaboração entre OEMs e fornecedores, encurtando ainda mais os ciclos de desenvolvimento.

Essa carga de trabalho de exemplo está relacionada a cenários de ingestão de dados de test drive telemétricos e em lote. A carga de trabalho se concentra na plataforma de dados que processa os dados de diagnóstico e os conectores para visualização e relatório.

Arquitetura

Diagrama que mostra o fluxo de dados de análise para dados e arquivos de streaming automotivo.

Download um arquivo do PowerPoint com todos os diagramas deste artigo.

Fluxo de dados

  1. O Hub IoT do Azure ingere dados de telemetria brutos ao vivo (A) e carrega arquivos de dados gravados (B) do veículo.

  2. O Hub IoT envia a telemetria ao vivo (A) para um aplicativo do Azure Functions que decodifica a telemetria para JSON (JavaScript Object Notation) e a posta nos hubs de eventos do Azure.

    O Hub IoT envia os arquivos de dados gravados (B) para o armazenamento de blobs do Azure. Um carregamento de arquivo concluído aciona um aplicativo Functions que decodifica os dados e grava o arquivo decodificado no armazenamento Blob em um formato CSV (valores separados por vírgula) adequado para ingestão.

  3. O Azure Data Explorer ingere dados de telemetria JSON decodificados dos hubs de eventos (A) em uma tabela de telemetria bruta e ingere os arquivos CSV (B) decodificados do Armazenamento de blobs.

  4. O Azure Data Explorer usa a função Update para expandir os dados JSON em um formato de linha adequado e para enriquecer os dados. Por exemplo, a função agrupa dados de localização para dar suporte à análise geoespacial.

  5. Cientistas de dados e engenheiros de P&D usam recursos da Kusto Query Language (KQL) para criar casos de uso de análise que armazenam como funções definidas pelo usuário. As funções do KQL incluem agregação, análise de séries temporais, formação de clusters geoespaciais, janelas e plug-ins de aprendizado de máquina (ML).

  6. O Power BI usa a Consulta dinâmica para criar visualizações com as consultas definidas pelo usuário. O plug-in de fonte de dados Grafana para o Azure Data Explorer usa as consultas definidas pelo usuário para atualizações quase em tempo real.

  7. Um aplicativo do Serviço de aplicativos do Azure usa os recursos de renderização da fonte de dados do Azure Maps para visualizar resultados de consulta definidos pelo usuário que usam o formato GeoJSON.

  8. O API Management do Azure fornece acesso a arquivos de dados brutos armazenados de veículos e uma API de configuração que gerencia políticas de coleta de dados de terceiros.

Esquema do Azure Data Explorer

Diagrama que mostra as funções e os métodos do Azure Data Explorer para extrair, expandir e enriquecer dados.

  1. A função Update() usa métodos como:

    • mv-expand() para expandir valores complexos armazenados em estruturas JSON em linhas com sinais individuais.
    • geo_point_to_h3cell() ou geo_point_to_geohash() para converter latitude e longitude em geohashes para análise geoespacial.
    • todouble() e tostring() converter valores extraídos de objetos JSON dinâmicos nos tipos de dados apropriados.
  2. A exibição dos últimos valores conhecidos dos metadados da frota une outras exibições como parte da ingestão para fornecer contexto. Os metadados históricos da frota são úteis, se novos casos de uso exigirem o reprocessamento da telemetria bruta.

  3. Se necessário, uma exibição materializada de sinais desduplicados usa take_any() para desduplicar sinais.

  4. A exibição materializada dos últimos valores conhecidos dos sinais é usada arg_max() no carimbo de data/hora para relatórios em tempo real.

  5. A visualização materializada de sinais reduzidos agrega sinais usando compartimentos predefinidos, como a cada hora e diariamente , para simplificar a geração de relatórios em toda a frota.

  6. Funções de plug-in armazenadas, como DetectAnomaly() encontrar anomalias em séries de dados. Plug-ins de ML como autocluster encontram padrões comuns de atributos discretos.

  7. A função GetGeospatial() gera arquivos GeoJSON que contêm sinais agrupados por geohashes.

Componentes

As seguintes tecnologias-chave implementam essa carga de trabalho:

Alternativas

O Lote do Azure é uma boa alternativa para decodificação de arquivos complexos. Esse cenário envolve muitos arquivos acima de 300 megabytes que exigem algoritmos de decodificação diferentes, com base na versão ou no tipo de arquivo.

Diagrama que mostra um método alternativo de Lote do Azure para decodificar arquivos complexos.

  1. O carregamento de um arquivo de dados gravado no armazenamento de blobs aciona um aplicativo Functions para agendar a decodificação.
  2. O aplicativo Functions cria um trabalho em lote, levando em consideração o tipo e o tamanho do arquivo, além do algoritmo de decodificação necessário. O aplicativo seleciona uma máquina virtual (VM) adequada do pool e inicia o trabalho.
  3. Quando o trabalho é concluído, o lote grava o arquivo decodificado resultante de volta no armazenamento de blobs Esse arquivo deve ser adequado para ingestão direta em um formato compatível com o Azure Data Explorer.
  4. Carregar um arquivo de sinal decodificado no armazenamento de blobs aciona uma função que ingere os dados no Azure Data Explorer. Essa função cria a tabela e o mapeamento de dados, se necessário, e inicia o processo de ingestão.
  5. O Azure Data Explorer ingere diretamente os arquivos de dados do armazenamento de blobs.

Essa abordagem oferece os seguintes benefícios:

  • O Azure Functions e os pools de lotes lidam com tarefas de processamento de dados escalonáveis de forma robusta e eficiente.
  • Os pools de lotes fornecem insights sobre estatísticas de processamento, filas de tarefas e integridade do pool de lotes. Você pode visualizar o status, detectar problemas e executar novamente tarefas com falha.
  • A combinação do Azure Functions e do Lote do Azure dá suporte ao processamento plug-and-play em contêineres do Docker.

Detalhes do cenário

Os OEMs automotivos usam grandes frotas de protótipos e veículos de teste para testar e verificar todos os tipos de funções do veículo. Os procedimentos de teste são caros, pois e veículos reais precisam estar envolvidos, e certos cenários específicos de testes de estrada do mundo real devem ocorrer várias vezes. Os testes de integração são especialmente importantes para avaliar as interações entre componentes elétricos, eletrônicos e mecânicos em sistemas complexos.

Para validar as funções do veículo e analisar anomalias e falhas, gigabytes de dados de diagnóstico devem ser capturados de ECUs (unidades de controle eletrônico), nós de computador, barramentos de comunicação do veículo, como CAN (rede de área do controlador) e Ethernet e sensores. No passado, pequenos servidores de data logger nos veículos armazenavam dados de diagnóstico localmente, como MDF (banco de dados mestre), MFX (extensão de fusão multimídia), CSV ou arquivos JSON. Depois que os test drives foram concluídos, os servidores enviaram dados de diagnóstico para datacenters, que os processaram e os forneceram aos engenheiros de P&D para análise. Esse processo pode levar horas ou, às vezes, dias. Cenários mais recentes usam padrões de ingestão de telemetria, como fluxos de dados síncronos baseados em MQTT (Transporte de telemetria de enfileiramento de mensagens) ou carregamentos de arquivos quase em tempo real.

Possíveis casos de uso

  • O gerenciamento de veículos avalia o desempenho e os dados coletados por veículo em vários cenários de teste.
  • A validação de sistemas e de componentes usa dados coletados do veículo para verificar se o comportamento dos componentes do veículo está dentro dos limites operacionais entre as viagens.
  • A detecção de anomalias localiza padrões de desvio de um valor de sensor em relação ao seu padrão inicial típico em tempo real.
  • A análise de causa raiz usa plug-ins de ML, como algoritmos de formação de clusters, para identificar alterações na distribuição de valores em várias dimensões.
  • A manutenção preditiva combina várias fontes de dados, dados de localização enriquecidos e telemetria para prever o tempo até a falha do componente.
  • A avaliação da sustentabilidade utiliza o comportamento do motorista e o consumo de energia para avaliar o impacto ambiental das operações do veículo.

Considerações

Essas considerações implementam os pilares do Azure Well-Architected Framework​, um conjunto de princípios orientadores que você pode usar para aprimorar a qualidade de uma carga de trabalho. Para obter mais informações, confira Microsoft Azure Well-Architected Framework.

Confiabilidade

A confiabilidade garante que seu aplicativo possa cumprir os compromissos que você assume com seus clientes. Para obter mais informações, confira Visão geral do pilar de confiabilidade.

Segurança

A segurança fornece garantias contra ataques deliberados e o abuso de seus dados e sistemas valiosos. Para saber mais, confira Visão geral do pilar de segurança.

É importante entender a divisão da responsabilidade entre o OEM automotivo e a Microsoft. No veículo, o OEM tem toda a pilha, mas à medida que os dados se movem para a nuvem, algumas responsabilidades são transferidas para a Microsoft. A PaaS (Plataforma como serviço) do Azure fornece segurança integrada na pilha física, incluindo o sistema operacional. Você pode aplicar os seguintes recursos sobre os componentes de segurança de infraestrutura.

Todos esses recursos ajudam os OEMs automotivos a criar um ambiente seguro para seus dados de telemetria dos veículos. Para obter mais informações, consulte Segurança no Azure Data Explorer.

Otimização de custo

A otimização de custos analisa maneiras de reduzir despesas desnecessárias e melhorar a eficiência operacional. Para obter mais informações, confira Visão geral do pilar de otimização de custo.

Esta solução usa as seguintes práticas para ajudar a otimizar os custos:

  • Configure corretamente os caches frequentes e o armazenamento frio para as tabelas Raw e Signals. O cache de dados frequentes é armazenado em RAM ou SSD e fornece melhor desempenho. Os dados frios, no entanto, são 45 vezes mais baratos. Defina uma política de cache frequente adequada para o seu caso de uso, como 30 dias.
  • Configure uma política de retenção nas tabelas Raw e Signals. Determine quando os dados de sinal não são mais relevantes, por exemplo, após 365 dias, e defina a política de retenção de acordo.
  • Considere quais sinais são relevantes para análise.
  • Use visualizações materializadas ao consultar os últimos valores conhecidos dos sinais, sinais desduplicados e sinais reduzidos. As exibições materializadas consomem menos recursos do que fazer agregações de tabela de origem em cada consulta.
  • Considere suas necessidades de análise de dados em tempo real. A configuração da ingestão de streaming para a tabela de telemetria ao vivo permite uma latência de menos de um segundo entre a ingestão e a consulta, mas a um custo mais alto de mais ciclos de CPU.

Eficiência de desempenho

A eficiência de desempenho é a capacidade da sua carga de trabalho de dimensionar de forma eficiente para atender às demandas dos usuários. Para obter mais informações, consulte Visão geral do pilar de eficiência de desempenho.

  • Se o número e o tamanho dos arquivos de dados gravados forem maiores que 1.000 arquivos ou 300 MB por dia, considere usar o Lote do Azure para decodificação.
  • Considere realizar cálculos e análises comuns depois da ingestão e armazená-los em tabelas adicionais.

Implantar este cenário

Para implantar o Azure Data Explorer e ingerir arquivos MDF, você pode seguir o tutorial passo a passo, demonstrando como implantar uma instância gratuita, analisar arquivos MDF, ingerir e executar algumas consultas básicas.

Colaboradores

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

Principais autores:

Outros colaboradores:

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

Próximas etapas