← Tous les projets

Open Food Facts

D’un CSV de 326 Mo à une plateforme décisionnelle : bases OLTP et OLAP sur Azure, workflows Knime et tableaux de bord Power BI.

  • PostgreSQL
  • Azure
  • Azure Data Factory
  • Knime
  • Power BI
  • SQL

Voir le dépôt GitHub

Contexte

SAE S4.C.01 du BUT Informatique, « développement avec une base de données et visualisation » (2024-25). Il fallait améliorer une base collaborative existante, y intégrer des ventes simulées, produire des rapports et entraîner des modèles capables d’attribuer le Nutri-Score malgré l’absence de données sur les fibres et le sodium.

Équipe et mon rôle

Projet de groupe, 5 personnes.

J’ai écrit les scripts SQL qui assurent la cohérence des clés entre les deux serveurs Azure, et réalisé dans Knime les jointures, les correspondances d’identifiants et les transformations nécessaires.

Démarche

  • Base OLTP : modèle normalisé sur Azure PostgreSQL, avec index sur les clés étrangères et vues dédiées à la visualisation.
  • Ventes simulées : script Python générant les ventes de 1 000 produits sur 3 ans, selon des lois de Poisson et normales.
  • Base OLAP : deux tables de faits, composition et ventes, alimentées par Azure Data Factory et Knime.
  • Exploration : clustering k-Means et DBSCAN, évalué avec un scorer d’entropie.
  • Modèles : arbres de décision puis Random Forest, le meilleur résultat venant de quatre modèles entraînés par groupe PNNS.
  • Score composite : création de l’Open Food Facts Score (OFFS), qui additionne Nutri-Score, groupe Nova et éco-score, puis un arbre de décision pour l’attribuer aux nouveaux produits.
  • Restitution : deux rapports Power BI, l’un sur le modèle OLTP, l’autre sur le modèle OLAP.

Visuels

Hébergé par Microsoft : rien n’est chargé avant ce clic.

Rapport OLTP, données de ventes simulées. Ouvrir dans Power BI

Hébergé par Microsoft : rien n’est chargé avant ce clic.

Rapport OLAP, données de ventes simulées. Ouvrir dans Power BI

Chiffres et faits

CSV Open Food Facts de départ
326,6 Mo
modèles OLTP et OLAP, plus 11 vues
16 + 7 tables
de ventes simulées sur 3 ans
Plus de 600 000 lignes
de précision globale sur le Nutri-Score
77 %
de précision sur l’éco-score et le groupe Nova, sur données inconnues
85 % et 82 %
de précision pour attribuer le score composite, sur données inconnues
86 %
rapports Power BI OLTP et OLAP
4 + 4 pages

Ce que j’en retiens

Les difficultés et les apprentissages sont venus du management du projet et de l’initialisation du cahier des charges.