MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Recommandations sur la structure de Mongoid/MongoDB Tree of Tags

Avez-vous besoin de mettre à jour la structure de l'arborescence (c'est-à-dire de déplacer une balise vers un autre parent) ? Si cela est possible, l'approche intégrée deviendrait difficile et l'approche relationnelle/normalisée aurait plus de sens.

Je stockerais probablement les balises elles-mêmes dans le document (intégrées), mais s'il y a une chance que j'aie besoin de déplacer des nœuds d'arbre en ligne, alors je stockerais la hiérarchie dans un autre document. Les requêtes n'ont pas besoin d'être lentes, si vous aplatissez d'abord la requête de recherche (selon l'arborescence actuelle), puis recherchez ces balises. Cette approche ne s'adapte probablement pas bien si la requête de recherche aplatie finit par contenir des centaines de balises (quelle est la hauteur de votre arbre ?).

Si les balises ne peuvent pas être déplacées vers de nouveaux parents (ou uniquement par vous, lors de la maintenance planifiée), continuez et intégrez toute la hiérarchie.