Modifier

Partager via


Analytique données pour les flottes de tests automobiles

Stockage Blob Azure
Explorateur de données Azure
Hubs d'événements Azure
Azure Functions
Azure IoT Hub

Les OEM automobiles ont besoin de solutions pour réduire le temps entre l’exécution des essais et l’obtention de données de diagnostic d’essai aux ingénieurs de recherche et développement. À mesure que les véhicules deviennent plus automatisés, les cycles de vie des logiciels sont plus courts et les boucles de rétroaction numérique doivent devenir plus rapides. La nouvelle technologie peut démocratiser l’accès aux données et fournir aux ingénieurs en recherche et développement des insights quasiment en temps réel sur des données de diagnostic d’essai. Le partage de données sécurisé peut améliorer la collaboration entre les OEM et les fournisseurs, ce qui raccourcit davantage les cycles de développement.

Cet exemple de charge de travail concerne à la fois les scénarios d’ingestion des données de télémétrie et d’essais par lots. La charge de travail se concentre sur la plateforme de données qui traite les données de diagnostic et les connecteurs pour la visualisation et la création de rapports.

Architecture

Diagramme qui montre le flux de données analytiques pour la diffusion en continu de données et fichiers automobiles.

Téléchargez un fichier PowerPoint avec tous les diagrammes de cet article.

Dataflow

  1. Azure IoT Hub ingère des données de télémétrie brutes en temps réel (A) et charge les fichiers de données enregistrés (B) à partir du véhicule.

  2. IoT Hub envoie la télémétrie en temps réel (A) à une application Azure Functions qui décode les données de télémétrie en JSON (JavaScript Object Notation) et les publie sur Azure Event Hubs.

    IoT Hub envoie les fichiers de données enregistrés (B) à Stockage Blob Azure. Un chargement de fichier terminé déclenche une application Functions qui décode les données et écrit le fichier décodé dans le Stockage Blob dans un format de valeurs séparées par des virgules (CSV) adapté à l’ingestion.

  3. Azure Data Explorer ingère des données de télémétrie JSON décodées d’Event Hubs (A) dans une table de télémétrie brute et ingère les fichiers CSV décodés (B) à partir du Stockage Blob.

  4. Azure Data Explorer utilise la fonction Update pour développer les données JSON dans un format de ligne approprié et pour enrichir les données. Par exemple, les données d’emplacement des clusters de fonctions pour prendre en charge l’analytique géospatiale.

  5. Les scientifiques des données et les ingénieurs en recherche et développement utilisent des fonctionnalités de langage de requête Kusto (KQL) pour créer des cas d’usage analytiques qu’ils stockent en tant que fonctions définies par l’utilisateur. Les fonctions KQL incluent l’agrégation, l’analyse des séries chronologiques, le clustering géospatial, le fenêtrage et les plug-ins Machine Learning (ML).

  6. Power BI utilise Dynamic Query pour créer des visualisations avec les requêtes définies par l’utilisateur. Le plug-in de source de données Grafana pour Azure Data Explorer utilise les requêtes définies par l’utilisateur pour des mises à jour en quasi-temps réel.

  7. Une application Azure App Service utilise les fonctionnalités de rendu de source de données Azure Maps pour visualiser les résultats de requête définis par l’utilisateur qui utilisent le format GeoJSON.

  8. La Gestion des API Azure fournit l’accès aux fichiers de données brutes stockés à partir de véhicules et à une API de configuration qui gère les stratégies de collecte de données tierces.

Schéma Azure Data Explorer

Diagramme qui montre les fonctions et les méthodes d’Azure Data Explorer pour extraire, développer et enrichir les données.

  1. La fonction Update() utilise des méthodes comme :

    • mv-expand() pour développer des valeurs complexes stockées dans des structures JSON en lignes avec des signaux individuels.
    • geo_point_to_h3cell() ou geo_point_to_geohash() pour convertir la latitude et la longitude en géohachages pour l’analytique géospatiale.
    • todouble() et tostring() pour convertir des valeurs extraites d’objets JSON dynamiques dans les types de données appropriés.
  2. La vue Fleet Metadata Last Known Values joint d’autres vues dans le cadre de l’ingestion pour fournir un contexte. Les métadonnées de la flotte historique sont utiles si de nouveaux cas d’usage nécessitent un retraitement des données de télémétrie brutes.

  3. Si nécessaire, une vue Signals Deduped matérialisée utilise take_any() pour dédupliquer les signaux.

  4. La vue Signals Last Known Values utilise arg_max() sur le timestamp pour la création de rapports en temps réel.

  5. La vue matérialisée Signals Downsampled agrège les signaux à l’aide de segments prédéfinis, comme toutes les heures ou tous les jours pour simplifier la création de rapports au sein de la flotte.

  6. Fonctions de plug-in stockées comme DetectAnomaly() pour rechercher des anomalies dans la série de données. Les plug-ins ML comme autocluster recherchent des modèles courants d’attributs discrets.

  7. La fonction GetGeospatial() génère des fichiers GeoJSON qui contiennent des signaux groupés par géohachages.

Composants

Les technologies clés suivantes implémentent cette charge de travail :

Autres solutions

Azure Batch est une bonne alternative pour le décodage de fichiers complexes. Ce scénario implique un grand nombre de fichiers de plus de 300 mégaoctets qui nécessitent différents algorithmes de décodage en fonction de la version ou du type de fichier.

Diagramme qui montre une méthode alternative Azure Batch pour décoder les fichiers complexes.

  1. Le chargement d’un fichier de données enregistré dans le Stockage Blob déclenche une application Functions pour planifier le décodage.
  2. L’application Functions crée un travail de traitement par lots, en tenant compte du type de fichier, de la taille et de l’algorithme de décodage requis. L’application sélectionne une machine virtuelle appropriée dans le pool et démarre le travail.
  3. Une fois le travail terminé, Batch réécrit le fichier décodé obtenu dans le Stockage Blob. Ce fichier doit être adapté à l’ingestion directe dans un format pris en charge par Azure Data Explorer.
  4. Le chargement d’un fichier de signal décodé dans le Stockage Blob déclenche une fonction qui ingère les données dans Azure Data Explorer. Cette fonction crée le mappage de table et de données si nécessaire et démarre le processus d’ingestion.
  5. Azure Data Explorer ingère directement les fichiers de données à partir du Stockage Blob.

Cette approche offre les avantages suivants :

  • Azure Functions et les pools Batch sont en mesure de gérer des tâches de traitement de données évolutives de manière robuste et efficace.
  • Les pools Batch fournissent des insights sur les statistiques de traitement, les files d’attente de tâches et l’intégrité du pool Batch. Vous pouvez visualiser l’état, détecter les problèmes et réexécuter les tâches ayant échoué.
  • La combinaison d’Azure Functions et d’Azure Batch prend en charge le traitement plug-and-play dans les conteneurs Docker.

Détails du scénario

Les OEM automobiles utilisent de grandes flottes de prototypes et de véhicules d’essai pour tester et vérifier toutes sortes de fonctions de véhicule. Les procédures de test sont coûteuses, car des conducteurs et des véhicules réels doivent être impliqués, et certains scénarios spécifiques d’essais routiers réels doivent être effectués de nombreuses fois. Les tests d’intégration sont particulièrement importants pour évaluer les interactions entre les composants électriques, électroniques et mécaniques dans les systèmes complexes.

Pour valider les fonctions du véhicule et analyser les anomalies et les défaillances, des gigaoctets de données de diagnostic doivent être capturés à partir d’unités de contrôle électronique (ECU), de nœuds informatiques, de bus de communication de véhicule comme le réseau CAN (Controller Area Network) et Ethernet et les capteurs. Dans le passé, de petits serveurs d’enregistreurs de données des véhicules stockaient les données de diagnostic localement sous forme de base de données master (MDF), d’extension de fusion multimédia (MFX), ou de fichiers CSV ou JSON. Une fois les essais terminés, les serveurs chargeaient les données de diagnostic dans les centres de données, qui les traitaient et les fournissaient aux ingénieurs de recherche et développement pour l’analytique. Ce processus pouvait prendre des heures, ou parfois des jours. Les scénarios plus récents utilisent des modèles d’ingestion de télémétrie comme des flux de données synchrones basés sur MQTT ou des chargements de fichiers en quasi-temps réel.

Cas d’usage potentiels

  • La gestion des véhicules évalue les performances et les données collectées par véhicule dans plusieurs scénarios de test.
  • La validation du système et des composants utilise les données de véhicule collectées pour vérifier que le comportement des composants du véhicule se situe dans des limites opérationnelles tout au long des trajets.
  • La détection d’anomalies localise les modèles d’écart d’une valeur de capteur par rapport à son modèle de référence classique en temps réel.
  • L’analyse de la cause racine utilise des plug-ins ML comme des algorithmes de clustering pour identifier les modifications apportées à la distribution des valeurs sur plusieurs dimensions.
  • La maintenance prédictive combine plusieurs sources de données, des données d’emplacement enrichies et des données de télémétrie pour prédire le délai de défaillance du composant.
  • L’évaluation de la durabilité utilise le comportement des conducteurs et la consommation d’énergie pour évaluer l’impact environnemental des opérations des véhicules.

Considérations

Ces considérations implémentent les piliers d’Azure Well-Architected Framework, un ensemble de principes directeurs que vous pouvez utiliser pour améliorer la qualité d’une charge de travail. Pour plus d'informations, consultez Microsoft Azure Well-Architected Framework.

Fiabilité

La fiabilité permet de s’assurer que votre application tient vos engagements auprès de vos clients. Pour plus d’informations, consultez la page Vue d’ensemble du pilier de fiabilité.

  • Les zones de disponibilité Azure sont des emplacements physiques uniques au sein de la même région Azure. Les zones de disponibilité peuvent protéger les clusters de calcul et les données d’Azure Data Explorer contre une défaillance partielle de la région.
  • Dans Azure Data Explorer, la continuité d’activité et la reprise d’activité permettent à votre entreprise de continuer de fonctionner en cas de perturbation.
  • Envisagez d’utiliser une base de données follower dans Azure Data Explorer pour séparer les ressources de calcul entre les cas d’usage de production et hors production.

Sécurité

La sécurité fournit des garanties contre les attaques délibérées, et contre l’utilisation abusive de vos données et systèmes importants. Pour plus d’informations, consultez Vue d’ensemble du pilier Sécurité.

Il est important de comprendre la répartition des responsabilités entre l’OEM automobile et Microsoft. Dans le véhicule, l’OEM possède l’ensemble de la pile, mais à mesure que les données se déplacent vers le cloud, certaines responsabilités sont transférées à Microsoft. Azure PaaS (Platform-as-a-Service) fournit une sécurité intégrée sur la pile physique, y compris le système d’exploitation. Vous pouvez appliquer les fonctionnalités suivantes en plus des composants de sécurité de l’infrastructure.

Toutes ces fonctionnalités aident les OEM automobiles à créer un environnement sûr pour leurs données de télémétrie de véhicule. Pour plus d’informations, consultez Sécurité dans Azure Data Explorer.

Optimisation des coûts

L’optimisation des coûts examine les moyens de réduire les dépenses inutiles et d’améliorer l’efficacité opérationnelle. Pour plus d’informations, consultez Vue d’ensemble du pilier d’optimisation des coûts.

Cette solution utilise les pratiques suivantes pour optimiser les coûts :

  • Configurez correctement les caches chauds et le stockage froid pour les tables Raw et Signals. Le cache de données chaudes est stocké dans la RAM ou le SSD et offre des performances améliorées. Toutefois, les données froides sont 45 fois moins chères. Définissez une stratégie de cache chaud appropriée pour votre cas d’usage, par exemple 30 jours.
  • Configurez une stratégie de rétention sur les tables Raw et Signals. Déterminez quand les données du signal ne sont plus pertinentes, par exemple après 365 jours, et définissez la stratégie de rétention en conséquence.
  • Déterminez les signaux qui sont pertinents pour l’analyse.
  • Utilisez des vues matérialisées lors de l’interrogation des dernières valeurs connues des signaux, des signaux dédupliqués et des signaux sous-échantillonnés. Les vues matérialisées consomment moins de ressources que d’effectuer des agrégations de tables sources sur chaque requête.
  • Tenez compte de vos besoins en matière d’analytique des données en temps réel. La configuration de l’ingestion de diffusion en continu pour la table de télémétrie en temps réel permet une latence inférieure à une seconde entre l’ingestion et la requête, mais à un coût plus élevé d’un plus grand nombre de cycles processeur.

Efficacité des performances

L’efficacité des performances est la capacité de votre charge de travail à s’adapter efficacement aux demandes des utilisateurs. Pour plus d’informations, consultez Vue d’ensemble du pilier d’efficacité des performances.

  • Si le nombre et la taille des fichiers de données enregistrés dépassent 1 000 fichiers ou 300 Mo par jour, utilisez Azure Batch pour le décodage.
  • Effectuez des calculs et des analyses courants sur les fichiers après les avoir ingérés et stockés dans des tables supplémentaires.

Déployer ce scénario

Pour déployer Azure Data Explorer et ingérer des fichiers MDF, vous pouvez suivre le tutoriel pas à pas qui montre comment déployer une instance gratuite, analyser des fichiers MDF, les ingérer et exécuter des requêtes de base.

Contributeurs

Cet article est géré par Microsoft. Il a été écrit à l’origine par les contributeurs suivants.

Auteurs principaux :

Autres contributeurs :

Pour afficher les profils LinkedIn non publics, connectez-vous à LinkedIn.

Étapes suivantes