Bonjour,
J'hésite sur la façon de structurer ma base de données MongoDB, j'ai besoin de personnes avec plus d'expérience que moi en NoSQL pour trancher.
Le problème :
Je dois stocker plusieurs catégories d'objets. Certains attributs sont génériques et présent pour tous les objets et d'autres attributs sont spécifique à la catégorie.
Par exemple, pour les catégories A, B et C :
A
------------
_id
date
prix
attributA1
attributA2B
------------
_id
date
prix
attributB1Je vais être amené à faire des requêtes :C
------------
_id
date
prix
attributC1
attributC2
attributC3
- sur toutes les catégories d'après les attributs communs (date et prix sur l'exemple)
- sur certaines catégories (A et C par exemple) d'après les attributs communs + des attributs spécifiques (attributA1 et attributC2 par exemple)
- sur une catégorie précise (B par exemple) d'après n'importe lequel de ses attributs
Comment structurer ma BDD ?
Je cherche autant la performance que la lisibilité.
Je ne vois que deux options :
--> Créer une collection par catégorie, ce qui implique de faire plusieurs requêtes dans certains cas.
ou
--> Enregistrer toutes les données dans une seule collection en ajoutant un attribut "catégorie".
D'après vous, quelle est la meilleurs solution ? Pourquoi ? En existe t-il d'autres ?
Partager