TP BTS SIO 2ème année autour de la société fictive SIO_Analytics — application web PHP MVC s'appuyant sur MongoDB (NoSQL) pour gérer des données de ventes, avec démonstration des requêtes filtrées avancées.
TP de 2e année de BTS SIO sur le Big Data, dans le contexte d'une société fictive « SIO_Analytics » qui analyse des données de consommation.
L'application est faite en PHP avec une architecture MVC et utilise MongoDB, une base de données qui range les infos sous forme de documents (un peu comme du JSON) au lieu des tableaux qu'on a en SQL classique. On appelle ça du NoSQL ("Not only SQL").
Le projet montre les enjeux du big data : beaucoup de données (volume), qui changent vite (vélocité), et de types variés (variété). On manipule un jeu de données clients / produits / achats où chaque client contient directement la liste de ses achats dans son document — c'est plus simple qu'en SQL où il faudrait plusieurs tables liées.
Côté fonctionnalités : ajouter un client, le supprimer, lister tous les clients avec différents tris, et faire des recherches filtrées (par tranche d'âge, par sexe, ou des recherches croisées comme « les femmes de plus de 30 ans OU les hommes qui ont acheté du sucre à moins de 5 € »). Les ajouts et suppressions sont sécurisés pour pas perdre de données en cas de pépin.
Le projet utilise les outils officiels MongoDB pour PHP (Manager, Query, BulkWrite, WriteConcern) et la gestion s'est faite via MongoDB Compass, l'interface graphique officielle pour explorer et tester les requêtes.
L'application suit le pattern MVC : les contrôleurs, les vues et le modèle sont bien séparés dans des dossiers distincts. Elle utilise MongoDB, qui est un standard reconnu côté NoSQL, et son driver officiel pour PHP. Les requêtes utilisent les opérateurs du langage MongoDB ($and, $or, $gte, $lte, $elemMatch).
Le site exploite les données stockées dans la base MongoDB : à chaque action (ajout, suppression, recherche filtrée), il interroge ou modifie la collection "Vente.Clients" et affiche le résultat à l'écran immédiatement. Le format document de MongoDB permet de représenter naturellement les données (un client avec sa liste d'achats directement dedans).