Jestem nowy w MongoDB - pochodzę z relacyjnej bazy danych. Chcę zaprojektować strukturę pytań z niektórymi komentarzami, ale nie wiem, jakiej relacji użyć w przypadku komentarzy: embed
lub reference
?
Pytanie z niektórymi komentarzami, takie jak stackoverflow , miałoby następującą strukturę:
Question
title = 'aaa'
content = bbb'
comments = ???
Najpierw chcę użyć osadzonych komentarzy (myślę, że embed
jest to zalecane w MongoDB), w następujący sposób:
Question
title = 'aaa'
content = 'bbb'
comments = [ { content = 'xxx', createdAt = 'yyy'},
{ content = 'xxx', createdAt = 'yyy'},
{ content = 'xxx', createdAt = 'yyy'} ]
To jasne, ale martwię się o tę sprawę: jeśli chcę edytować określony komentarz, w jaki sposób mogę uzyskać jego treść i pytanie? Nie ma nic, _id
co pozwoliłoby mi znaleźć, ani question_ref
pozwolić mi znaleźć jego pytanie. (Jestem tak początkujący, że nie wiem, czy można to zrobić bez _id
i question_ref
.)
Czy muszę używać ref
nie embed
? Więc muszę utworzyć nową kolekcję dla komentarzy?