Я использую Map Reduce с MongoDB. Упрощенный сценарий: есть пользователи, предметы и вещи. Предметы включают в себя любое количество вещей. Каждый пользователь может оценивать вещи. Карта уменьшения используется для расчета совокупного рейтинга для каждого пользователя по каждому элементу. Это сложная формула, использующая рейтинги для каждой вещи в элементе и время суток - это не то, что вы могли бы когда-либо индексировать, и, таким образом, сокращение карты - это идеальный подход к его вычислению.
Вопрос в том, чтобы: рассчитав результаты с помощью Map Reduce, какие стратегии используют люди для сохранения этих коллекций результатов для каждого пользователя в своих базах данных NOSQL?
1) По требованию с автоматическим удалением: сохраняйте их в течение некоторого установленного периода времени, а затем удаляйте их; восстановить их по мере необходимости, когда пользователь делает новый запрос?
2) По требованию никогда не удаляйте: храните их неограниченное время. Когда пользователь отправляет запрос и коллекция истекает по дате его использования, создайте ее заново.
3) Запланировано: регулярный процесс для обновления всех коллекций результатов для всех пользователей?
4) Другое?