0% ont trouvé ce document utile (0 vote)
20 vues26 pages

Guide d'installation et utilisation de MongoDB

Transféré par

scommes
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
20 vues26 pages

Guide d'installation et utilisation de MongoDB

Transféré par

scommes
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Sommaire :

1. Introduction
2. Installation MongoDB sous Windows
3. Les outils et commandes MongoDB
4. Terminologie
5. Les Collections
6. Les Documents
7. Les opérations CRUD
8. MongoDB VS MySQL Queries
9. MongoDB en Java

COURS MONGODB 2017 2


Introduction
MongoDB (de l'anglais humongous qui peut être traduit par « énorme ») est un SGBD NOSQL
orientée documents à schéma flexible et distribuable, développé depuis 2007 par la société de
logiciel 10gen. MongoDB est écrit en C++ et distribuée sous licence AGPL (licence libre) et très
adaptée aux applications web.
MongoDB a été adoptée par plusieurs grands noms de l’informatique, tels que Foursquare, SAP,
ou bien même GitHub. Il manipule des documents au format BSON (Binary JSON), qui est un
dérivé de JSON plus axé sur la performance, fonctionnant comme une architecture distribuée
centralisée.

COURS MONGODB 2017 3


Installation MongoDB sous Windows
1. Télécharger MongoDB à partir de [Link]

COURS MONGODB 2017 4


Installation MongoDB sous Windows
2. Lancez l’installation

COURS MONGODB 2017 5


Installation MongoDB sous Windows
3. Configuration du path : ajouter C:\Program Files\MongoDB\Server\3.4\bin dans variable
d’environnement

COURS MONGODB 2017 6


Installation MongoDB sous Windows
4. Configuration du dbpath( sous le cmd ) : > mongod --dbpath=C:\data\db
5. Démarrage de MongoDB ( sous le cmd ) : > [Link]

COURS MONGODB 2017 7


Les outils et commandes MongoDB
Mongo : le shell javascript
Mongod : le moteur de base
Mongos : le contrôleur de Sharding
Mongofiles : l’utilitaire GridFS
Mongostat : visualisation des stats d’une instance mongoDB
Mongosniff : le tcpdump de mongo
mongoimport, mongoexport, mongodump, mongorestore, bsondump : Les outils
d’import/export

COURS MONGODB 2017 8


Terminologie
Terminologie SQL Terminologie MongoDB
Base de données Base de données
Table Collection
Ligne Document
Colonne Champ
Index Index
Jointure Imbrication ou Référence
Clef Primaire (peut être multiple) Clef Primaire (une seule, et représentée
par le champ _id)

COURS MONGODB 2017 9


Les Collections « Définition »
Une collection c’est l’équivalent de la table en relationnel, les valeurs peuvent être complexes
(listes, dictionnaires), il y a deux modes de création :
i. Automatiquement lors d’une insertion de document (tuple)
ii. En exécutant la commande [Link](‘<nom_collection>’);
Exemple d’une collection :

COURS MONGODB 2017 10


Les Collections « les opérations»
Créer :
> [Link](' nom_collection ');
Lister :
> show collections;
> [Link]();
Insérer un document :
> db.< nom_collection >.insert( { var1: "valeur", var2: "valeur", var3: "valeur", } );
Supprimer :
> db.<nom_collection>.drop();

COURS MONGODB 2017 11


Les Documents « Définition »
Un documents est l’équivalent d’un enregistrement (tuple) en relationnel,
Il y a deux modes d’insertion :
i. En utilisant la commande db.<nom_collection>.insert() du schell
ii. En utilisant la commande db.<nom_collection>.save () du schell
Chaque document crée contient le champ « _id » : c’est le seul champ obligatoire, utilisé comme
clef primaire dans une collection il est généré automatiquement et indexé.
Le documents supporte plus de types de données que JSON composée de paires clef/valeur,
MongoDB stocke les documents au format BSON (Binary JSON) ou BSON est la représentation
binaire des objets JSON.

COURS MONGODB 2017 12


Les Documents « Le format JSON »
JSON (JavaScript Object Notation) :
Permet de représenter de l’information structurée
Format de données textuelle
Utilise une notation JavaScript
Décrit par la RFC 4627
Un document JSON, ne comprend que deux éléments structurels :
1. des ensembles de paires nom / valeur.
2. des listes ordonnées de valeurs.

COURS MONGODB 2017 13


Les Documents « Structure de Documents »
1. Références :
Inclusion de liens ou références d’un document à un autre
C’est à l’application de résoudre ces références pour accéder aux données associées
On dit qu’on utilise des Modèles de Données Normalisés.
Exemple :

COURS MONGODB 2017 14


Structure de Documents
2. Données Imbriquées (Embedded Data) :
Sauvegarde des données associées dans la même structure de documents
Il est possible d’inclure des documents dans un champ ou un tableau
Permet aux applications d’extraire et manipuler plusieurs niveaux de hiérarchie en une seule
instruction
Ce sont les Modèles de Données Dé normalisés.
Exemple :

COURS MONGODB 2017 15


Les opérations CRUD «Create»
Pour insérer des données dans la collection MongoDB il faut utiliser la syntaxe suivante :
 [Link]( document ) ; ou
 [Link]( documents ) ; pour plusieurs documents.
Exemple :
>[Link]({
‘titre’ : ‘Le cercle’,
‘genre’ : ‘horreur’,
‘annee’ : 2017
})

COURS MONGODB 2017 16


Les opérations CRUD « Read »
Pour interroger les données de la collection MongoDB il faut utiliser la méthode « find() », les
syntaxes pour cette méthode sont :
 [Link]() ;
 [Link](Requête) ;
 [Link](Requête, Projection) ;
Sans paramètre : tous les documents sont renvoyés
Requête : est un tableau clefs / valeurs spécifiant des opérateurs sur les champs des documents
recherchés
Projection : est un tableau permettant de limiter les champs que l’on souhaite consulter dans les
documents recherchés

COURS MONGODB 2017 17


Les opérations CRUD « Read »
Exemple : soit la collection « films » contient les documents suivant :
{ "_id" : ObjectId("59089552387a"), "titre" : "le cercle", "genre" : "horreur", "année" : "2017" }
{ "_id" : ObjectId("590895ea387b"), "titre" : "arsenal", "genre" : " thriller", "année" : "2017" }
{ "_id" : ObjectId("59089629387c"), "titre" : "criminel", "genre" : " policier", "année" : "2016" }
La commande suivante affiche que les titre des films :
>[Link] .find({},{"titre":1,_id:0})
{"titre" :"le cercle"}
{"titre" :"arsenal"}
{"titre" :"criminel"}

COURS MONGODB 2017 18


Les opérations CRUD « Read »
Utilisation des opérateurs dans la recherche : Dans la plupart des cas, les recherches sont plus
complexes. On peut alors utiliser des opérateurs logiques au lieu de simplement donner une
valeur. Voici quelques opérateurs courants, avec des exemples d’utilisation :
Opérateur Signification Exemple
$gt, $gte, $lt, >, >=, <, <= age: {$gte: 20, $lt: 30}
$lte
$exists Test sur l'existence d'un champ adresse: {$exists: true}
$type Test sur le type d'un champ nom: {$type: 2}
$regex Recherche de pattern dans une chaine prénom: {$regex: "o$"}
$or OU logique sur les clauses fournies $or: [{prénom: {$regex: "o$"
dans le tableau }},adresse: {$exists: true}]
$and ET logique sur les clauses fournies $and: [{prénom: {$regex:"o$" }},
dans le tableau adresse: {$exists: true}]
COURS MONGODB 2017 19
Les opérations CRUD « Update »
Pour mettre à jour le document dans une collection il faut utilisé la méthode « Update() », la syntaxe
est la suivante : [Link](Requête, Modifications) ;
Requête : est de la même forme que pour « find() »
Modifications : est un tableau clefs / valeurs définissant des opérations sur les champs.
Exemple : on utilisent l’exemple précèdent :
>[Link]({‘titre':’criminel'},{$set:{‘annee':2015}}) ;
>[Link]() ;
{ "_id" : ObjectId("59089552387a"), "titre" : "le cercle", "genre" : "horreur", "année" : "2017" }
{ "_id" : ObjectId("590895ea387b"), "titre" : "arsenal", "genre" : " thriller", "année" : "2017" }
{ "_id" : ObjectId("59089629387c"), "titre" : "criminel", "genre" : " policier", "année" : "2015" }

COURS MONGODB 2017 20


Les opérations CRUD « Delete »
Pour supprimer un document dans une collection il faut utilisé la méthode « Remove() », les
syntaxes est les suivantes :
 [Link]() ;
 [Link](Requête) ;
Sans paramètre : tous les documents sont supprimés.
Requête : Elle désigne les documents qui seront supprimés.
Exemple : La commande suivante supprime tous les documents dont l’année est « 2017 » :
>[Link]({‘annee':2017}) ;
>[Link]() ;
{ "_id" : ObjectId("59089629387c"), "titre" : "criminel", "genre" : " policier", "année" : "2015" }

COURS MONGODB 2017 21


Queries

COURS MONGODB 2017 22


MongoDB VS MySQL
SQL Insert MongoDB Insert
INSERT INTO film(titre,genre,annee) [Link]({
VALUES (“le cercle",” horreur”,2017) ‘titre’ : ‘le cercle’,
‘genre’ : ‘horreur’,
‘annee’ : 2017
})

COURS MONGODB 2017 23


MongoDB VS MySQL
Select SQL Select MongoDB
SELECT * FROM film [Link]()
SELECT id,titre,genre FROM film [Link]({ 'titre': 1, 'genre': 1 })
SELECT titre,genre FROM film [Link]({ 'titre': 1, 'genre': 1,_id:0 })
SELECT * FROM film WHERE annee = 2017 [Link]({ 'annee': 2017 })
SELECT * FROM film WHERE annee != 2017 [Link]( { 'annee': { $ne:2017 } } )
SELECT * FROM people WHERE [Link](
genre="horreur" AND annee=2017 { 'genre': 'horreur',annee: 2017 })
SELECT * FROM film WHERE genre = "thriller" [Link](
OR annee = 2016 { $or: [ { 'genre': 'thriller' } ,
{ 'annee': 2016 } ] })

COURS MONGODB 2017 24


MongoDB VS MySQL
Update SQL Update MongoDB
UPDATE film SET genre = "romance" WHERE [Link](
annee < 2017 { 'annee': { $lt: 2017 } },
{ $set: { genre: "romance" } }
)
UPDATE film SET annee = annee + 1 WHERE [Link](
titre = "le cercle" { titre: "le cercle" } ,
{ $inc: { annee: 1 } }
)

COURS MONGODB 2017 25


MongoDB VS MySQL
SQL delete MongoDB delete

DELETE FROM film [Link]()

DELETE FROM film WHERE genre = "policier" [Link]( { 'genre': 'policier' } )

COURS MONGODB 2017 26

Vous aimerez peut-être aussi