Я строю простую систему учета, в которой у пользователя много счетов. Теперь я пытаюсь решить, должны ли счета быть их собственной коллекцией или вложенными в пользователя. Я склоняюсь к первому, но я НИКОГДА не делал никаких вещей noSQL, поэтому я просто иду по пробной версии и ошибкам, и то, что, как мне кажется, имеет смысл для меня.
Я понимаю, что у Mongo есть ограничение на размер документа размером 4 МБ, что заставляет меня думать, что у меня должна быть отдельная коллекция для счетов, так как они будут накапливаться ежедневно и могут в конечном итоге заняться большим объемом пространства.
Я просто ищу мнения по этому вопросу. В основном я буду запрашивать счета пользователя между разными датами (как вы можете себе представить, что система учета будет делать).
Не то, чтобы это действительно имело значение, но я использую Mongoid в проекте Rails3. Я решил, что сделаю что-то вроде:
class User
references_many :bills
end
class Bill
referenced_in :user
end
Приветствуются любые комментарии или предложения по дизайну.