SlideShare une entreprise Scribd logo
1  sur  5
Télécharger pour lire hors ligne
Daqch Rima
Base de Données : NoSQL sous MongoDB
Devoir Final
Partie 1: Questions Théoriques
Expliquez les caractéristiques clés des bases de données NoSQL et pourquoi elles sont
utilisées dans certaines situations par rapport aux bases de données relationnelles.
- La principale différence entre les bases de données relationnelles et non relationnelles
NoSQL réside dans la façon dont les données sont stockées et organisées. Les bases de
données non relationnelles ne stockent pas de données de manière tabulaire.
- NoSQL est une base de données distribuée. Cela signifie que les données peuvent être
stockées sur des serveurs différents en local ou en cloud. Cette caractéristique est un
avantage majeur aujourd'hui. Effectivement, le cloud permet de mettre à disposition
facilement et pour pas cher une grande quantité de serveurs.
2. Qu'est-ce que MongoDB ? Quels sont ses principaux avantages par rapport aux bases de
données relationnelles traditionnelles ?
-MongoDB est une base de données NoSQL open source. Puisqu'il s'agit d'une base de
données non relationnelle, elle peut traiter des données structurées, semi-structurées et
non structurées. Elle utilise un modèle de données non relationnel, orienté document, et un
langage de requête non structuré.
-MongoDB est très flexible et permet d'associer et de stocker plusieurs types de données.
Elle permet également de stocker et de gérer des volumes de données plus importants que
les bases de données relationnelles traditionnelles.
3. Qu'est-ce qu'un document dans MongoDB ? Comment les documents sont-ils organisés
dans des collections ?
Dans MongoDB, un document est une unité de données JSON stockée dans une collection.
Les documents sont des enregistrements individuels, similaires à des lignes dans une base de
données relationnelle, mais avec une structure flexible. Les collections regroupent des
documents similaires, et chaque document doit avoir un champ "_id" unique.
4. Quelle est la différence entre une base de données relationnelle et une base de données
NoSQL en ce qui concerne la flexibilité du schéma ?
Les bases de données relationnelles ont un schéma rigide et prédéfini, tandis que les
bases de données NoSQL offrent une flexibilité de schéma, permettant des structures
de données variables au sein d'une même collection.
5. Quels sont les types d'indexation pris en charge par MongoDB et pourquoi l'indexation
est-elle importante ?
Les types d'indexation pris en charge par MongoDB incluent les index simples,
composés, géospatiaux, texte et de hachage. L'indexation est importante car elle
améliore les performances des requêtes en permettant à MongoDB de localiser
rapidement les documents qui correspondent à certains critères de recherche,
réduisant ainsi la charge du serveur et optimisant les opérations de tri.
Partie 2: Questions Pratiques
1. Créer une BD Gestion_Livre
2. Opérations CRUD
• Insérez un nouvel auteur dans la collection "auteurs".
• Supprimez un emprunteur de la collection "emprunteurs".
• Mettez à jour le nom d'un auteur spécifique dans la collection "auteurs".
3. Création et Modification :
• Créez une nouvelle collection "commentaires" pour stocker les commentaires des
utilisateurs sur les livres. Chaque document doit contenir les champs suivants :
"ID_Livre", "ID_Utilisateur", "Contenu", "Date_Creation".
• Ajoutez un nouvel index à la collection "livres" pour le champ "année_de_publication"
pour améliorer les performances des requêtes basées sur
l'année de publication.
• Ajoutez une nouvelle colonne "année_de_publication" à la collection "livres" et mettez à
jour les documents existants avec l'année de publication appropriée.
4. Agrégation (suite) :
• Calculez le nombre total de livres empruntés pour chaque mois de l'année.
• Trouvez l'auteur avec le plus grand nombre de livres empruntés.
5. Sécurité (suite) :
• Créez un rôle personnalisé dans MongoDB avec des privilèges limités pour lire
uniquement la collection "livres".
• Créez un utilisateur avec ce rôle personnalisé et connectez-vous en utilisant ces
informations d'identification pour vérifier les restrictions d'accès.
Gestion des erreurs :
• Gérez une erreur lors de la tentative d'insertion d'un livre avec un ISBN déjà
existant dans la collection "livres".
• Gérez une erreur lors de la tentative de suppression d'un emprunteur qui a
encore des livres empruntés

Contenu connexe

Tendances

La persistance des données : ORM et hibernate
La persistance des données : ORM et hibernateLa persistance des données : ORM et hibernate
La persistance des données : ORM et hibernateYouness Boukouchi
 
Base de Données Chapitre I .pptx
Base de Données Chapitre I .pptxBase de Données Chapitre I .pptx
Base de Données Chapitre I .pptxAbdoulayeTraore48
 
Chp1- Introduction aux Technologies Web et SOA
Chp1- Introduction aux Technologies Web et SOAChp1- Introduction aux Technologies Web et SOA
Chp1- Introduction aux Technologies Web et SOALilia Sfaxi
 
Cours design pattern m youssfi partie 8 stat, template method, command , medi...
Cours design pattern m youssfi partie 8 stat, template method, command , medi...Cours design pattern m youssfi partie 8 stat, template method, command , medi...
Cours design pattern m youssfi partie 8 stat, template method, command , medi...ENSET, Université Hassan II Casablanca
 
Base de donnees Avancees et Intro à NoSQL.ppt
Base de donnees Avancees et Intro à  NoSQL.pptBase de donnees Avancees et Intro à  NoSQL.ppt
Base de donnees Avancees et Intro à NoSQL.pptIdriss22
 
Présentation des bases de données NoSql
Présentation des bases de données NoSqlPrésentation des bases de données NoSql
Présentation des bases de données NoSqlSidi LEKHALIFA
 
Bases de données réparties
Bases de données répartiesBases de données réparties
Bases de données répartiesAbdelouahed Abdou
 
Introduction to NoSQL Databases
Introduction to NoSQL DatabasesIntroduction to NoSQL Databases
Introduction to NoSQL DatabasesDerek Stainer
 
softCours design pattern m youssfi partie 9 creation des objets abstract fact...
softCours design pattern m youssfi partie 9 creation des objets abstract fact...softCours design pattern m youssfi partie 9 creation des objets abstract fact...
softCours design pattern m youssfi partie 9 creation des objets abstract fact...ENSET, Université Hassan II Casablanca
 
Introduction aux bases de données
Introduction aux bases de donnéesIntroduction aux bases de données
Introduction aux bases de donnéesAbdoulaye Dieng
 
Design patterns - Exemples en Java
Design patterns - Exemples en JavaDesign patterns - Exemples en Java
Design patterns - Exemples en JavaOussama BEN KHIROUN
 
Cours 1/3 "Architecture Web"
Cours 1/3 "Architecture Web"Cours 1/3 "Architecture Web"
Cours 1/3 "Architecture Web"Adyax
 

Tendances (20)

La persistance des données : ORM et hibernate
La persistance des données : ORM et hibernateLa persistance des données : ORM et hibernate
La persistance des données : ORM et hibernate
 
Base de Données Chapitre I .pptx
Base de Données Chapitre I .pptxBase de Données Chapitre I .pptx
Base de Données Chapitre I .pptx
 
Base des données réparties
Base des données répartiesBase des données réparties
Base des données réparties
 
Chp1- Introduction aux Technologies Web et SOA
Chp1- Introduction aux Technologies Web et SOAChp1- Introduction aux Technologies Web et SOA
Chp1- Introduction aux Technologies Web et SOA
 
Cours design pattern m youssfi partie 3 decorateur
Cours design pattern m youssfi partie 3 decorateurCours design pattern m youssfi partie 3 decorateur
Cours design pattern m youssfi partie 3 decorateur
 
Cours design pattern m youssfi partie 8 stat, template method, command , medi...
Cours design pattern m youssfi partie 8 stat, template method, command , medi...Cours design pattern m youssfi partie 8 stat, template method, command , medi...
Cours design pattern m youssfi partie 8 stat, template method, command , medi...
 
Base de donnees Avancees et Intro à NoSQL.ppt
Base de donnees Avancees et Intro à  NoSQL.pptBase de donnees Avancees et Intro à  NoSQL.ppt
Base de donnees Avancees et Intro à NoSQL.ppt
 
Lab2-DB-Mongodb
Lab2-DB-MongodbLab2-DB-Mongodb
Lab2-DB-Mongodb
 
Présentation des bases de données NoSql
Présentation des bases de données NoSqlPrésentation des bases de données NoSql
Présentation des bases de données NoSql
 
Bases de données réparties
Bases de données répartiesBases de données réparties
Bases de données réparties
 
Introduction to NoSQL Databases
Introduction to NoSQL DatabasesIntroduction to NoSQL Databases
Introduction to NoSQL Databases
 
Maven et industrialisation du logiciel
Maven et industrialisation du logicielMaven et industrialisation du logiciel
Maven et industrialisation du logiciel
 
noSQL
noSQLnoSQL
noSQL
 
softCours design pattern m youssfi partie 9 creation des objets abstract fact...
softCours design pattern m youssfi partie 9 creation des objets abstract fact...softCours design pattern m youssfi partie 9 creation des objets abstract fact...
softCours design pattern m youssfi partie 9 creation des objets abstract fact...
 
Introduction aux bases de données
Introduction aux bases de donnéesIntroduction aux bases de données
Introduction aux bases de données
 
Cours design pattern m youssfi partie 4 composite
Cours design pattern m youssfi partie 4 compositeCours design pattern m youssfi partie 4 composite
Cours design pattern m youssfi partie 4 composite
 
Design patterns - Exemples en Java
Design patterns - Exemples en JavaDesign patterns - Exemples en Java
Design patterns - Exemples en Java
 
Cours 1/3 "Architecture Web"
Cours 1/3 "Architecture Web"Cours 1/3 "Architecture Web"
Cours 1/3 "Architecture Web"
 
introduction à MongoDB
introduction à MongoDBintroduction à MongoDB
introduction à MongoDB
 
Oodbms ch 20
Oodbms ch 20Oodbms ch 20
Oodbms ch 20
 

Similaire à Devoir Final dans No Sql Base de donnée avec corrigé

Introduction-a-MongoDB-Une-Base-de-Donnees-NoSQL (1).pptx
Introduction-a-MongoDB-Une-Base-de-Donnees-NoSQL (1).pptxIntroduction-a-MongoDB-Une-Base-de-Donnees-NoSQL (1).pptx
Introduction-a-MongoDB-Une-Base-de-Donnees-NoSQL (1).pptxTrayOumayma
 
Support Formation vidéo: MongoDB pour débutant
Support Formation vidéo: MongoDB pour débutantSupport Formation vidéo: MongoDB pour débutant
Support Formation vidéo: MongoDB pour débutantSmartnSkilled
 
cours06-nosql.pdf
cours06-nosql.pdfcours06-nosql.pdf
cours06-nosql.pdfhbadir
 
Introduction aux bases de données NoSQL
Introduction aux bases de données NoSQLIntroduction aux bases de données NoSQL
Introduction aux bases de données NoSQLAntoine Augusti
 
Serveur web / Base de donnees Langages de développement
Serveur web / Base de donnees Langages de développementServeur web / Base de donnees Langages de développement
Serveur web / Base de donnees Langages de développementLudovic REUS
 
Valtech - NoSQL, solution alternative ou complémentaire aux bases de données ...
Valtech - NoSQL, solution alternative ou complémentaire aux bases de données ...Valtech - NoSQL, solution alternative ou complémentaire aux bases de données ...
Valtech - NoSQL, solution alternative ou complémentaire aux bases de données ...Valtech
 
SGBDR vs NoSQL, Différences et Uses Cases. Focus sur ArangoDB
SGBDR vs NoSQL, Différences et Uses Cases. Focus sur ArangoDBSGBDR vs NoSQL, Différences et Uses Cases. Focus sur ArangoDB
SGBDR vs NoSQL, Différences et Uses Cases. Focus sur ArangoDBRomain Cambien
 
Apport des thésaurus pour le catalogage et la localisation des données enviro...
Apport des thésaurus pour le catalogage et la localisation des données enviro...Apport des thésaurus pour le catalogage et la localisation des données enviro...
Apport des thésaurus pour le catalogage et la localisation des données enviro...Desconnets Jean-Christophe
 
Base de données graphe, Noe4j concepts et mise en oeuvre
Base de données graphe, Noe4j concepts et mise en oeuvreBase de données graphe, Noe4j concepts et mise en oeuvre
Base de données graphe, Noe4j concepts et mise en oeuvreMICHRAFY MUSTAFA
 
ch5_indexation.pdf
ch5_indexation.pdfch5_indexation.pdf
ch5_indexation.pdfnihedattia2
 
RDA : le nouveau paradigme du catalogage (2). Qu'est-ce que le RDA ?
RDA : le nouveau paradigme du catalogage (2). Qu'est-ce que le RDA ? RDA : le nouveau paradigme du catalogage (2). Qu'est-ce que le RDA ?
RDA : le nouveau paradigme du catalogage (2). Qu'est-ce que le RDA ? ADBS
 

Similaire à Devoir Final dans No Sql Base de donnée avec corrigé (20)

Introduction-a-MongoDB-Une-Base-de-Donnees-NoSQL (1).pptx
Introduction-a-MongoDB-Une-Base-de-Donnees-NoSQL (1).pptxIntroduction-a-MongoDB-Une-Base-de-Donnees-NoSQL (1).pptx
Introduction-a-MongoDB-Une-Base-de-Donnees-NoSQL (1).pptx
 
BDRO.pdf
BDRO.pdfBDRO.pdf
BDRO.pdf
 
Big data
Big dataBig data
Big data
 
Support Formation vidéo: MongoDB pour débutant
Support Formation vidéo: MongoDB pour débutantSupport Formation vidéo: MongoDB pour débutant
Support Formation vidéo: MongoDB pour débutant
 
cours06-nosql.pdf
cours06-nosql.pdfcours06-nosql.pdf
cours06-nosql.pdf
 
Formation NoSQL
Formation NoSQLFormation NoSQL
Formation NoSQL
 
Introduction aux bases de données NoSQL
Introduction aux bases de données NoSQLIntroduction aux bases de données NoSQL
Introduction aux bases de données NoSQL
 
Serveur web / Base de donnees Langages de développement
Serveur web / Base de donnees Langages de développementServeur web / Base de donnees Langages de développement
Serveur web / Base de donnees Langages de développement
 
Valtech - NoSQL, solution alternative ou complémentaire aux bases de données ...
Valtech - NoSQL, solution alternative ou complémentaire aux bases de données ...Valtech - NoSQL, solution alternative ou complémentaire aux bases de données ...
Valtech - NoSQL, solution alternative ou complémentaire aux bases de données ...
 
SGBDR vs NoSQL, Différences et Uses Cases. Focus sur ArangoDB
SGBDR vs NoSQL, Différences et Uses Cases. Focus sur ArangoDBSGBDR vs NoSQL, Différences et Uses Cases. Focus sur ArangoDB
SGBDR vs NoSQL, Différences et Uses Cases. Focus sur ArangoDB
 
Web sémantique
Web sémantique Web sémantique
Web sémantique
 
Apport des thésaurus pour le catalogage et la localisation des données enviro...
Apport des thésaurus pour le catalogage et la localisation des données enviro...Apport des thésaurus pour le catalogage et la localisation des données enviro...
Apport des thésaurus pour le catalogage et la localisation des données enviro...
 
Base de données graphe, Noe4j concepts et mise en oeuvre
Base de données graphe, Noe4j concepts et mise en oeuvreBase de données graphe, Noe4j concepts et mise en oeuvre
Base de données graphe, Noe4j concepts et mise en oeuvre
 
Évolution de la normalisation - Catherine Coppolani
Évolution de la normalisation - Catherine CoppolaniÉvolution de la normalisation - Catherine Coppolani
Évolution de la normalisation - Catherine Coppolani
 
ch5_indexation.pdf
ch5_indexation.pdfch5_indexation.pdf
ch5_indexation.pdf
 
NoSQL MeetUp
NoSQL MeetUpNoSQL MeetUp
NoSQL MeetUp
 
Td3 bibnum
Td3 bibnumTd3 bibnum
Td3 bibnum
 
RDA : le nouveau paradigme du catalogage (2). Qu'est-ce que le RDA ?
RDA : le nouveau paradigme du catalogage (2). Qu'est-ce que le RDA ? RDA : le nouveau paradigme du catalogage (2). Qu'est-ce que le RDA ?
RDA : le nouveau paradigme du catalogage (2). Qu'est-ce que le RDA ?
 
Le Matterhorn RDF Data Model
Le Matterhorn RDF Data ModelLe Matterhorn RDF Data Model
Le Matterhorn RDF Data Model
 
Semantic web introduction
Semantic web introductionSemantic web introduction
Semantic web introduction
 

Devoir Final dans No Sql Base de donnée avec corrigé

  • 1. Daqch Rima Base de Données : NoSQL sous MongoDB Devoir Final Partie 1: Questions Théoriques Expliquez les caractéristiques clés des bases de données NoSQL et pourquoi elles sont utilisées dans certaines situations par rapport aux bases de données relationnelles. - La principale différence entre les bases de données relationnelles et non relationnelles NoSQL réside dans la façon dont les données sont stockées et organisées. Les bases de données non relationnelles ne stockent pas de données de manière tabulaire. - NoSQL est une base de données distribuée. Cela signifie que les données peuvent être stockées sur des serveurs différents en local ou en cloud. Cette caractéristique est un avantage majeur aujourd'hui. Effectivement, le cloud permet de mettre à disposition facilement et pour pas cher une grande quantité de serveurs. 2. Qu'est-ce que MongoDB ? Quels sont ses principaux avantages par rapport aux bases de données relationnelles traditionnelles ? -MongoDB est une base de données NoSQL open source. Puisqu'il s'agit d'une base de données non relationnelle, elle peut traiter des données structurées, semi-structurées et non structurées. Elle utilise un modèle de données non relationnel, orienté document, et un langage de requête non structuré. -MongoDB est très flexible et permet d'associer et de stocker plusieurs types de données. Elle permet également de stocker et de gérer des volumes de données plus importants que les bases de données relationnelles traditionnelles. 3. Qu'est-ce qu'un document dans MongoDB ? Comment les documents sont-ils organisés dans des collections ? Dans MongoDB, un document est une unité de données JSON stockée dans une collection. Les documents sont des enregistrements individuels, similaires à des lignes dans une base de données relationnelle, mais avec une structure flexible. Les collections regroupent des documents similaires, et chaque document doit avoir un champ "_id" unique. 4. Quelle est la différence entre une base de données relationnelle et une base de données NoSQL en ce qui concerne la flexibilité du schéma ? Les bases de données relationnelles ont un schéma rigide et prédéfini, tandis que les bases de données NoSQL offrent une flexibilité de schéma, permettant des structures de données variables au sein d'une même collection.
  • 2. 5. Quels sont les types d'indexation pris en charge par MongoDB et pourquoi l'indexation est-elle importante ? Les types d'indexation pris en charge par MongoDB incluent les index simples, composés, géospatiaux, texte et de hachage. L'indexation est importante car elle améliore les performances des requêtes en permettant à MongoDB de localiser rapidement les documents qui correspondent à certains critères de recherche, réduisant ainsi la charge du serveur et optimisant les opérations de tri. Partie 2: Questions Pratiques 1. Créer une BD Gestion_Livre 2. Opérations CRUD • Insérez un nouvel auteur dans la collection "auteurs". • Supprimez un emprunteur de la collection "emprunteurs". • Mettez à jour le nom d'un auteur spécifique dans la collection "auteurs".
  • 3. 3. Création et Modification : • Créez une nouvelle collection "commentaires" pour stocker les commentaires des utilisateurs sur les livres. Chaque document doit contenir les champs suivants : "ID_Livre", "ID_Utilisateur", "Contenu", "Date_Creation". • Ajoutez un nouvel index à la collection "livres" pour le champ "année_de_publication" pour améliorer les performances des requêtes basées sur l'année de publication. • Ajoutez une nouvelle colonne "année_de_publication" à la collection "livres" et mettez à jour les documents existants avec l'année de publication appropriée.
  • 4. 4. Agrégation (suite) : • Calculez le nombre total de livres empruntés pour chaque mois de l'année. • Trouvez l'auteur avec le plus grand nombre de livres empruntés.
  • 5. 5. Sécurité (suite) : • Créez un rôle personnalisé dans MongoDB avec des privilèges limités pour lire uniquement la collection "livres". • Créez un utilisateur avec ce rôle personnalisé et connectez-vous en utilisant ces informations d'identification pour vérifier les restrictions d'accès. Gestion des erreurs : • Gérez une erreur lors de la tentative d'insertion d'un livre avec un ISBN déjà existant dans la collection "livres". • Gérez une erreur lors de la tentative de suppression d'un emprunteur qui a encore des livres empruntés