MongoDB, C # и NoRM + денормализация

Я пытаюсь использовать MongoDB, C # и NoRM для работы над некоторыми примерами проектов, но сейчас мне гораздо сложнее обернуть моя голова вокруг модели данных. С данными, связанными с СУБД, проблем нет. Однако в MongoDB мне сложно решить, что с ними делать.

Давайте воспользуемся StackOverflow в качестве примера ... У меня нет проблем с пониманием того, что большая часть данных на странице вопроса должна быть включена в один документ. Заголовок, текст вопроса, исправления, комментарии ... все хорошо в одном объекте документа.

Я начинаю терять уверенность в вопросе данных пользователя , таких как имя пользователя, аватар, репутация (которая особенно меняется довольно часто)... Вы денормализуете и обновляете тысячи записей документов каждый раз, когда происходит изменение пользователя, или вы каким-то образом связываете данные вместе?

Каков наиболее эффективный способ установить отношения между пользователями, не вызывая множества запросов при каждой загрузке страницы ? Я заметил тип DbReference в NoRM, но пока не нашел отличного способа его использования. Что, если у меня есть необязательные отношения, допускающие значение NULL?

Спасибо за понимание!

8
задан jocull 18 March 2011 в 14:53
поделиться