Les bases orientées documents
Le modèle documents sur MongoDB : document JSON, collection, identifiant, champs imbriqués, schéma libre et validation, et le choix entre imbriquer et référencer.
- 23 cartes
- 5 thèmes
- Gratuit
Le programme, thème par thème
Le poids de chaque thème suit celui que lui donne l'examen.
- Notions
- Questions
- Ranger et relier
- Mises en situation
- Comprendre
Quelques cartes du deck
Base orientée documents : de quoi s'agit-il ?
Voir la réponse
Base qui range des enregistrements autonomes en JSON ou en format voisin, regroupés en collections, où un enregistrement peut contenir des sous-objets et des tableaux.
Un objet d'application se range d'un bloc, sans être éclaté sur plusieurs tables : on le lit et on l'écrit en une seule opération.
Un blog stocke 5 000 articles écrits par le même auteur. Quelle structure est la plus judicieuse pour l'auteur ?
- Un document
auteurà part, désigné par un champauteurId - Recopier tout le profil de l'auteur à l'intérieur de chacun des 5 000 articles
- Imbriquer les 5 000 articles dans le document de l'auteur
- Prendre le nom de l'auteur comme
_idde chacun des 5 000 articles
Voir la réponse
Un document
auteurà part, désigné par un champauteurIdRecopier le profil oblige à modifier 5 000 documents au moindre changement. Imbriquer les articles dans l'auteur grossit un seul document vers sa limite de taille. Un
_idest unique dans sa collection : 5 000 articles ne peuvent pas partager le même. La référence garde une seule copie à jour.- Un document
Dans MongoDB, un ensemble de documents s'appelle une … ; c'est l'équivalent d'une … relationnelle, sans structure imposée à chaque document.
Voir la réponse
Dans MongoDB, un ensemble de documents s'appelle une collection ; c'est l'équivalent d'une table relationnelle, sans structure imposée à chaque document.
Deux documents d'une même collection peuvent avoir des champs différents. Une collection est créée à la volée à la première insertion.
Imbriquer ou référencer : de quoi s'agit-il ?
Voir la réponse
Choix entre recopier une donnée liée à l'intérieur du document qui l'utilise, ou la garder dans son propre document en n'y mettant que son identifiant.
On imbrique ce qui se lit toujours avec le parent et reste borné ; on référence ce qui grossit sans fin, se partage entre beaucoup de documents ou doit rester à jour en un seul endroit.
L'ajout d'un abonné échoue : le document du compte dépasse la taille maximale de 16 Mo, car ses abonnés sont rangés dans un tableau imbriqué. Quelle est la correction ?
- Compresser le tableau avant de l'écrire dans le document
- Augmenter la taille maximale d'un document dans la configuration du serveur
- Une collection d'abonnements qui référencent le compte
- Ranger les abonnés dans plusieurs tableaux imbriqués du même document
Voir la réponse
Une collection d'abonnements qui référencent le compte
La limite de 16 Mo est fixe et ne se règle pas. Un tableau qui grossit sans borne ne doit pas être imbriqué : un document par abonnement n'a plus de plafond, et se lit page par page.