Discipline : Data engineering et analytics décisionnel

Valorisation éthique du patrimoine informationnel via collecte responsable, structuration sémantique (Clean Data) et indicateurs actionnables pour l’IA.
Clean Data, gouvernance des données, analytics décisionnel, data quality, JSON-LD, données multilingues, Omeka S

  • Système de fichiers distribué

    Un système de fichiers distribué est un moyen de gérer du stockage à grande échelle de façon fiable et collaborative, en répartissant les données sur un réseau d’ordinateurs

    Un système de fichiers distribué est comme une bibliothèque géante dont les livres sont répartis dans plusieurs bâtiments, mais que vous pouvez consulter depuis un seul endroit.

    Il permet de stocker des fichiers sur plusieurs ordinateurs en même temps, tout en les faisant apparaître comme s’ils étaient sur un seul disque.

    Cela rend le stockage plus résistant (si un ordinateur tombe en panne, les fichiers ne disparaissent pas), plus rapide (plusieurs machines peuvent travailler en parallèle), et évolutif (on peut ajouter de nouveaux ordinateurs quand on manque de place).

    Exemples de systèmes de fichiers distribués

    NomÀ quoi ça sert ?Pour qui / dans quels cas ?
    HDFS (Hadoop Distributed File System)Stocke de très gros volumes de données pour l’analyse (big data)Entreprises ou chercheurs traitant des millions de documents, logs, ou données scientifiques
    CephOffre du stockage unifié : fichiers, blocs (comme un disque dur virtuel) et objets (comme dans le cloud)Infrastructures cloud privées, centres de données modernes
    GlusterFSCrée un espace de stockage partagé à partir de serveurs standardsPetites/moyennes infrastructures auto-hébergées, web clusters
    IPFS (InterPlanetary File System)Stocke des fichiers de façon décentralisée sur Internet, sans serveur centralProjets web résilients, archivage décentralisé, Web3
    LustreAccélère l’accès aux données dans les supercalculateursCalcul scientifique intensif (météo, physique, génomique)
    MinIOStockage objet haute performance, compatible avec Amazon S3Développeurs cloud, microservices, sauvegardes automatisées
  • Dataset FAIR

    Données conçues pour être trouvées, comprises et réutilisées par des humains et des machines sans dépendre d’un intermédiaire centralisé.

    Un dataset FAIR n’est pas une théorie abstraite : c’est une manière pratique de préparer, documenter et partager des données pour qu’elles soient immédiatement utiles à vous, à vos collègues, à une API, ou à un futur projet.

    Le jeu de données est conçu selon les principes FAIR Findable (trouvable), Accessible (accessible), Interoperable (interopérable), Reusable (réutilisable) afin de maximiser sa découvrabilité, sa réutilisation éthique et sa persistance, sans dépendre des plateformes propriétaires.

    Les 4 piliers :

    • Findable : doté d’un identifiant persistant (ex. : DOI, handle, CID IPFS) et de métadonnées riches (ex. : JSON-LD, Schema.org).
    • Accessible : téléchargeable via un protocole ouvert (HTTP, IPFS), même si l’accès est restreint (ex. : authentification, licence).
    • Interoperable : utilise des formats ouverts (CSV, JSON, RDF) et des vocabulaires partagés (ex. : Wikidata, ISO 639-3 pour les langues).
    • Reusable : accompagné d’une licence claire (ex. : CC-BY-SA, ODC-BY) et de contexte (auteurs, langue, usage visé).

    Pourquoi c’est important ?

    Parce que dans la vraie vie, les chercheurs, les journalistes, les professeurs ou les citoyens ont besoin de données fiables et partageables pour :

    • Comprendre le climat,
    • Sauver des vies avec la médecine,
    • Protéger les langues rares,
    • Ou créer des outils utiles pour tout le monde.

    Mais si les données sont cachées, mal rangées, sans explication ou verrouillées, elles deviennent inutiles.

    Exemple concret

    Vous exportez la liste des utilisateurs inscrits à une formation en ligne (anonymisés) :

    • Non FAIR : liste_participants.xlsx envoyé par email.
    • FAIR :
      • Fichier participants.csv + metadata.json (avec Schema.org),
      • Hébergé sur GitHub avec DOI via Zenodo,
      • Licence : CC BY 4.0,
      • Champs : user_id (UUID), signup_date (ISO 8601), country (code ISO 3166),
      • README expliquant la méthodologie et la politique d’anonymisation.

    Un chercheur en éducation peut intégrer vos données dans une méta-analyse mondiale… sans vous relancer.

    Pourquoi c’est utile ?

    • Automatisation : vos propres outils peuvent consommer ces données plus tard.
    • Crédit : chaque réutilisation cite votre travail.
    • Conformité : exigence croissante des financeurs publics (ANR, UE, etc.).
    • Impact : vos données deviennent une ressource du commun numérique, pas un fichier mort.

    FAIR, c’est transformer un simple export de base de données en une brique réutilisable de l’infrastructure numérique publique.

  • Massification des données disponibles

    Phénomène de production et de stockage exponentiels de données numériques, généré par les usages quotidiens (réseaux sociaux, objets connectés, transactions, logs, géolocalisation, etc.), dépassant largement les capacités humaines et techniques de traitement, d’analyse ou de compréhension.

    Cette massification ne répond souvent à aucune finalité explicite : les données sont collectées « au cas où », dans une logique d’accumulation extractiviste, alimentant des infrastructures coûteuses en énergie, en stockage et en surveillance.

  • Modélisation des données

    La modélisation des données consiste à concevoir la structure logique qui décrit comment les données sont organisées, liées et stockées.

    Dans un monde où les données proviennent de sources très diverses structurées (bases SQL), semi-structurées (JSON, logs) et non structurées (textes, images) — la modélisation classique (tables rigides) devient insuffisante.

    Il faut alors adopter des schémas flexibles ou des modèles orientés graphe, capables de :

    • Accueillir des formats variés,
    • Représenter des relations complexes (ex. : « cet utilisateur a consulté cette page, puis a mentionné ce lieu sur Twitter »),
    • Évoluer sans casser l’ensemble du système.

    L’objectif n’est plus seulement de stocker, mais de relier avec du sens une démarche au cœur du web sémantique et de la documentation intelligente.

    Exemple concret : la vue 360° du client

    Pour comprendre un client dans sa globalité, une organisation peut fusionner :

    SourceType de donnéesStructure
    CRM (ex. : HubSpot, Salesforce)Identité, historique d’achat, statutStructurée (tables relationnelles)
    Logs de navigation (site web, app)Pages visitées, temps passé, parcoursSemi-structurée (JSON, événements horodatés)
    Réseaux sociaux (commentaires, mentions)Opinions, émotions, hashtagsNon structurée (texte libre, images)

    Comment les relier ?

    • Un modèle en graphe permet de représenter :
      • Le client comme un nœud central,
      • Ses interactions (achats, clics, commentaires) comme des arêtes,
      • Les entités mentionnées (produits, lieux, émotions) comme d’autres nœuds.
    • Grâce à des techniques comme le NER (Named Entity Recognition) ou le linking sémantique, on peut relier « Paris » dans un tweet à wd:Q90 (Wikidata), ou « produit X » à une fiche produit normalisée.

    Résultat : une représentation riche, dynamique et interopérable du client, bien plus utile qu’un simple tableau Excel.

    Technologies associées

    ApprocheOutils / standards
    Modèle en grapheNeo4j, Apache Jena, GraphDB, RDF/OWL
    Schémas flexiblesJSON Schema, Avro, MongoDB (schema validation optionnelle)
    Lien sémantiqueWikidata, Schema.org, ontologies SSN/SOSA (IoT), SKOS
    Enrichissement NLPspaCy, Stanza, transformers (Hugging Face)
  • Modélisation linéaire

    La modélisation linéaire est l’un des fondements de la statistique et de l’apprentissage automatique : simple, interprétable, et souvent un excellent point de départ.

    C’est une méthode statistique qui consiste à représenter la relation entre une ou plusieurs variables explicatives (entrées) et une variable cible (sortie) à l’aide d’une fonction linéaire c’est-à-dire une droite (en 2D) ou un hyperplan (en dimensions supérieures).

    La modélisation linéaire cherche à expliquer ou prédire une grandeur (comme le prix d’une maison, la consommation d’énergie, etc.) à partir d’autres grandeurs, en supposant que leur lien peut être approximé par une ligne droite.

    Objectifs :

    • Comprendre l’influence de certaines variables sur un phénomène.
    • Prédire des valeurs futures (ex. : ventes, température).
    • Quantifier la force et le sens (positif/négatif) des relations.

    Outils courants :

    • En Python : scikit-learn (LinearRegression), statsmodels
    • En R : fonction lm()
    • En Excel : outil « Régression » ou courbe de tendance
  • Datavisualiseur

    Un datavisualiseur est un outil ou une plateforme de visualisation de données orientées utilisateur, conçue pour transformer des ensembles de chiffres en graphiques clairs, accessibles et esthétiquement professionnels, sans nécessiter de compétences en codage.

    Il intègre nativement les bonnes pratiques de design informationnel (haut ratio data-encre, contraste adapté, hiérarchie visuelle) et respectent les normes d’accessibilité numérique (WCAG), tout en permettant une intégration fluide dans les environnements web, éditoriaux ou présentationnels.

    Cet outil s’adresse aux journalistes, analystes, enseignants, communicants ou décideurs souhaitant communiquer des données avec rigueur, transparence et impact visuel immédiat.

    Ex. : Datawrapper ou Flourish

  • Analyse de données – Data Analytics

    Discipline qui consiste à explorer, transformer, modéliser et visualiser des données afin d’en extraire des insights actionnables, valider des hypothèses ou soutenir la prise de décision. Contrairement au simple reporting, le data analytics implique souvent une démarche itérative, combinant nettoyage, agrégation, statistique descriptive, et parfois apprentissage automatique léger.

    Technologies et outils associés

    1. Langages & bibliothèques (auto-hébergeables, open source)

    • Python :
      • pandas (manipulation de données tabulaires),
      • NumPy (calcul numérique),
      • Matplotlib / Seaborn / Plotly (visualisation),
      • scikit-learn (modélisation statistique simple),
      • Polars (alternative rapide à pandas, orientée performance).
    • R : langage statistique puissant, idéal pour l’analyse exploratoire et les rapports reproductibles (via R Markdown).
    • SQL : indispensable pour interroger bases relationnelles (PostgreSQL, MySQL).

    2. Bases de données & entrepôts

    • PostgreSQL (+ extensions comme PostGIS pour données géospatiales) : base libre, robuste, supporte JSON/JSONB pour données semi-structurées.
    • SQLite : léger, sans serveur, idéal pour analyses locales ou embarquées (ex. : logs de site statique).
    • ClickHouse / DuckDB : moteurs analytiques ultra-rapides pour gros volumes (DuckDB fonctionne en mémoire locale, très adapté au data analytics décentralisé).

    3. Outils d’ETL / ELT (Extract, Transform, Load)

    • Apache Airflow : orchestration de pipelines de données (open source, auto-hébergeable).
    • Prefect ou Dagster : alternatives modernes à Airflow, plus simples à déployer localement.
    • dbt (data build tool) : transformation de données dans la base elle-même (via SQL modulaire), compatible avec DuckDB, Postgres, etc.
    • Python scripts + cron : approche minimaliste mais efficace pour automatiser des flux simples (ex. : extraction de logs → nettoyage → CSV chiffré sur NAS).

    4. Visualisation & BI (Business Intelligence)

    • Metabase : outil BI libre, auto-hébergeable, interface intuitive, connexion à PostgreSQL/MySQL/SQLite.
    • Apache Superset : plus puissant, orienté dataviz avancée (cartes, graphes, dashboards interactifs).
    • Grafana : excellent pour les séries temporelles (logs, métriques), couplé à Prometheus ou InfluxDB.
    • Observable Notebooks (ou Quarto) : environnements reproductibles pour analyses partagées, avec intégration JavaScript/D3.

    5. Analytics web respectueux de la vie privée

    • Plausible Analytics : léger, conforme RGPD, auto-hébergeable, alternative éthique à Google Analytics.
    • Matomo (anciennement Piwik) : solution complète d’analytics open source, avec tracking avancé, mais plus gourmande.
    • Fathom Analytics : autre alternative minimaliste et respectueuse de la vie privée.

    6. Environnements de développement

    • Jupyter Notebook / JupyterLab : standard pour l’exploration interactive (Python, R, SQL).
    • VS Code + extensions Python / Jupyter : IDE moderne, compatible avec ton workflow GitHub Copilot.
    • Docker : pour containeriser les environnements d’analyse (reproductibilité, isolement).
  • Ploty

    Ploty une bibliothèque open source utilisée pour créer des visualisations de données interactives et dynamiques

    Il peut être intégré avec plusieurs langages de programmation, notamment Python, R, MATLAB, et JavaScript

    Ploty offre également Dash, un framework basé sur Plotly pour créer des applications web analytiques interactives avec Python.

    Dash Ploty

    Ploty

  • Pétaoctet – petabyte

    Un pétaoctet (symbole : Po ou PB en anglais petabyte) est une unité de mesure de la capacité de stockage numérique.

    1 pétaoctet = 10¹⁵ octets = 1 000 000 000 000 000 octets
    (dans le système décimal, utilisé notamment par les fabricants de disques durs et les services de stockage cloud).

    Dans le système binaire (utilisé par certains systèmes informatiques), on parle parfois de pébioctet (PiB) :

    • 1 pébioctet = 2⁵⁰ octets1 125 899 906 842 624 octets

    Pour donner une idée d’échelle

    • 1 Po ≈ 250 000 DVD (en supposant 4,7 Go par DVD)
    • 1 Po peut stocker environ 13,3 années de flux vidéo HD continu (à 20 Mbps)
    • Les grands centres de données (comme ceux de Google, Meta ou AWS) gèrent des volumes de données de l’ordre de centaines de pétaoctets à plusieurs exaoctets (1 Eo = 1 000 Po)

    Contexte d’usage

    Le pétaoctet est couramment utilisé pour décrire :

    • La capacité de stockage des data centers
    • Le volume de données traitées dans les domaines de la science des données, du big data, de l’IA générative, ou de l’archivage numérique
    • Les quotas ou capacités de services cloud à grande échelle
  • Pipeline ETL

    Un pipeline ETL (Extract, Transform, Load) est un processus automatisé qui permet de :

    1. Extraire des données depuis une ou plusieurs sources (bases de données, fichiers JSON, APIs, capteurs, etc.)
    2. Transformer ces données : les nettoyer, les reformater, les enrichir, les relier, les valider…
    3. Charger le résultat dans un système cible (entrepôt de données, base analytique, modèle d’IA, tableau de bord)

    Un pipeline ETL devient sophistiqué lorsqu’il intègre :

    FonctionnalitéExplication
    Gestion de schémas évolutifsAdapte la transformation même si les sources changent (ex. : nouveau champ dans une API)
    Nettoyage intelligentCorrige les fautes, normalise les formats (dates, noms de lieux), supprime les doublons
    Enrichissement sémantiqueLie les données à des référentiels externes (Wikidata, HAL, Thésaurus) via URIs ou ontologies
    Traçabilité & auditEnregistre d’où vient chaque donnée, qui l’a modifiée, et comment
    OrchestrationPlanifie, relance et surveille les flux (ex. : tous les soirs à 2 h)
    Gestion des erreursIsole les données problématiques sans bloquer tout le pipeline

    Exemple concret

    Objectif : Créer un jeu de données unifié pour entraîner un modèle d’IA qui recommande des ressources pédagogiques en géographie.

    Sources hétérogènes :

    • Fichiers CSV d’un ENT scolaire (élèves, classes)
    • Export XML d’Omeka S (ressources documentaires)
    • Données JSON d’une API Wikidata (lieux, concepts)
    • Métadonnées EXIF d’images pédagogiques
    • Logs d’usage du LMS

    Pipeline ETL sophistiqué :

    1. Extraction : Récupère chaque source via connecteurs adaptés (SQL, REST, fichier local).
    2. Transformation :
      • Normalise les noms de régions (ex. : « Île-de-France » vs « Ile de France »)
      • Géocode les lieux manquants via Nominatim
      • Lie chaque ressource à une entité Wikidata (wd:Q456)
      • Anonymise les identifiants élèves (RGPD)
      • Convertit tout en RDF/JSON-LD pour cohérence sémantique
    3. Chargement : Stocke le résultat dans un entrepôt orienté graphe (ex. : Apache Jena) ou un format prêt pour le ML (Parquet + embeddings).

    Le modèle d’IA reçoit alors des données propres, interopérables et contextualisées.

    Outils courants pour pipelines ETL sophistiqués

    OutilTypePertinence pour toi
    Apache SparkTraitement distribuéIdéal pour gros volumes (ex. : corpus HAL)
    DaskAlternative Python légèreIntégration facile avec Pandas, bon pour prototypage
    AirflowOrchestration de workflowsPlanification, monitoring, gestion des dépendances
    Prefect ou DagsterOrchestration moderneMeilleure observabilité, versioning des données
    OpenRefineNettoyage interactifExcellent pour préparer des jeux documentaires
    RML / Morph-KGCMapping sémantiqueTransforme CSV/JSON/XML en RDF conforme aux standards du web sémantique