Soy nuevo en MongoDB, proveniente de un fondo de base de datos relacional. Quiero diseñar una estructura de preguntas con algunos comentarios, pero no sé qué relación usar para los comentarios: ¿ embed
o reference
?
Una pregunta con algunos comentarios, como stackoverflow , tendría una estructura como esta:
Question
title = 'aaa'
content = bbb'
comments = ???
Al principio, quiero usar comentarios incrustados (creo que embed
se recomienda en MongoDB), así:
Question
title = 'aaa'
content = 'bbb'
comments = [ { content = 'xxx', createdAt = 'yyy'},
{ content = 'xxx', createdAt = 'yyy'},
{ content = 'xxx', createdAt = 'yyy'} ]
Está claro, pero me preocupa este caso: si quiero editar un comentario específico, ¿cómo obtengo su contenido y su pregunta? No hay _id
que dejarme encontrar uno, ni question_ref
dejar que encuentre su pregunta. (Soy tan novato, que no sé si hay alguna forma de hacerlo sin _id
y question_ref
).
¿Tengo que usar ref
no embed
? ¿Entonces tengo que crear una nueva colección para comentarios?