Seidor
Grafana, Timescale y Sentilo

14 mai 2024

Surveiller les villes intelligentes avec Grafana, Timescale et Sentilo

Intégrer l'open source dans Sentilo : Améliorations pour les villes intelligentes

Dans l'entreprise, nous construisons et maintenons Sentilo, une plateforme de capteurs et d'actionneurs open source pour les villes intelligentes. Dans le cadre de ce projet, nous cherchons toujours des moyens d'intégrer des outils open source qui peuvent économiser du temps et de l'argent tout en augmentant l'efficacité des smart cities.

Comme s'il s'agissait d'un puzzle, nous nous efforçons d'incorporer l'outil "Open source" qui s'adapte le mieux à chaque cas d'utilisation à mesure que de nouveaux besoins surgissent. Initialement, nous avons développé Sentilo en 2012 comme un petit projet IoT en collaboration avec la Mairie de Barcelone et aujourd'hui, nous disposons d'un produit mature soutenu par une communauté diversifiée d'entités publiques et privées. À titre de référence, l'instance de Barcelone Sentilo gère plus de 7,5 millions de messages par jour. SEIDOR maintient Sentilo pour plusieurs clients, tant par des déploiements "on premises" que par un service SaaS via sa spin-off Thingtia. Enfin, mais non des moindres, nous dirigeons la Communauté Sentilo grâce au soutien financier de la Mairie de Barcelone.

Dans le cadre de cette croissance, et dans le but d'élargir l'ensemble des modules qui soutiennent la plateforme, nous avons récemment intégré Grafana et TimescaleDB, qui sont devenus des éléments importants de notre solution de ville intelligente. Dans cet article, j'expliquerai pourquoi la demande d'un client nous a conduits à créer de nouvelles visualisations personnalisables avec Grafana qui ont aidé à améliorer une variété de processus dans les villes intelligentes.

Intégration de Grafana et Timescale

Un des principaux objectifs de Sentilo est de fournir des informations à ses modules abonnés le plus rapidement possible, ces modules étant généralement d'autres systèmes externes ou des sources de données, comme un système de surveillance de l'énergie ou un data lake d'entreprise. Pour ce faire, les données collectées par les capteurs de la ville intelligente (des véhicules, des panneaux électriques et plus encore) sont stockées en mémoire, ce qui nous offre des performances élevées… mais il faut garder à l'esprit que la mémoire est coûteuse. Ce référentiel de données n'est que temporaire ; nous avions besoin d'un stockage à long terme pour les données historiques.

Pour certaines de nos implémentations de Sentilo, les utilisateurs ont leurs propres data lakes (lacs de données), c'est pourquoi nous avons un ensemble de connecteurs pour différents dépôts de destination, tels que Kafka, Elasticsearch et les bases de données relationnelles les plus courantes du marché. Mais ce type de configuration ne fonctionne pas pour tous les scénarios en raison de leur volumétrie et/ou coût. Pour cette raison, lorsqu'un de nos clients nous a demandé de créer son dépôt historique à partir de zéro et de l'intégrer à sa plateforme Sentilo, nous avons dû évaluer plusieurs solutions pour fournir la solution adéquate pour le cas d'utilisation.

Nous avions besoin de quelque chose qui nous aide à traiter l'information en temps réel et nous permette d'explorer et de découvrir des données historiques à travers un outil visuel interactif basé sur le web. Nous avions une certaine expérience préalable dans l'utilisation de Grafana pour la surveillance du système et nous connaissions ses excellentes caractéristiques et les multiples sources de données intégrables. Par conséquent, après avoir analysé d'autres options sur le marché et réalisé plusieurs PoC, nous avons décidé d'opter pour la combinaison suivante :

  • Timescale. Cette base de données de séries temporelles open source, basée sur PostgreSQL, offre des performances élevées et une évolutivité même avec de grands volumes de données. Elle nous fournit également un langage de requête connu comme SQL.
  • Grafana. Cet outil de visualisation open source dispose d'un grand ensemble de tableaux de bord puissants. De plus, il offre des fonctionnalités intéressantes pour nos cas d'utilisation, telles que la possibilité d'intégrer du contenu, le support multi-utilisateurs et le partage de tableaux de bord.
Sentilo

Comme on peut le voir dans le diagramme d'architecture, notre plateforme de ville intelligente repose sur une combinaison de bases de données, de capteurs, de connecteurs et d'outils. Voici une brève description de la manière dont ces éléments interagissent :

  • Sentilo stocke les données des capteurs dans deux bases de données différentes : Redis pour les données en temps réel et MongoDB pour les métadonnées du catalogue des capteurs.
  • L'API de Sentilo fournit des services pour interagir avec le catalogue et pour publier les données en temps réel (1). Ensuite, les données sont stockées dans le dépôt correspondant (2).
  • Un connecteur Sentilo personnalisé, basé sur une architecture d'agent commun qui reçoit le flux de données de Redis, reçoit les informations et les stocke dans TimescaleDB (3).
  • Les métadonnées des capteurs sont synchronisées périodiquement avec la base de données Timescale en utilisant un autre module sur mesure (4).
  • Sentilo fournit une interface web pour différents objectifs de gestion (5). Les administrateurs peuvent gérer leur catalogue et visualiser les données en temps réel. Et grâce à Grafana, les utilisateurs peuvent explorer la base de données historique et créer des tableaux de bord spécifiques (6).
  • Sentilo inclut également une interface web axée sur les citoyens, où tout citoyen peut explorer la carte de la ville, visualiser les capteurs et leurs données d'accès public.

Grâce à Grafana, nous pouvons offrir des visualisations plus riches et interactives adaptées à des secteurs ou typologies spécifiques qui peuvent être intégrées sans problème dans le site web public de la plateforme.

Cette solution a été mise en œuvre pour les instances Sentilo de la Région Intelligente de Barcelone et pour la Mairie d'Ibiza (Espagne) via Thingtia. Elle nous offre un cadre interactif de recherche et de découverte sur de grands volumes de données (millions) et de larges périodes temporelles (années) avec des performances et des temps de réponse optimaux.

CESVA

Les panneaux Grafana sont intégrés dans le visualiseur public standard de Sentilo et sont liés à différents secteurs : surveillance du bruit, qualité de l'air, irrigation, sources d'eau et surveillance de l'énergie. Nos clients peuvent créer leurs propres tableaux de bord puissants de manière autonome et les partager avec d'autres membres de la communauté Sentilo.

Grafana

Utilisation de Grafana pour obtenir de la valeur à partir du Big Data

Bien sûr, il faut toujours garder à l'esprit que lorsque vous travaillez avec de grands volumes de données et appliquez des filtres, vous devez optimiser les requêtes, ajouter des index ou limiter les données que le tableau de bord peut gérer, surtout si ces fonctions sont ouvertes au public. C'est important si vous souhaitez maintenir les coûts bas et fournir des résultats rapides lors de l'exécution de vos requêtes.

Pourtant, la solution s'est avérée être une bonne approche pour travailler avec de grandes quantités de données. Elle nous a aidés à explorer et découvrir des données, et nous pouvons extraire des informations précieuses en combinant différentes sources. C'est aussi une bonne façon de créer des tableaux de bord puissants qui peuvent être facilement intégrés dans d'autres sites web de la ville.

Si vous souhaitez obtenir plus d'informations sur le fonctionnement de Sentilo ou comment vous pouvez l'incorporer dans vos propres plans de ville intelligente, vous pouvez consulter la communauté de Sentilo. Vous pouvez télécharger le code gratuitement, l'utiliser comme SaaS ou nous contacter pour construire une solution sur mesure.

Peut-être que cela pourrait vous intéresser

14 mai 2024

L'équipement nécessaire pour votre projet d'Intelligence Artificielle

Découvrez les trois rôles essentiels pour le succès de tout projet d'intelligence artificielle : le data scientist, le technicien IT et l'expert du domaine, et comment leur collaboration stimule l'innovation.

AI
14 mai 2024

Les défis de l'application de l'intelligence artificielle

Découvrez les défis de la mise en œuvre de l'intelligence artificielle dans les entreprises et comment surmonter les obstacles liés aux données et au personnel spécialisé. Apprenez-en davantage sur le concept de la courbe en J et les solutions d'IA prêtes à l'emploi.

AI
14 mai 2024

L'importance des architectures modulaires dans les applications mobiles

Edge Technologies