Я новачок у MongoDB - походить із реляційної бази даних. Я хочу створити структуру питань з деякими коментарями, але я не знаю, яке відношення використовувати для коментарів: embed
або reference
?
Питання з деякими коментарями, як-от stackoverflow , має таку структуру:
Question
title = 'aaa'
content = bbb'
comments = ???
Спочатку я хочу використовувати вбудовані коментарі (я вважаю, що embed
це рекомендується в MongoDB), наприклад:
Question
title = 'aaa'
content = 'bbb'
comments = [ { content = 'xxx', createdAt = 'yyy'},
{ content = 'xxx', createdAt = 'yyy'},
{ content = 'xxx', createdAt = 'yyy'} ]
Зрозуміло, але я переживаю за цей випадок: якщо я хочу відредагувати зазначений коментар, як я можу отримати його зміст та його питання? Немає _id
дозволити мені знайти його, ані question_ref
дозволити мені знайти його питання. (Я настільки новачок, що не знаю, чи є спосіб зробити це без _id
і question_ref
.)
Чи потрібно використовувати ref
не embed
? Тоді мені доведеться створити нову колекцію для коментарів?