Retour
Ventes MongoDB — TP Big Data

Ventes MongoDB — TP Big Data

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.

Description

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.

Technologies utilisées

PHP MongoDB MongoDB Compass NoSQL MVC Big Data Apache

Compétences BTS SIO

B1 Gérer le patrimoine informatique
B1.2 Exploiter des référentiels, normes et standards adoptés par le prestataire informatique

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).

B3 Développer la présence en ligne de l'organisation
B3.3 Participer à l'évolution d'un site Web exploitant les données de l'organisation

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).

Informations

Type Open Source
Repository GitHub