2013-12-03 3 views
4

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

Когда я беру коллекцию документов, и я хочу получить конкретную версию для каждой записи, тогда каждый вызов метода: entry.history_tracks вызывает вызов 1 запроса базы данных к коллекции дорожек истории. Поэтому, когда у меня есть коллекция из 100 записей, я получаю 1 + 100 запросов к базе данных.

Есть ли простой способ исправить эту проблему? Я пробовал метод cache, но он не решает проблему, так как каждый запрос отличается.

+0

Как выглядит ваш документ? –

+0

Предположим, что это простой документ с двумя строковыми полями: заголовок и контент. Я хотел бы отслеживать его создание, обновление и удаление. – Konrad

+0

Я не знаю, как работает мангоидная история, но почему она не вставляет историю документа внутри самой записи? Или, может быть, создать другую модель, например EntryHistory, которая будет включать всю историю объекта, а не хранить их отдельно. –

ответ

0

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

Смежные вопросы