Я перемещаю нашу систему обмена сообщениями в MongoDB, и мне любопытно, какой подход использовать в отношении различных статистических данных, например количество сообщений на пользователя и т. д. В базе данных MS SQL у меня есть таблица, в которой у меня есть разные счетчики для каждого пользователя, и они обновляются с помощью триггера в соответствующих таблицах, поэтому я могу, например, узнать, сколько непрочитанных сообщений у UserA, не вызывая дорогостоящих SELECT Count (*)
операция.
Является ли функция count
в MongoDB дорогой?
Я начал читать о map / reduce, но мой сайт очень загружен, поэтому статистика должна обновляться в реальном времени, и я понимаю, что map / reduce - операция, требующая много времени.
Каким будет лучший (с точки зрения производительности) подход к сбору различных совокупных показателей в MongoDB?