top of page
Rechercher
Photo du rédacteurJocelyn Pichonnat

Apache Kafka et les bornes de recharges de véhicules électriques : épisode 3

Bienvenue dans le troisième et dernier article de la série “Kafka et les bornes de recharges de véhicules électriques” (le premier est ici, le second ).


Pour répondre à ces besoins, les entreprises de bornes de recharge utilisent des papache-kafka-et-les-bornes-de-recharges-de-véhicules-électriques-épisode-3rotocoles standardisés pour communiquer entre les bornes de recharge, les centres de gestion et les fournisseurs d'énergie. Des exemples de tels protocoles sont OCPP (Open Charge Point Protocol) et OCPI (Open Charge Point Interface). Cependant, l'utilisation de ces protocoles peut entraîner des problèmes tels que des temps de latence, un manque de données en temps réel, une complexité accrue pour la collecte et l'analyse de données historiques.


C'est là qu'entre en jeu Apache Kafka, une plateforme de streaming de données distribuée - dont je parle dans plusieurs de mes précédents articles - qui peut aider les entreprises de bornes de recharge à résoudre ces problèmes et à offrir de nouveaux services à leurs utilisateurs finaux.


Dans cet article, nous examinerons comment l'utilisation de Kafka peut aider les entreprises de bornes de recharge à améliorer leur réseau, à offrir des fonctionnalités et des données utiles à leurs utilisateurs, tout en utilisant les protocoles standardisés. Nous examinerons également les étapes à suivre pour utiliser Kafka dans ce contexte, ainsi que les contraintes à prendre en compte pour assurer une utilisation efficace de la plateforme.


Utilisation de Kafka dans les bornes de recharge pour véhicules électriques


Comme je l’avais mentionné dans les précédents articles, Kafka peut collecter des bornes de recharge via le protocole OCPP par exemple. Le protocole OCPP est un protocole standard qui permet la communication entre les bornes de recharge et les centres de gestion.


Il serait envisageable de développer des Kafka Producers ou d’implémenter un connector spécifique pour Kafka Connect Source pour recevoir les données des bornes de recharge via le protocole OCPP et les stocker dans un topic Kafka.


Une fois les données collectées dans un topic Kafka, il est possible de les transformer et de les agréger en fonction des besoins spécifiques de l'entreprise. Cette étape peut inclure des opérations de normalisation, de transformation des données en temps réel, de calcul des agrégats de données, etc. Kafka offre une grande flexibilité en matière de transformation et d'agrégation des données, grâce à son architecture distribuée et à son support pour des opérations complexes via Kafka Streams.


À cette étape, il est important de penser à conserver ces données raffinées vers une base de données ou autres moyens de stockage externe à Kafka. Apache Cassandra, MongoDB peuvent être des options parmi une liste plus grande. Cela peut permettre de sauver des coûts au niveau de votre Kafka, d’avoir une historisation plus simple et de brancher des applications d’analyses de données directement sur les bases de données.


Mais il est tout à fait possible encore une fois d’utiliser Kafka directement pour générer cette historisation avec des Kafka Streams qui utilisent des fenêtres de temps qui vous arrangent : jour, mois, année, jour de la semaine, jour de l’année…


Les Kafka Streams pourront vous aider à traiter les données en temps réel afin de détecter rapidement les anomalies et les problèmes sur le réseau de bornes de recharge et de prendre des mesures pour y remédier.


Considérations à prendre en compte pour l'utilisation de Kafka dans les bornes de recharge


L'utilisation de Kafka dans les bornes de recharge pour véhicules électriques présente certaines contraintes qu'il convient de prendre en compte pour assurer une utilisation efficace de la plateforme.


La latence et sémantique de livraison des données


L'une des principales contraintes est la latence, qui peut affecter la capacité de la plateforme à fournir des données en temps réel.


Avec les plateformes d’architectures événementielles, un trade off est à faire entre throughput (volume de données) et latence. Il faut donc paramétrer en conséquence les applications Kafka clients, ainsi que le dimensionnement du cluster Kafka lui-même et les réseaux qui les connectent.


Un autre point tout aussi important est la sémantique de livraison de données. Voulez-vous recevoir les données une seule et unique fois (exactly once), une fois mais pas plus (at most once) ou au moins une fois mais parfois dupliqué (at least once) ?


Le choix évident serait exactly once mais il entraîne justement une latence significative. Alors il serait judicieux de choisir at least once, qui garantit la livraison des données. Pour éviter tout doublon, il faudra alors que les applications consommatrices (Kafka Streams ou Consumer) aient un comportement idempotent.


Dimensionnement et complexité d’utilisation


La scalabilité est une autre contrainte importante à prendre en compte. Les entreprises de bornes de recharge doivent être en mesure de gérer des volumes importants de données en temps réel, ainsi que des données historiques sur le long terme. Pour garantir la scalabilité de la plateforme, il est important de choisir des technologies de stockage de données distribuées et de configurer correctement la plateforme Kafka pour gérer les clusters de données.


Il est nécessaire de déterminer les volumes de données par unité de temps, ainsi que la stratégie de rétention des données. Cela aura un impact sur la taille de l’espace de stockage nécessaire.


La mise en place d'une architecture Kafka peut être complexe et nécessite une expertise en la matière. Les entreprises de bornes de recharge devront investir dans la formation de leur personnel ou engager des consultants pour aider à la mise en place et à la maintenance de l'infrastructure Kafka. De plus, la complexité de l'architecture peut rendre difficile la compréhension et la résolution des problèmes lorsqu'ils surviennent. Le besoin de former les employés est essentiel pour la pérennité de la mise en place et l’usage de Kafka dans l’entreprise.


Si vous voulez en savoir plus sur comment réussir une transition vers Kafka, je connais un article qui pourrait vous intéresser :

Un autre document très intéressant est un rapport réalisé par l’université allemande de Passau qui partage la conception d’une architecture intelligente - à base de Kafka - qui a permis d’améliorer l'alimentation électrique dans les systèmes de distribution électrique pour les bornes de recharge.



Page 5 du rapport montrant l'architecture haut niveau avec l'intégration de Kafka


Conclusion


En conclusion, l'utilisation d'Apache Kafka peut offrir de nombreux avantages aux entreprises de bornes de recharge de véhicules électriques. En fournissant un flux de données en temps réel à partir des bornes de recharge, Kafka peut aider à améliorer la gestion du réseau électrique, ainsi que les services offerts aux utilisateurs finaux. En utilisant les protocoles standardisés comme OCPP et OCPI pour la communication, les données peuvent être intégrées de manière transparente dans les systèmes existants.


Cependant, il est important de noter que l'utilisation de Kafka peut également présenter des défis en matière de mise en œuvre et de maintenance. Les entreprises doivent prendre en compte les contraintes liées à la scalabilité, la complexité et la sécurité pour assurer une utilisation efficace de la plateforme.


En suivant les étapes décrites dans cet article et en prenant en compte ces contraintes, les entreprises de bornes de recharge peuvent exploiter les avantages de Kafka pour améliorer la gestion de leur réseau et offrir une meilleure expérience à leurs utilisateurs finaux.

Posts récents

Voir tout
bottom of page