Почему у MongoDB есть коллекции - PullRequest
7 голосов
/ 30 ноября 2011

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

Так зачем нам все-таки коллекции?

Ответы [ 3 ]

8 голосов
/ 30 ноября 2011

По логике да, вы могли бы спроектировать систему баз данных подобным образом, но на самом деле нет.

  • В коллекции есть указатели на документы.
  • Коллекция требует, чтобы документы в ней имели уникальные идентификаторы.
  • Размер документа ограничен.
1 голос
/ 30 ноября 2011
  • Идентификаторы объектов (_id атрибут документа верхнего уровня) должны быть уникальными в коллекции.Несколько коллекций могут иметь один и тот же _id, как и в RDBM, где ограничение ключа для каждой таблицы, но несколько таблиц могут содержать одно и то же значение ключа.
0 голосов
/ 30 ноября 2011

collection - это контейнер для документов. поэтому, когда вы говорите, что документ содержит другие документы, это немного неправильно, потому что у документа уже могут быть внутренние документы.

Коллекция - это единица, в которую вы собираете документы. Имейте в виду, что благодаря дизайну без схемы вы можете поместить в коллекцию что угодно, но это не очень хороший дизайн. Таким образом, коллекция является своего рода логическим контейнером для документов. так же, как таблицы в реляционном мире.

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