Continuando con estos posts:

En DZone han publicado la primera parte de un artículo dedicado a las Reglas para el Modelado de Datos en MongoDB.

Repasemos lo que comentan en el post:

Modelado embebido:

  • Apropiado para relaciones 1-pocos y para cuando los datos embebidos no cambian a menudo o no se mantienen por separado (pj direcciones de una persona)
  • Ventaja que no es necesario hacer una query separada para obtener los detalles

Ejemplo:

Modelado con Referencias:

  • Apropiado en general para relaciones 1-muchos
  • La ventaja principal es que permite consultar y actualizar los documentos por separado. También permite relaciones N-M.
  • El inconveniente que es necesario realizar una segunda query para obtener los detalles de cada padre.

Ejemplo:

Las parts de Product hacen referencia a un ObjectID y pueden buscarse de esta forma:

Otro ejemplo:

Si quiero obtener los últimos mensajes de log para una IP lanzaré: