Incrustar o referenciar
Cuándo guardar los datos relacionados dentro del documento y cuándo en otra colección.
Un dato relacionado puede ir dentro del documento que lo usa o en otra colección, unido con $lookup. La elección decide cuántas lecturas hace tu aplicación.
Cómo funciona
Incrustar guarda el dato dentro del documento: se lee y se escribe con él en una sola operación. Un documento siempre vive entero en un rango. Referenciar guarda un identificador y el dato en otra colección; leer los dos juntos pide $lookup o dos consultas.
Qué implica para tu aplicación
Incrusta lo que se lee siempre con el documento y crece poco, como las líneas de un pedido. Referencia lo que se comparte entre muchos documentos o crece sin límite, como los pedidos de un cliente. Una escritura que toca dos colecciones necesita una transacción si debe ser atómica.
Límites
Un documento no puede pasar del tamaño máximo de BSON de MongoDB. Un $lookup entre colecciones repartidas en muchos rangos lee de varios nodos.