2015-02-17 1 views
0

Я использую MongoDB для CMS. Я хочу сохранить комментарии пользователей в родительском документе - подход №. 2 в this официальный использование случай пример.Обработка комментариев сохраненный родительский документ с использованием MongoDB

Как указано в примере, MongoDB имеет ограничение по 16 МБ для каждого документа. Как я могу продолжать добавлять комментарии в другом документе, который все равно будет ссылаться на оригинал, если у меня закончится свободное пространство?

+1

Вы посмотрели Grid FS? http://docs.mongodb.org/manual/core/gridfs/ – gasparms

ответ

1

Я недавно рассмотрел эту проблему.

Одна из возможностей - ограничить размер комментариев на лицевой стороне, а затем сохранить только определенное количество комментариев в родительском документе, а также сохранить _id следующего документа с комментариями, а затем использовать виджеты для разбивки на страницы продолжайте делать выборки для следующего документа комментариев. Это позволяет вам показывать первые несколько комментариев, а затем загружать остальные с помощью кнопки «Загрузить дополнительные комментарии». Однако я не люблю решение.

Другим решением было бы сохранить все комментарии в отдельной коллекции с внешним ключом в исходный документ _id. Затем вы можете искать эту коллекцию, когда пользователь нажимает «Показать комментарии», и вы можете получить все комментарии к этому документу в одном запросе. Это похоже на реляционную модель, поэтому я также не люблю ее как решение.

Смежные вопросы