Mongo БД отношения между объектами
-
30-09-2019 - |
Вопрос
Я пытаюсь реализовать хранилище в блоге, используя Mongo DB.
У меня есть два объекта домена:
«Сообщение в блоге» и «Автор»
В настоящее время я добавил Armid Property для Blog Post Entity. Это правильный подход к хранению отношения между объектами?
Решение
В настоящее время я добавил Armid Property для Blog Post Entity. Это правильный подход к хранению отношения между объектами?
Я бы сказал нет. Вы «предполагаемые», чтобы хранить все, что вам нужно в блоге документа в денормализованный путь (например, сообщение в блоге, комментарии, теги и т. Д.). Поэтому, если вы хотите показать имя автора, вы должны добавить его в документ блога. Это позволило бы получить данные целой страницы с помощью одного запроса, что является точкой точки ориентированной на документацию базы данных.
Другие советы
Я думаю, что этот пост будет подходящим для вас http://www.mongodb.org/display/docs/schema+design.
Случаи применения
Клиент / заказ / заказ на заказ
Заказы должны быть коллекцией. Клиенты коллекция. Линейные элементы должны быть массивом линейных элементов, встроенных в объект заказа.
Система блога.
Посты должны быть коллекцией. Почтовый автор может быть отдельной коллекцией или просто поле в пределах сообщений, если только адрес электронной почты. Комментарии должны быть встроенные объекты в должности для производительности.
Основы дизайна схемы
Kyle Banker, 10GEN
Оптимизация индексации и запроса Алвин Ричардс, старший директор Enterpage Engineering
http://www.10gen.com/presentation/mongosf-2011/mongodb-indexing-query-optimization
** Эти 2 видео являются лучшими на Mongoddb, когда-либо видели ИМХО *