Ich bin neu bei MongoDB - ich komme von einer relationalen Datenbank. Ich möchte eine Fragenstruktur mit einigen Kommentaren entwerfen, aber ich weiß nicht, welche Beziehung ich für Kommentare verwenden soll: embed
o reference
?
Eine Frage mit einigen Kommentaren, wie Stackoverflow hätte eine Struktur wie diese:
Question
title = 'aaa'
content = bbb'
comments = ???
Zunächst möchte ich eingebettete Kommentare verwenden (ich denke embed
wird in MongoDB empfohlen), etwa so:
Question
title = 'aaa'
content = 'bbb'
comments = [ { content = 'xxx', createdAt = 'yyy'},
{ content = 'xxx', createdAt = 'yyy'},
{ content = 'xxx', createdAt = 'yyy'} ]
Das ist klar, aber ich mache mir Sorgen um diesen Fall: Wenn ich einen bestimmten Kommentar bearbeiten möchte, wie erhalte ich den Inhalt und die Frage? Es gibt keine _id
um mich einen finden zu lassen, noch question_ref
damit ich die Frage finden kann. (Ich bin so neu, dass ich nicht weiß, ob es eine Möglichkeit gibt, dies zu tun, ohne _id
y question_ref
.)
Muss ich die ref
no embed
? Muss ich dann eine neue Sammlung für Kommentare anlegen?