структура документа mongodb - PullRequest
       3

структура документа mongodb

0 голосов
/ 14 января 2012

В моей базе данных есть коллекция пользователей, у каждого пользователя есть несколько документов, каждый документ имеет несколько разделов каждый раздел имеет несколько работ

Пользователи работают с коллекцией работ очень часто (добавляют новую работу, обновляют работы, удаляют работы). Итак, мой вопрос, какую структуру коллекций я должен сделать? собрание сочинений составляет 100-200 записей на раздел.

Должен ли я делать сбор работ для всех пользователей с идентификатором пользователя _id или есть лучшее решение?

Ответы [ 2 ]

2 голосов
/ 14 января 2012

Зависит от того, какие у вас запросы. Принцип состоит в том, чтобы упорядочить документы так, чтобы в идеале можно было получить все, что вам нужно, в одном запросе.

С другой стороны, вам, вероятно, следует избегать перераспределения документов mongo, поскольку для обновления на месте недостаточно места. Вы можете сделать это, предварительно выделив достаточно места или выделив эту часто меняющуюся часть в свою собственную коллекцию.

0 голосов
/ 14 января 2012

Как вы можете прочитать в документации MongoDB,

Как правило, для «содержащих» отношений между сущностями следует выбирать встраивание. Использование ссылок, если они не используются, может привести к дублированию данных.

Так что, если каждый пользователь имеет доступ только к своим документам, я думаю, что вы хорошо. Просто имейте в виду, что для документов существует ограничение по размеру (я думаю, 16 МБ), с которым вам следует быть осторожным, поскольку вы встраиваете много вещей.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...