Introduction à NoSQL avec MongoDB
Comprendre NoSQL, le modèle document, et les opérations CRUD de base avec des exemples concrets.
NoSQL signifie Not Only SQL. MongoDB est une base orientée documents : les données sont stockées sous forme d'objets JSON-like (BSON).
Pourquoi utiliser NoSQL ?
- Schéma flexible : vous pouvez faire évoluer vos documents facilement.
- Scalabilité horizontale : ajout de serveurs plus simple quand le volume augmente.
- Données hétérogènes : pratique pour des objets qui n'ont pas tous exactement les mêmes champs.
À retenir
NoSQL ne remplace pas systématiquement SQL. Le choix dépend du type de données, des requêtes et des contraintes métier.
Exemple de document MongoDB
{
"_id": 1,
"nom": "Nora",
"age": 22,
"matieres": ["Chimie", "Biologie"],
"adresse": {
"ville": "Albi",
"code_postal": "81000"
}
}CRUD en pratique
db.etudiants.insertOne({
nom: "Nora",
age: 22,
matieres: ["Chimie", "Biologie"],
})// Tous les étudiants
db.etudiants.find()
// Étudiants inscrits en Chimie
db.etudiants.find({ matieres: "Chimie" })db.etudiants.updateOne(
{ nom: "Nora" },
{ $addToSet: { matieres: "Maths" } }
)db.etudiants.deleteOne({ nom: "Nora" })Piège fréquent
Si une requête find() ne retourne rien, commencez par exécuter db.etudiants.find() sans filtre pour vérifier les données réellement présentes.
MongoDB
Terminez le quiz du chapitre pour le marquer comme complété.