sql >> Base de Datos >  >> NoSQL >> MongoDB

Recomendaciones sobre la estructura para Mongoid/MongoDB Tree of Tags

¿Necesita actualizar la estructura del árbol (es decir, mover una etiqueta a otro padre)? Si eso es posible, el enfoque integrado se volvería difícil y el enfoque relacional/normalizado tiene más sentido.

Probablemente almacenaría las etiquetas en el documento (incrustado), pero si hay alguna posibilidad de que necesite mover los nodos del árbol en línea, entonces almacenaría la jerarquía en otro documento. Las consultas no necesitan ser lentas, si primero aplana la consulta de búsqueda (según el árbol actual) y luego busca esas etiquetas. Es probable que este enfoque no se adapte bien si la consulta de búsqueda plana termina con cientos de etiquetas (¿cuál es la altura de su árbol?).

Si las etiquetas no se pueden mover a nuevos padres (o solo usted, durante el mantenimiento programado), continúe e incruste toda la jerarquía.