Pratique de construction de la plate-forme d'analyse de données Internet des véhicules de Changan Automobile basée sur Apache Doris

Introduction : Alors que les demandes des consommateurs pour une expérience de conduite plus sûre, plus confortable et plus pratique continuent de croître, l’intelligence automobile est devenue une tendance inévitable. Le Changan Automobile Intelligent Research Institute, en tant qu'institution de recherche et développement relevant de Changan Automobile Group Co., Ltd., se concentre sur l'innovation et la recherche sur la technologie automobile intelligente. Afin de répondre aux besoins d'analyse de données de divers départements commerciaux, Changan Automobile a mis à niveau la plate-forme d'analyse de données de l'Internet des véhicules basée sur Apache Doris, qui prend en charge le traitement en temps réel de dizaines de milliards de données en une seule journée et atteint le deuxième niveau. réponse de niveau à des milliards de requêtes de données, ce qui offre à Changan Automobile l'opportunité d'améliorer les utilisateurs .

Auteur | Institut de recherche intelligente automobile de Changan

L'intelligence est une révolution dans l'industrie automobile. Elle vise à utiliser des technologies numériques de pointe telles que le big data, l'intelligence artificielle, le cloud computing et l'Internet des objets pour mener une perception, une analyse, une prise de décision et une exploitation globales des équipements et systèmes automobiles.contrôle, améliorant ainsi la sécurité, le confort, la commodité et les économies d'énergie de la voiture.

En tant qu'institution de recherche et développement relevant de Changan Automobile Group Co., Ltd., l'Institut de recherche intelligente automobile de Changan se concentre sur l'innovation et la recherche sur les technologies intelligentes automobiles. Sa vision est de réaliser une conduite intelligente, une connexion réseau intelligente et un transport intelligent grâce à l'innovation continue et percées technologiques, développement complet pour offrir aux consommateurs une expérience de voyage plus sûre, plus pratique et plus intelligente, et s'engage à devenir une entreprise leader dans le domaine des automobiles intelligentes en Chine.

L’une des clés de la réalisation de l’intelligence automobile est la nécessité d’établir une plate-forme de données stable et efficace pour transporter et utiliser des quantités massives de données de l’Internet des véhicules. En tant que soutien important au développement intelligent, le Changan Automobile Intelligent Research Institute est responsable de l'agrégation, du traitement et de l'application des données Internet des véhicules de l'ensemble du groupe Changan Automobile. Afin de répondre aux besoins de support de données mis en avant par divers départements commerciaux, une plate-forme d'analyse de données Internet des véhicules a été construite et des applications de données ont été mises en œuvre dans de nombreux domaines clés tels que l'analyse des indicateurs commerciaux, les systèmes de gestion de la qualité, la consommation d'énergie intelligente, diagnostic intelligent et opérations intelligentes.

Cet article présentera en détail l'évolution et l'expérience pratique de la plate-forme d'analyse de données Internet des véhicules de Changan Automobile, et partagera l'expérience pratique de Changan Automobile en matière de prise en charge du traitement en temps réel de dizaines de milliards de données par jour et d'obtention d'une réponse de deuxième niveau à des milliards de données. requêtes de données basées sur Apache Doris . En outre, l'introduction d'Apache Doris a également apporté des avantages significatifs à Changan Automobile en termes d'expérience utilisateur améliorée et de sécurité de conduite, et a fourni un soutien solide à la transformation et au développement de Changan Automobile de la mécatronique à l'intelligence .

Les défis rencontrés par l’intelligence automobile

Ces dernières années, Changan Automobile a réalisé une croissance impressionnante de ses ventes. De janvier à août, les ventes cumulées de véhicules de tourisme indépendants de Changan Automobile ont dépassé le million d'unités, maintenant une dynamique de développement en constante augmentation. La puissance de la marque et la compétitivité des produits de sa nouvelle série énergétique représentée par Deep Blue, Avita et Qiyuan ont continué de s'améliorer. les ventes de véhicules à énergies nouvelles se sont élevées à environ 256 000 unités, soit une augmentation de 102,44 % sur un an, devenant ainsi un nouveau moteur de la croissance des ventes.

Derrière l'augmentation rapide des ventes de voitures, les données de l'Internet des véhicules affichent une tendance à la croissance explosive, dont la plus importante est celle des données du bus CAN des véhicules. CAN est le réseau de zone de contrôleur. Grâce au bus CAN, divers systèmes de contrôle électroniques du véhicule peuvent être communiqués de manière unifiée. Pendant le fonctionnement réel du véhicule, les données du bus CAN constituent une garantie importante pour la sécurité, la fiabilité et les performances élevées du véhicule :

  • Surveillance et contrôle du système du véhicule : les données du bus CAN peuvent être utilisées pour surveiller et contrôler divers appareils et composants du système. Le capteur envoie ses valeurs mesurées, telles que la température, la pression, la position, etc., via le bus CAN afin que d'autres appareils ou contrôleurs puissent surveiller et prendre les mesures appropriées en temps réel. Dans le même temps, le contrôleur peut envoyer des instructions de contrôle à l'actionneur via le bus CAN, telles que le réglage des vannes, des moteurs d'entraînement, etc., pour contrôler le système.
  • Retour d'informations en temps réel sur le véhicule : les données du bus CAN peuvent être utilisées pour fournir des informations de retour en temps réel. Par exemple, dans les systèmes de contrôle des véhicules, les capteurs transmettent des données telles que la vitesse du véhicule, l'angle de braquage et l'état du freinage via le bus CAN. Le contrôleur peut prendre des décisions et des ajustements en temps réel sur la base de ces données pour garantir la sécurité et les performances du véhicule.
  • Partage et coordination des données : les données du bus CAN permettent le partage de données et la coordination entre différents appareils. Grâce au bus CAN, différents contrôleurs et appareils peuvent échanger des informations, partager l'état et les commandes de contrôle, ce qui contribue à améliorer les performances et l'efficacité globales du système.
  • Gestion du réseau et dépannage : les données du bus CAN sont utilisées pour la gestion du réseau et le dépannage. Grâce au bus CAN, l'identification, la configuration et la surveillance automatiques des équipements peuvent être effectuées pour faciliter la gestion et le dépannage du réseau, et améliorer la fiabilité et la maintenabilité du système.

À mesure que les ventes de véhicules connectés continuent de croître, les véhicules généreront chaque jour des centaines de milliards de données CAN, et les données nettoyées et traitées atteindront également le niveau de 5 milliards. Face à une échelle de données aussi énorme et en constante expansion, comment extraire et exploiter rapidement des données massives Des informations précieuses fournissent un support de données pour la R&D, la production, les ventes et d'autres départements, ce qui est devenu un problème urgent qui doit être résolu.

Si vous souhaitez fournir un support et des services de données de qualité, vous devez d'abord relever les défis suivants :

  • Écriture et traitement en temps réel de données à grande échelle : Afin d'atteindre l'intelligence, un grand nombre de capteurs sont installés sur les portes, les sièges et les feux stop des voitures. Chaque capteur collecte une ou plusieurs données de signal et les données sont agrégées. et ensuite transformé. . À l'heure actuelle, Changan Automobile doit prendre en charge les liaisons d'au moins 4 millions de véhicules. Le débit de données de l'Internet des véhicules par seconde a atteint un million de TPS, et l'ampleur des nouvelles données ajoutées chaque jour atteint des dizaines de téraoctets, et il continue de croître. Comment écrire des données en temps réel est devenu le principal défi auquel est confronté Changan Automobile.
  • Exigences d'analyse de données en temps réel précises et opportunes : L'analyse des données dans les scénarios Internet des véhicules nécessite généralement des performances en temps réel. L'obtention rapide des résultats d'analyse est une garantie importante pour des services tels que la surveillance en temps réel, le diagnostic des pannes, l'alerte précoce et l'analyse réelle des données. prise de décision en temps. Par exemple, dans le cadre du diagnostic intelligent, les constructeurs automobiles doivent collecter des données de signal pertinentes en temps quasi réel et localiser rapidement la cause du défaut. En analysant les données des capteurs du véhicule, les enregistrements de conduite, etc., les défauts potentiels peuvent être découverts à l'avance, une maintenance préventive peut être effectuée et la fiabilité et la sécurité du véhicule peuvent être améliorées.
  • Réduction des coûts de stockage et de calcul des données : Face à la croissance rapide des données et à la demande de plus en plus forte d'écriture et de calcul complets, les coûts de stockage et de calcul des données continuent d'augmenter. Cela nécessite que la plate-forme de données dispose de capacités de stockage et de calcul à faible coût pour réduire les coûts d'utilisation ; elle doit également disposer de capacités de mise à l'échelle élastique afin que les utilisateurs puissent rapidement augmenter la capacité pendant les périodes de pointe et améliorer l'efficacité de l'analyse des scénarios de calcul de données massives.

Afin d'offrir aux utilisateurs une meilleure expérience de conduite et de fournir aux services commerciaux un support de données plus précis et plus efficace, Changan Automobile a commencé à explorer et à mettre en pratique la construction d'une plate-forme Big Data.

L'entrepôt de données hors ligne Hive est difficile à prendre en charge des services de données en temps réel à très grande échelle

Entrepôt de données hors ligne Changan Automobile Internet of Vehicles-Hive.jpg

Changan Automobile a d'abord construit une architecture de plate-forme de données avec Hive comme noyau. Les données traitées incluent les données du bus CAN du véhicule et les données des points enterrés. Ces données sont transmises du véhicule à la passerelle cloud de Changan via le réseau 4G, puis la passerelle écrit le données à Kafka. Compte tenu des limites de l'ampleur des données et de l'espace de stockage, le processus de traitement des données dans la première architecture consistait à traiter les données collectées par Kafka directement via Flink et à stocker les résultats dans Hive via ETL. Les applications en aval utilisent Spark SQL pour effectuer des calculs hors ligne couche par couche et exporter des données récapitulatives vers MySQL via Sqoop. En fin de compte, Hive et MySQL fournissent respectivement des services de données pour la couche application.

Même si cette architecture répondait essentiellement aux besoins de traitement des données au début, alors que les ventes de véhicules continuaient de croître, alors qu'il fallait faire face à des centaines de milliards de tâches de traitement et d'analyse de données chaque jour, les problèmes de l'architecture sont progressivement apparus :

  • L'actualité des données ne peut pas être garantie : la vitesse d'importation de Hive est lente, en particulier lors du traitement de données à grande échelle, le temps d'importation augmente considérablement ; dans le même temps, certaines entreprises s'appuient sur des tâches hors ligne T+1, qui ne peuvent pas répondre aux besoins en temps réel. traitement des données ; de plus, Hive ne prend en charge que la couverture des partitions, ne prend pas en charge la mise à jour des données au niveau de la clé primaire et ne peut pas répondre aux besoins de mise à jour des données de scénarios spéciaux.
  • La latence des requêtes et des analyses de données est élevée : pour les requêtes de table à grande échelle supérieures à 1 milliard de niveaux, les performances des requêtes Hive sont lentes. Lors de l'exécution d'opérations hiérarchiques d'entrepôt de données via SparkSQL, le temps de démarrage et d'exécution des tâches sera plus long, ce qui aura également un impact sur la réponse aux requêtes. De plus, les tableaux de bord de données et les applications d'affichage BI ne peuvent pas être interrogés directement depuis Hive. Ils doivent exporter les données de Hive vers MySQL, qui fournit des services. Ceci est limité par les performances dérivées de Hive. Lorsque la quantité de données est importante, l'exportation vers MySQL prend beaucoup de temps et augmente, ce qui entraîne des temps de réponse aux requêtes plus longs. De plus, lors de l'interrogation de MySQL via le backend Java, un volume de données excessif affectera également le temps de réponse des données.

En fin de compte, la cause première de ces problèmes est que l'architecture initiale n'était pas en mesure de répondre aux besoins en données dans des scénarios de données en temps réel à très grande échelle, ce qui a obligé Changan Automobile à procéder à des mises à niveau de sa plate-forme.

Recherche et sélection techniques

Après des recherches approfondies, Changan Automobile a décidé d'introduire l'entrepôt de données open source en temps réel Apache Doris, qui présente des avantages significatifs en termes de performances d'importation, de requêtes en temps réel, etc. :

  • Méthodes d'importation de données riches : Doris fournit un ensemble riche de méthodes d'importation intégrées, telles que Broker Load et Stream Load, pour répondre aux besoins d'importation de données dans des scénarios en temps réel et hors ligne.
  • Prend en charge l'analyse des requêtes en temps réel : Doris possède des capacités exceptionnelles de jointure de grandes tables et fournit une variété de méthodes de jointure distribuées, ce qui rend l'écriture Join SQL très flexible et améliore considérablement l'efficacité de l'analyse des données. De plus, Doris prend en charge une concurrence ultra-élevée de dizaines de milliers de QPS sur un seul nœud , ce qui peut résoudre le problème de l'échec des requêtes dans les premières architectures en raison d'une concurrence frontale excessive.
  • Coût d'utilisation réduit : Doris est compatible avec le protocole MySQL.Les développeurs peuvent utiliser MySQL pour écrire et exécuter des instructions de requête plus efficacement et plus facilement, améliorant ainsi efficacement l'efficacité du développement. Basé sur l'architecture minimaliste de Doris, il simplifie non seulement le déploiement, l'exploitation et la maintenance, mais rend également les opérations d'expansion et de contraction plus pratiques et flexibles. Dans le même temps, Doris dispose d'un bon écosystème en amont et en aval, qui peut offrir aux utilisateurs une expérience de gestion et d'analyse de données flexible et efficace. Ces avantages et fonctionnalités ont considérablement réduit le coût d’utilisation de Doris.

De plus, l'activité de la communauté open source est également l'un des facteurs importants que nous prenons en compte . Apache Doris a attiré un grand nombre de développeurs et d'utilisateurs pour participer à la communauté et contribuer conjointement au code et améliorer Doris, qui joue un rôle clé dans l'amélioration de la qualité et de la stabilité. Dans le même temps, la communauté Doris fournit aux utilisateurs une documentation complète et un support technique, et toutes les questions peuvent recevoir une réponse et une aide rapides. L'activité d'Apache Doris nous permet de nous sentir plus à l'aise lors de son utilisation et résout les problèmes techniques.

Basé sur la plateforme d'analyse de données Apache Doris Internet of Vehicles

Changan Automobile Internet des véhicules-Internet des véhicules Plateforme d'analyse des données.jpg

Dans la nouvelle plateforme d'analyse de données de l'Internet des véhicules, les données Kafka peuvent être directement écrites dans Doris en temps réel en combinant Flink avec la fonction Stream Load de Doris. En même temps, la fonction Doris Broker Load peut être utilisée pour importer des données depuis Hive. dans Doris pour analyse et calcul. Dans cette architecture, Apache Doris est responsable du calcul et du traitement des données en temps réel, et sert également de résultat pour sortir directement les données vers la plate-forme commerciale en amont pour les appels.

Cette mise à niveau raccourcit le chemin de traitement des données sur le système et garantit la rapidité de l'importation de données à grande échelle. De plus, l'introduction d'Apache Doris fournit une prise en charge unifiée des services de données pour la couche application en amont, ce qui est crucial pour améliorer l'efficacité de l'analyse des requêtes. Les avantages spécifiques sont les suivants :

  • Écriture et migration pratiques des données : Doris prend en charge des formulaires d'importation de données riches et peut facilement importer des données à partir de différentes sources de données. Deuxièmement, Doris prend en charge l'importation rapide de données via l'insertion dans Select, sans avoir besoin d'une configuration lourde de migration de données ni d'introduction de composants de synchronisation externes.
  • Service de données unifié, réponse aux requêtes de deuxième niveau : grâce à la fonction Doris Multi-Catalog, les analystes de données peuvent interroger directement les données de Doris pour obtenir une réponse aux requêtes de deuxième niveau. Deuxièmement, Doris Join possède d'excellentes capacités et peut renvoyer des résultats en quelques secondes pour interroger des tables de résultats contenant plus de 10 millions de résultats.
  • Réduire les coûts de stockage et de calcul : dans les premières architectures, l'utilisation de Flink pour écrire des données en temps réel et les compresser nécessitait une grande quantité de ressources informatiques. Après l'introduction d'Apache Doris, l'algorithme de compression Doris ZSTD (amélioration du taux de compression 3 à 5 fois) peut réduire efficacement les ressources nécessaires au calcul et au stockage. Le processus de compression peut également être effectué dans Doris sans consommer les ressources informatiques de Flink.

De T+1 à T+0, les données en temps réel améliorent l’expérience de conduite intelligente

Les données du bus CAN jouent un rôle clé dans l'analyse du véhicule. Diverses informations d'état du véhicule peuvent être lues via le bus CAN, telles que la vitesse du véhicule, la vitesse de rotation, la température de l'eau, etc. Ces données sont d'une grande valeur pour analyser les données de conduite des véhicules et fournissent des informations de référence précieuses pour les unités de recherche et développement de véhicules.

Dans l'architecture initiale, les données CAN du véhicule étaient téléchargées sur la base de l'ID CAN comme dimension. Cependant, en utilisation réelle, les signaux des différents ID CAN doivent généralement être alignés en fonction du temps pour former un large tableau. Dans le passé, la solution d'architecture d'entrepôt de données écrivait d'abord les données de Kafka dans Hive. À cette époque, les données de différents ID CAN étaient stockées dans différentes lignes et SparkSQL T+1 devait être utilisé pour convertir les données en plusieurs différents domaines d'activité.Large table. Cependant, cette méthode de calcul prend beaucoup de temps, les instructions SQL sont difficiles à maintenir et la nature temps réel des données est médiocre.

Après avoir présenté Apache Doris, nous avons établi un large tableau dans le domaine métier basé sur le modèle d'agrégation Aggregate dans Doris, en utilisant le véhicule et le temps comme clés primaires, et d'autres champs de signaux ont été définis REPLACE_IF_NOT_NULL. détails comme suit :

Changan Automobile Internet des véhicules-données en temps réel.jpg

Tout d'abord, vous pouvez utiliser Flink pour consommer des données dans Kafka en fonction de la dimension CAN ID. Dans Flink, les données sont shuntées en fonction de la configuration de la table à l'échelle du domaine métier, et les signaux sur le même CAN ID sont alloués à l'entreprise correspondante. table à l’échelle du domaine. Lorsque les données du même véhicule avec différents ID CAN atteignent simultanément la même table à l'échelle du domaine commercial, ces données peuvent être remplies dans les champs de données de signal de différents ID CAN dans la même rangée pour réaliser la construction de la table large ( comme le montre la figure ci-dessus (exemple de tableau Doris).

Dans cette méthode, les données sont principalement détournées via Flink et envoyées à différentes tables à l'échelle du domaine commercial Doris (chaque table large contient environ 200 champs). La logique de génération des tables larges est placée dans Doris, au lieu d'effectuer des opérations d'alignement de tables larges dans Flink. La raison de cette conception est qu'il existe une certaine différence de temps entre les téléchargements de données de différents ID CAN. Lorsque la fenêtre de temps est trop grande, l'utilisation de Flink pour agréger en fonction des véhicules et du temps peut entraîner une surcharge excessive des ressources.

Grâce à la solution ci-dessus, la fraîcheur des données peut être améliorée de T+1 à T+0. Dans le même temps, pour les tables larges contenant environ 1 milliard de lignes de données, l'efficacité des requêtes peut être obtenue en quelques secondes, c'est-à-dire que lors de l'exécution de requêtes de vélo, les résultats de la requête peuvent être obtenus rapidement.

Requête en temps réel de 1 milliard de codes d'erreur DTC pour garantir la sécurité de conduite du véhicule.

Le DTC fait partie du message d'erreur dans les données CAN et est donc stocké en tant que données commerciales distinctes. Les données DTC quotidiennes peuvent atteindre 1 milliard de pièces. Pour que l'entreprise puisse utiliser ces données de manière pratique et efficace, effectuer rapidement un diagnostic des pannes et améliorer la sécurité des véhicules, il est nécessaire d'associer les données détaillées du code d'erreur DTC à une configuration commerciale MySQL. tableau.

Dans la première architecture, les développeurs devaient écrire quotidiennement des données DTC massives sur Kafka, puis les traiter en temps réel via Flink et stocker les résultats dans Hive. Il y a quelques problèmes avec cette approche :

  • Face à une table avec un volume de données de 1 milliard, il est difficile de l'importer dans MySQL pour une requête en temps réel. Si vous interrogez directement Hive, le temps de réponse des requêtes sera très long, ce qui rendra difficile la réponse aux besoins de l'entreprise.
  • Comme elle ne peut pas être directement associée à la table de configuration de MySQL, la table de configuration doit être importée régulièrement dans l'entrepôt de données Hive. Bien que cela puisse répondre aux besoins du traitement des données, cela perd la nature en temps réel de la configuration DTC.

Changan Automobile Internet des véhicules-requête en temps réel.jpg

Après l'introduction d'Apache Doris, les problèmes de la première architecture ont été résolus avec succès à l'aide de la méthode de traitement illustrée dans la figure ci-dessus. Tout d'abord, importez les données détaillées DTC de Hive dans Doris via l'importation de fichiers HDFS, puis créez la connexion au catalogue MySQL correspondante, et enfin utilisez Java back-end pour vous connecter à la base de données Doris via MyBatis, et utilisez SQL pour vous connecter à la table de configuration DTC de MySQL via le catalogue. pour Join.Opération, vous pouvez directement interroger et renvoyer les résultats en temps réel.

Une requête en temps réel sur 1 milliard de données a été réalisée avec succès via Apache Doris, et une requête de corrélation directe peut être effectuée sur la table de configuration MySQL associée, et la mise à jour en temps réel de la configuration a été réalisée avec succès .

Résumé et planification

Grâce aux excellentes performances d'Apache Doris, des dizaines de machines ont été déployées chez Changan Automobile, prenant en charge près de dix secteurs d'activité, et l'ampleur des données traitées chaque jour atteint des dizaines de milliards. L'introduction d'Apache Doris a apporté des résultats significatifs à Changan Automobile en améliorant l'expérience automobile des utilisateurs, en avertissant en temps réel des pannes des véhicules et en garantissant une conduite sûre des véhicules, et a fourni un soutien solide à son innovation technologique dans le sens de l'intelligence.

À l'avenir, Changan Automobile appliquera davantage Apache Doris dans le secteur des étiquettes et des indicateurs pour répondre aux besoins suivants :

  • Identifiez automatiquement les données chaudes et froides : stockez les données chaudes dans Apache Doris et les données froides dans Hive pour obtenir un accès et une gestion plus efficaces des données.
  • Élargir la portée de l'entreprise : optimisez le code SQL commercial Doris existant, profitez de certaines fonctionnalités et fonctions de Doris et migrez les entreprises adaptées à ces fonctionnalités vers Doris, améliorant ainsi l'efficacité du traitement des données et des requêtes.
  • Construisez une communauté ensemble : essayez activement d'utiliser la dernière version et les nouvelles fonctionnalités de Doris, suivez le rythme de la communauté et explorez et appliquez constamment de nouvelles technologies pour nourrir la communauté et contribuer au développement de la communauté.

Enfin, je remercie sincèrement la communauté Apache Doris et l'équipe technique de Flywheel Technology pour leur soutien actif. J'ai hâte de continuer à coopérer avec vous à l'avenir pour promouvoir le développement intelligent de Changan Automobile et offrir aux utilisateurs une meilleure expérience de conduite !

Alibaba Cloud a subi une grave panne et tous les produits ont été affectés (restaurés). Tumblr a refroidi le système d'exploitation russe Aurora OS 5.0. La nouvelle interface utilisateur a été dévoilée Delphi 12 & C++ Builder 12, RAD Studio 12. De nombreuses sociétés Internet recrutent en urgence des programmeurs Hongmeng. L'heure d'UNIX est sur le point d'entrer dans l'ère des 1,7 milliards (déjà entrée). Meituan recrute des troupes et envisage de développer l'application du système Hongmeng. Amazon développe un système d'exploitation basé sur Linux pour se débarrasser de la dépendance d'Android à l'égard de .NET 8 sous Linux. La taille indépendante est réduit de 50 %. Sortie de FFmpeg 6.1 "Heaviside"
{{o.name}}
{{m.nom}}

Guess you like

Origin my.oschina.net/u/5735652/blog/10143334