L'interopérabilité des données - SmartData by Ntico
L'interopérabilité des données
Introduction
Les données sont devenues un élément essentiel pour la prise de décision des entreprises. La multiplication des sources et des formats de données dans un SI en constante évolution crée un défi majeur : l’interopérabilité.
Le potentiel de partage et de réutilisation des données de l’entreprise dépend de leur qualité, de leur découvrabilité et de leur gestion globale.
Afin de pouvoir pleinement dégager ce potentiel, chaque entreprise doit développer l’interopérabilité de ses données selon plusieurs axes que nous allons détailler.
Pourquoi a-t-on besoin de gérer l’interopérabilité des données ?
L’interopérabilité des données est la capacité de différents systèmes et applications à échanger et à utiliser des données de manière efficace, tant dans un contexte opérationnel que analytique.
Amélioration des prises de décision
Améliorer la prise de décision grâce aux données est devenu un enjeu fort pour les entreprises et accéder à une vue complète des données qu’ils ont à disposition doit leur permettre de prendre des décisions plus éclairées et plus rapides, en réduisant les silos d’information.
Stimulation de l'innovation
Cela aura également pour effet de stimuler l’innovation en permettant aux différents acteurs de l’entreprise d’accéder à de nouvelles sources de données et ainsi de développer de nouveaux produits et services.
Optimisation de l'intégration des données
Il est tout aussi important de diminuer les efforts de transformation et d’intégration des données pour gagner en qualité de données et en homogénéité du code source tout en facilitant l’automatisation des processus.
Collaboration et productivité
Enfin, améliorer la collaboration et la productivité des équipes en réduisant le cold start permettra de réduire le time to market mais aussi de réaliser des économies importantes sur le build des solutions.
Formes d’interopérabilité des données
Les formes d’interopérabilité des données sont multiples, chacune répondant à des besoins spécifiques.
Technique
Nous allons parler d’interopérabilité technique dès lors qu’il est question de la capacité des systèmes à échanger des données via des formats et des protocoles standardisés.
Sémantique
Il s’agit d’interopérabilité sémantique lorsque l’objectif consiste à permettre à des systèmes, mais également des utilisateurs, de comprendre la signification des données échangées ou consommées grâce à l’utilisation d’un vocabulaire commun.
Organisationnelle
Enfin, la mise en place de processus et de règles communes qui permettent à l’entreprise de collaborer et de partager des données de manière transparente et efficace fait référence à l’interopérabilité organisationnelle.
Comment garantir l’interopérabilité des données ?
La mise en place de l’interopérabilité des données est un processus complexe qui nécessite une approche holistique. L’entreprise doit donc se saisir de chacun des sujets qui seront abordés ci-dessous dans leur globalité, dans un planning maîtrisé, traitant en priorité les points les plus lacunaires, leur permettant de gagner rapidement et/ou facilement en efficacité opérationnelle.
Gouvernance des données
Définition de politiques de gouvernance des données
Il est bien sûr évident que la première chose à faire pour l’entreprise sera de définir des politiques de gouvernance des données pour garantir la qualité, la sécurité et l’accessibilité des données.
En définissant des standards de qualité pour les données, comme par exemple la non publication d’un jeu de données affichant une qualité non contrôlée ou inférieure à un seuil défini, il sera possible de maîtriser en sortie la qualité des indicateurs affichés. La qualité d’une donnée se mesure au travers des caractéristiques qui lui sont propres, pour lesquelles il est possible de mesurer l’exactitude, l’exhaustivité, la cohérence, la validité, la fraîcheur, l’intégrité ou encore la clarté. Il faudra pour cela mettre en place des processus pour garantir que les données sont conformes à ces standards, comme des moteurs de scoring ou encore des dashboards de monitoring.
- Exactitude
Des données de bonne qualité commencent par être le reflet de la vérité. Et cela doit pouvoir se mesurer directement avec le système source. Il est alors possible de contrôler également la complétude des données.
- Actualisation / disponibilité
Mais une donnée exacte, si elle n’est pas actualisée régulièrement,risque de devenir obsolète et perdre toute utilité. Afin de pouvoir saisir toutes les opportunités, les données devront être disponibles au fur et à mesure de leur production , en cohérence avec les besoins des utilisateurs, allant du temps réel à J+1 généralement.
- Intégrité
Dans un objectif d’unicité des informations à l’échelle de l’entreprise, il convient de s’assurer qu’il n’y ait pas de doublons présents dans les données ni même dans les datasets exposés. Il est aussi important de garantir que les données de tous les systèmes de l’organisation soient bien synchronisées.
Couvrir un historique de données suffisant ainsi qu’une granularité fine pourra servir tous les besoins de calcul.
- Description / Gouvernance
La qualité descriptive des données réside dans leur facilité de localisation, leur interprétabilité et leur représentation cohérente. Afin de pouvoir garantir un accès facilité à la donnée, une entreprise doit être capable de retracer le lineage complet d’une donnée exposée, ceci jusqu’à sa source.
Des données décrites dans chaque couche de stockage seront facilement manipulées par les utilisateurs.
- Conformité / Sécurité
Enfin, les données, afin de servir au mieux la stratégie de l’entreprise, doivent respecter les normes et les règlements en vigueur dans l’espace où elles sont utilisées et être sécurisées de bout en bout en termes d’accès et de transport.
Mise en place de mesures de sécurité
La mise en place de mesures de sécurité pour protéger les données contre les accès non autorisés, la divulgation, la modification ou la destruction est essentielle. Ces mesures peuvent être techniques et contraignantes, elles peuvent également être organisationnelles et revues par du contrôle continu ou a posteriori. Il faudra outiller l’access management à minima puis dans un second temps la surveillance de ces accès au travers d’un SIEM (Security Information Event Manager).
Politique d'accès et outillage
La mise à disposition d’une politique d’accès aux données et d’un outillage dédié permettra aux consommateurs de trouver et d’utiliser les données dont ils ont besoin avec facilité et rapidité. Celle-ci peut relever par exemple des niveaux de confidentialité ou encore de la gestion des autorisations délivrées automatiquement en fonction du contexte métier / utilisateur.
L’un des points importants qu’il faudra garder dans le viseur est la sensibilisation des parties prenantes à l’importance de la gouvernance des données et les former aux processus et aux outils mis en place.
Standardisation
Il est admis qu’adopter des formats et des protocoles standardisés pour l’échange de données en utilisant des formats et des protocoles communs est une bonne pratique afin que les différents systèmes et applications puissent échanger des données de manière efficace.
Format de données
Il existe de nombreux formats de données différents, chacun ayant ses propres avantages et inconvénients. Quelques exemples de formats de fichiers les plus courants :
- CSV (Comma-Separated Values) : Format simple et largement utilisé pour stocker des données tabulaires.
- JSON (JavaScript Object Notation) : Format léger et facile à utiliser pour stocker des données structurées.
- Fichiers binaires : Formats spécifiques à une application pour stocker des données non structurées, comme des images ou des vidéos, ou structurées (Avro).
L’entreprise peut choisir de mettre en œuvre un seul ou plusieurs standards en fonction de son contexte technologique et des compétences des équipes.
Protocoles de communication
Les protocoles de communication définissent les règles et les procédures pour l’échange de données entre deux systèmes. Parmi les protocoles les plus courants en matière d’échange de données, on peut citer :
- FTP (File Transfer Protocol): Protocole utilisé pour le transfert de fichiers.
- SOAP (Simple Object Access Protocol): Protocole utilisé pour l’échange de messages XML entre des applications Web.
- REST (Representational State Transfer): Architecture logicielle pour les services Web.
Les entreprises seront souvent amenées à mettre en œuvre plusieurs protocoles de communication afin de pouvoir traiter leurs échanges de données avec la temporalité nécessaire à chaque cas d’usage (Batch vs Real Time).
Couche sémantique
La mise en place d’une couche sémantique dans l’exposition des données aux consommateurs doit permettre l’utilisation d’un vocabulaire commun dont le rôle sera de faire le pont entre la terminologie informatique, parfois contrainte par les systèmes sources, et les expressions métier de cette même donnée, en agissant comme une table de traduction.
L’utilisation de schémas décrivant les liens entre les données aidera également à la compréhension des données exposées. Le tout permettra d’associer facilement une signification aux données et de les positionner dans un domaine de connaissances.
Le second avantage à utiliser une couche sémantique réside dans la faculté d’exposer un modèle de données commun empêchant la survenue de problèmes d’écarts de données dû à l’utilisation de différentes sources de données.
Métadonnées
Les métadonnées servent à enrichir les données pour en faciliter la compréhension et l’utilisation. Il s’agit pour cela d’ajouter des informations, généralement sous forme de tags ou de labels, pour les décrire et les contextualiser. Il est possible d’ajouter des natures d’information très diverses dont les types seront le plus généralement : Business, Technique, Opérationnel, Suivi Utilisateur. – cf schéma.
Cela aura également pour effet d’améliorer la recherche et la découverte des données mais aussi a fortiori leur utilisation dans l’analyse et pour la prise de décision.
Il conviendra d’alimenter le plus possible les métadonnées automatiquement dès lors que les outils le permettent, mais il sera nécessaire d’investir du temps dans l’ajout manuel de ces dernières par les Technical Owners et Business Owners, car sans cet effort de documentation, le pari de la démocratisation des données est perdu d’avance.
Outils et technologies
La garantie d’une interopérabilité des données complète et efficace passe par la mise en place d’un socle technologique commun, partagé et mutualisé. Il sera constitué de différents outils permettant d’adresser les objectifs cités précédemment, mis à disposition sous formes de produits self-service facilitant les usages :
Le Catalogue de données
L’un des besoins à adresser prioritairement sera sans doute le Catalogue de données unique, permettant à toutes les parties prenantes de se retrouver en un point central.
D’une part les producteurs de données pour référencer, documenter et gouverner les données, d’autre part les consommateurs de données pour explorer, rechercher, et souscrire à l’utilisation des données. Il devra permettre de gérer tous les types de métadonnées définis comme étant mandatory par la gouvernance.
Pipeline de données
En second lieu, l’utilisation d’un outil de pipeline de données commun apportera des bénéfices substantiels dans la mise en oeuvre réussie de l’interopérabilité de vos données.
Un ELT/ETL mutualisé permettra de simplifier les échanges de données et alignera tous les utilisateurs sur des protocoles et moyens de déclenchements unifiés.
Cette mutualisation vise à permettre aux différents domaines de l’entreprise de provisionner des ressources techniques à la demande pour la conception et l’exploitation de leurs produits de données, ceci de façon simple et homogène, de sorte à faciliter la maintenance de tous les produits.
Nous adressons un double objectif grâce à cette logique en rationalisant le socle et les technologies utilisées à travers l’entreprise.
Deux éléments essentiels sont à prendre en compte lorsque vous pensez votre architecture autour de ce socle commun :
- Évaluer votre environnement technologique en tenant compte des systèmes et applications existants mais aussi et surtout des compétences internes et des budgets disponibles à court, moyen et long terme.
- Choisir une solution évolutive en privilégiant des solutions capables de s’adapter à l’évolution de vos besoins, le moins vendorlocked possible voire cloud provider agnostique.
Culture du partage
Dernier aspect favorisant l’interopérabilité (des données) en entreprise, mais pas des moindres.
L’encouragement d’une culture du partage et de la collaboration entre les différents services de l’entreprise au travers de l’innersourcing, mais aussi de la mise en place de communautés transverses, permettra de stimuler l’innovation au sein des équipes.
Conclusion
Nous pouvons constater, à la lecture de cet article, que les entreprises sont face à un vaste chantier lorsqu’il s’agit de l’interopérabilité des données.
Les parties prenantes sont nombreuses et leurs souhaits sont parfois compliqués à réconcilier au sein d’une même politique. C’est un véritable enjeu d’adoption qu’il faut gérer via un plan d’acculturation adapté favorisant ainsi la fédération des différentes équipes sur la ligne de conduite à adopter.
Ces efforts de convergence des pratiques ont alors un effet bénéfique visant à simplifier la collaboration et les développements ce qui conduira à démocratiser l’usage des données.
Dans le même temps, des économies d’échelle pourront être constatées sur le build mais aussi le run des solutions mises en œuvre dans le respect de la politique commune.
Deux éléments essentiels seront toujours à prendre en compte lorsque vous penserez à votre architecture autour de ce socle commun :
- Évaluer votre environnement technologique en tenant compte des systèmes et applications existants mais aussi et surtout des compétences internes et des budgets disponibles à court, moyen et long terme.
- Choisir des solutions capables de s’adapter à l’évolution de vos besoins, le moins vendorlocked possible voire cloud provider agnostique.
Événement Data Lille - Smart Data
SMART DATA
Événement Smart Data x Data Lille !
En septembre s’est déroulé le Meetup Data Lille sponsorisé par Ntico ! 🙌
À cette occasion, nous avons invité Kestra à venir présenter sa Plateforme de Data Orchestration, sur laquelle nous avons ensuite effectué un retour d’expérience relatant nos usages dans le cadre du développement de la solution #LoCXia 🚀
S’en est suivi un moment convivial qui a permis de continuer la discussion autour de nombreux sujets centrés sur le domaine de la Data ! 🤗
Événement Data - SmartData by Ntico
Événement Data
La communauté SmartData organise un événement !
C’est la rentrée pour la communauté SmartData by Ntico !
Et pour bien commencer le mois de septembre, on vous propose un événement, en partenariat avec Data Lille ! 🚀
Au programme : découvrez l’outil Kestra et notre retour d’expérience sur son utilisation lors du développement de LoCXia, plateforme de données géospatiales sur-mesure !
📅 26 septembre 2024 – 🕐 18h30
📍 Euratechnologies – 5ème étage (on espère que vous aimez les vues imprenables) – 🦽 Accessible
Pour vous inscrire, ça se passe ici : https://lnkd.in/eMY8VWYB
Airflow - SmartData by Ntico
Smart Engineering : Airflow ? Ça brasse du vent ?
Introduction
Non, Airflow ne brasse pas le vent mais plutôt des données !
Airflow est une plateforme servant à écrire, planifier et monitorer des flux de données programmatiquement.
Ils sont représentés sous la forme de DAGs (Directed Acyclic Graph).
Airflow a été créé par AirBnB en 2015 par Maxime Beauchemin. Le projet OpenSource a déjà fait l’objet de plus de 13 000 forks et affiche plus de 35 000 stars. Près de 2900 contributeurs font évoluer le produit le rendant utilisable par un nombre important d’entreprises en OSS sous Licence Apache.
Airflow est également disponible en Saas via la société Astronomer ou encore en PaaS sur les plateformes Google Composer et Amazon MWAA.
Ses principaux concurrents
Pourquoi l’utiliser ?
Airflow est très souvent utilisé pour opérer des workloads très gourmands en temps de traitement tels que les entrainement de modèles de machine learning.
Ce produit convient très bien au séquencement des traitements de données en permettant de chaîner les tâches entre elles au sein de workflows que vous pourrez ensuite planifier ou déclencher sur évènement.
Enfin il peut également jouer le rôle d’ELT principalement grâce à ses nombreux opérateurs.
Comment ça marche ?
Afin d’appréhender au mieux l’architecture technique et fonctionnelle de l’outil, il est nécessaire de partager un peu de vocabulaire. Voici donc les principaux termes qui composent le paysage technique d’Airflow :
Scheduler
Il est chargé de déclencher les DAG ainsi que les tâches en fonction de leur calendrier et de leurs dépendances. Pour ce faire, il surveille les tâches et lance les tâches dépendantes en aval une fois que les tâches en amont sont terminées. C’est ainsi qu’il soumet les tâches à un executor.
Worker
Ce sont les machines où les tâches sont exécutées. Cela peut être sur la même machine/nœud où le planificateur s’exécute, si l’on utilise des exécuteurs à nœud unique ou une machine/nœud dédiée si l’on utilise des exécuteurs à nœuds multiples.
Metadata Base
C’est la base de données qui stocke les états des flux de travail, la durée d’exécution, les emplacements des journaux, etc. Cette base de données stocke également des informations concernant les utilisateurs, les rôles, les connexions, les variables, etc.
Repo Dags
C’est le Repository où Airflow stocke tout le code des DAG. Il est accessible au scheduler, au webserver et aux workers.
Executor
Un executor est la partie du scheduler qui traite et gère les tâches en cours d’exécution. Airflow fournit différents types d’executors, notamment les principaux :
– exécuteur local
– exécuteurs multi-nœuds : Celery Executor, Kubernetes Executor
WebServer
C’est ce service qui sert l’interface utilisateur permettant de visualiser, de contrôler et de surveiller tous les DAG. Cette interface permet de déclencher manuellement un DAG ou une tâche, d’effacer les exécutions du DAG, de visualiser les états et les journaux des tâches et de visualiser la durée d’exécution des tâches. Elle permet également de gérer les utilisateurs, les rôles et plusieurs autres configurations d’Airflow.
Repo logs
C’est le repository où Airflow stocke les logs de toutes les tâches terminées. L’adresse de chaque tâche exécutée est stockée dans la base de données des métadonnées. L’utilisateur peut alors visualiser les logs à partir de cet emplacement via l’interface utilisateur du webserver. Airflow peut également être configuré pour définir un répertoire de logs distant, par exemple s3 ou GCS.
Les différentes architectures
Maintenant que l’on sait de quoi nous parlons, arrêtons nous sur les différentes architectures que l’on peut mettre en place pour installer Airflow.
Architecture technique Executor mono noeud
Architecture technique Executor multi noeuds Celery
Architecture technique Executor multi noeuds Kubernetes
- Dag : Décrit la façon dont est orchestrée une série de tâches qui forme un flux.
- Dag Run : C’est une instance d’un DAG fonctionnant à un moment donné.
- Operator : Décrit une tâche à exécuter de façon atomique.
- operator : une action à effectuer (shell, call api, python)
- transfer : un spécifique pour transférer des données (bq to gcs operator)
- sensor : déclencheur sur event (fichier sur s3)
- Task : Représente un opérateur paramétrisé
- Task Instance : C’est une instance d’une tâche exécutée à un moment donné avec un paramétrage précis.
- X-Com : Canal d’échange d’informations entre tâches sous forme de Key-Value.
Échantillon des opérateurs disponibles
Avantages et inconvénients
Langage de programmation
L’un des avantages mais aussi des plus gros inconvénients de Airflow est son langage de programmation, Python.
En effet, cela permet de disposer de beaucoup de profils tech sur le marché et d’accroître la productivité. Il est également possible d’introduire des logiques de programmation telles que la création de Dags dynamique en fonction des besoins. Mais cela engendre aussi des problématiques de maintenance du produit de façon générale et entraîne souvent des soucis de dépendances.
Scalabilité
L’autre point ambivalent de la solution est sa scalabilité.
Depuis la version 2 du produit, tous les services sont scalables horizontalement, rendant le produit hautement disponible et normalement tolérant aux fautes. Cependant il est difficile de gérer efficacement cette scalabilité sans exploser les coûts au niveau de la consommation des ressources de Compute.
Communauté
La communauté qui s’active autour du produit est un atout également, ne laissant jamais ses utilisateurs sans réponse aux nombreuses questions qu’ils peuvent se poser au détour de la learning curve assez importante qu’ils doivent acquitter pour être opérationnels sur des projets de production à l’échelle.
Le nombre d’opérateurs disponibles contribue également aux avantages du produit.
Développement
En revanche, l’impossibilité de développer directement depuis le frontend de la solution peut devenir assez rédhibitoire en fonction de la cible utilisateur que vous devez adresser, de même que l’absence de gestion d’un quelconque versionning des Dags sans un bon Source Code Manager en back.
Sécurité
Enfin, dès lors que l’on souhaite mutualiser une instance de Airflow sur plusieurs périmètres fonctionnels avec des utilisateurs en provenance de domaines différents, il devient très compliqué de sécuriser les opérations et les accès aux ressources.
Retex de nos interventions Clients Grands Comptes
Deux de nos clients ayant tenté l’aventure du traitement de données à l’échelle mondiale avec Airflow en mode Event Driven se sont frottés à différents problèmes
- Complexité des tâches simples : La création de workflows sans standardisation est une tâche fastidieuse.Cela peut créer beaucoup de bruit et ralentir les projets.
- Problèmes de fiabilité : Airflow s’est avéré peu fiable, les tâches échouant souvent à cause de l’orchestrateur lui-même plutôt que d’erreurs dans le code. Ces problèmes de fiabilité peuvent faire perdre beaucoup de temps, réduisant ainsi la productivité globale.
- Sécurité : La gestion des RBAC ainsi que des utilisateurs n’aide pas à sécuriser la plateforme de façon globale, rendant son utilisation difficilement mutualisable dans un contexte multi pays, multi projets, multi utilisateurs.
- Longs délais de traitement : Dans certains cas, la durée des flux de données orchestrés par Airflow était vingt fois plus longue qu’avec d’autres outils de flux. Airflow nécessite une quantité importante de ressources CPU et de mémoire pour gérer des charges de travail même modérées, ce qui entraîne une augmentation des coûts d’infrastructure et des goulots d’étranglement potentiels au niveau des performances.
En faisant en sorte de standardiser les développements au travers de la mise à disposition de Dags pré-développés ne nécessitant plus que du paramétrage, nous avons pu gommer une partie de ces irritants et en tirer quelques bénéfices :
- Homogénéisation des développements : onboarding plus rapide des nouveaux développeurs
- Respect des règles d’architecture
- Respect des règles de qualité de données
- Recentrage des développeurs sur le fonctionnel
- Amélioration du TimeToMarket
- Facilitation du Run
Cependant, cela ne nous a pas permis de contrebalancer totalement les pain points décrits plus haut, nous obligeant à trouver d’autres solutions.
Vous rencontrez les mêmes problématiques ? La meilleure alternative qui permet de traiter tous les points énoncés se trouve juste ici 👉 kestra.io
Les IA Génératives - SmartData by Ntico
Smart Innovation : les IA Génératives
Introduction
Fin Avril, Sébastien et la communauté SmartInnovation vous ont proposé d’explorer les dessous des IA génératives (GenAI) dans un premier volet consacré aux images. Le but était d’expliquer, et d’implémenter, des modèles permettant de générer de nouvelles informations observables à partir de représentations latentes.
Définition
L’IA générative inclut tout système de génération de données synthétiques, originales, proposant des motifs et des structures similaires à des données d’entraînement.
Il existe aujourd’hui des modèles pour générer des images, des textes, des vidéos, de la musique, ou bien de nouvelles molécules thérapeutiques.
Nous avons en préambule vulgarisé le rôle du hasard et de l’espace latent (représentation compacte des données) dans la génération de nouvelles données, en proposant une comparaison avec le rôle de l’ADN dans la morphogénèse d’un organisme.
Des modèles génératifs
Nous nous sommes ensuite intéressés à la définition et l’implémentation de 3 modèles génératifs :
– les auto encodeurs conventionnels
– les auto encodeurs variationnels
– les réseaux génératifs antagonistes (GAN)
Les auto encodeurs conventionnels
Les auto encodeurs sont un type de réseau de neurones dont le but est de reconstruire une image donnée avec comme contrainte une représentation intermédiaire de plus petite dimensions.
Cependant, les auto encodeurs ne proposent pas une représentation simple de l’espace latent. Il est donc difficile de l’échantillonner pour générer des nouvelles données.
Les auto encodeurs variationnels
Les auto encodeurs variationnels sont des modèles probabilistes qui fournissent des distributions latentes plus compactes, adaptées à la génération de nouvelles informations.
Les réseaux génératifs antagonistes (GAN)
Finalement, les GAN sont une des plus grandes innovations des 10 dernières années. Deux réseaux de neurones s’affrontent dans un jeu à somme nulle : un générateur G qui joue le rôle de ‘faussaire’ et dont le but est de créer des informations crédibles, et le discriminateur D qui joue le rôle d’expert dont le but est de distinguer les fausses informations des données réelles.
Mise en pratique chez Ntico
Après une analyse du pseudo-code d’un GAN et une implémentation en Java/Python, nous avons fait la démonstration d’une application interne de DeepFake, en temps réel, sur plusieurs collaborateurs Ntico.
Une fois l’apprentissage terminé, nous avons montré qu’il existait une arithmétique vectorielle dans les espaces latents permettant de réaliser des interpolations et extrapolations sémantiques sur des données.
Deep Fake
Arithmétique vectorielle
Conclusion
Nous avons vu comment certains modèles à base de réseaux de neurones profonds permettaient de créer de nouvelles informations (images) à partir d’un ensemble d’apprentissage.
Il est important de noter que de tels modèles ne sont pas de simples perroquets stochastiques. Ils sont capables d’apprendre les éléments structurants d’un type d’informations, et de créer de nouveaux éléments observables inédits respectant les mêmes structures.
En ce sens, les IA génératives s’inspirent des données réelles sans en faire des copies exactes.
Chez Ntico Logistics, les modèles génératifs sont créés pour générer des données synthétiques utilisables dans la simulation de processus logistiques (picking).
Une autre application prometteuse pourrait être la création de campagnes marketing contextualisées. En utilisant des photos d’un prompt et des images réelles de produits, les IA génératives peuvent être exploitées pour générer des visuels publicitaires attrayants et personnalisés.
Piloter son infrastructure plus intelligemment et efficacement - SmartData by Ntico
Piloter son infrastructure plus intelligemment et efficacement
Application à un projet interne : Locxia
Dans le cadre de Locxia, notre plateforme de données géospatiales sur-mesure, nous proposons à nos clients l’accès à 500+ indicateurs sur l’ensemble de la France métropolitaine : bâtiments (surfaces, matériaux, consommations, besoins en rénovation), végétation, piscines, risques, météorologie, fiscalité, pollution, connaissance du territoire, etc.. L’infrastructure qui soutient ce projet doit notamment répondre à plusieurs exigences :
- Une capacité de stockage significative
(volume variable en couche d’atterrissage + 2 To en couche de travail + 1 To en couche d’exposition ≈ 3.5 To)
- Ponctuellement, une capacité de traitement élevée
(dans le cas de l’intégration d’un nouveau jeu de données, d’un calcul d’indicateurs agrégés, calculs géomatiques (analyse géographique), etc.)
Chez Ntico, notre objectif est de maîtriser une infrastructure dynamique qui répond à ces exigences tout en optimisant le coût de revient et en réduisant le gaspillage.
- AWS IAM
Nous avons défini 2 rôles (un en lecture et un en écriture) sur les ressources taggées ‘locxia’. Le rôle d’écriture nous permet, via AWS CLI / Terraform, de créer une instance RDS en choisissant la taille allouée pour le stockage, la classe d’instance, le moteur de base de données, etc..
- AWS CloudWatch associé à Grafana :
Nous offre une visibilité en temps réel via le rôle de lecture sur les métriques (et les coûts !) des ressources taggées ‘locxia’. La commande correspondante est get-metric-data (permet de récupérer des données de métriques plus détaillées et flexibles que get-metric-statistics), mais il est également possible d’utiliser le mode stream vers S3. Cette combinaison nous permet de surveiller la performance du système (charge de travail du CPU, espace de stockage libre, utilisation du SWAP, opérations de lecture / d’écriture par seconde), tout en maîtrisant nos coûts et en évitant l’exploitation inutile de ressources.
- Un orchestrateur nous permet d’orchestrer l’ensemble de ces processus :
Il se charge notamment de :
- transférer les métriques CloudWatch vers la base de données à un rythme spécifique défini en paramètre pour consommation par Grafana
- créer / modifier / supprimer les instances selon les paramètres stockés dans la base
- collecter les métriques définies par service et par tâche (le rythme de surveillance d’un bucket S3 au repos n’est pas forcément le même que celui d’un EC2 en plein travail)
- transférer les données entre les différents services (de base à base, depuis l’extérieur vers S3, etc..)
Pour conclure : en intégrant de manière cohérente Terraform, Grafana, AWS IAM et AWS CloudWatch, nous assurons à Locxia une infrastructure automatisée, sécurisée, surveillée en temps réel et flexible. Cette approche permet à Locxia de répondre efficacement aux exigences de traitement et de stockage de données géospatiales, tout en optimisant les coûts associés et en évitant le gâchis de ressource.
Formation Data Rock Stars x SmartData - Ntico
SMARTDATA BY NTICO
Formation Data Rock Stars !
L’année se termine en beauté pour la communauté SmartData by Ntico ! 🙌
Ce mois de décembre marque la fin d’une période de formation dispensée par notre Partenaire DATAROCKSTARS dont le programme a été travaillé de façon collaborative avec nos équipes ! 🔝
L’occasion pour les membres de la communauté de travailler sur plusieurs axes au travers de sessions théoriques mais surtout de Labs de mise en situation ! 👨💻
Des participants actifs et impliqués 💪 des formateurs experts et engageants ✨ c’est ce qui nous permet de vous proposer des solutions innovantes dans l’accompagnement de vos projets Data !
Retrouvez l’article ICI ! 🚀
MeetUp Data Lille - SmartData
SMARTDATA
La communauté SmartData était présente au Meet Up Data Lille !
Début novembre, Ntico était présent dans le décor somptueux de la Chambre de Commerce et d’Industrie Grand Lille, accueilli par externatic et CleverConnect, dans le cadre d’un Meetup organisé par Data Lille 🚀
Une occasion parfaite pour Cloé et Florian de mettre en avant une partie des travaux de recherche réalisés pour le développement de notre solution LoCXia ! 🔝
Le sujet de la consolidation et l’analyse de données Open Source grâce au Deep Learning pour la détection de piscines 🏊 a beaucoup intéressé l’auditoire 🙌
Et non, nous n’avons pas aidé le Ministère des Impôts, Google et Capgemini dans leur recherche de détection de fraude à la déclaration des installations d’agrément de jardin 😁🏡
LoCXia, ce n’est pas que de la détection de piscines ! 👇
Nous avons plutôt une double ambition :
✅ Guider les retailers dans leurs ciblages et dans la personnalisation de leurs campagnes marketing
✅ Accompanger les collectivités dans la connaissance de leur territoire et l’aménagement de ce dernier, en termes de revégétalisation et de rénovation énergétique.
Retex Airbyte et DBT - SmartData by Ntico
SMARTDATA BY NTICO
Retex Airbyte et DBT
Il y a quelques mois, la communauté SmartData by Ntico vous présentait deux outils open source pour simplifier le transport et la transformation de vos données : Airbyte et DBT ! 🙌
Afin de vous apporter un meilleur angle de vision sur ces solutions, nous avons mis en oeuvre deux cas d’usage concrets représentant des besoins assez classiques de la gestion de données en entreprise, dont voici les premiers résultats 🚀
Continuez à nous suivre pour découvrir la suite 👀
Données internes x externes - SmartData by Ntico
SMARTDATA BY NTICO
SmartAnalystics : Données internes x externes
Un peu de légèreté durant ces congés bien mérités ? 🤗
Nous vous avons préparé une analyse qui croise des données externes avec les données de notre ERP. Le résultat ? Un aperçu de la distribution des congés au sein de Ntico ! 🏖️
Une note estivale qui démontre les possibilités offertes par les outils de viz du marché ! Et devinez quoi ? Nous avons concocté un exemple de tableau de bord PowerBI, rapide comme l’éclair à créer ! ⚡
La leçon à tirer de cette plongée dans les données ? 😄✅ Il y a toujours du monde chez Ntico pour répondre à vos besoins, même pendant la période estivale ! 🔝💪