Сохранение данных из Redis в MongoDB для хранилища данных - PullRequest
1 голос
/ 01 апреля 2012

У меня есть приложение, которое использует часто обновляемые списки.Так, например, каждый, кто нажимает кнопку, добавляется в уникальный список, связанный с этой кнопкой.Затем мы хотим отобразить эти списки, по кнопкам, в порядке убывания и с ограничением.

Мы делали это, используя MySQL и Memcache.Проблема в том, что это не очень хорошо работает.

Я планирую использовать списки Redis.Каждая кнопка будет содержать уникальный ключ в Redis, каждый пользователь будет добавлен к ключу с помощью LPUSH. Если мы хотим получить последние 10, мы можем использовать LRANGE 0 10

Теперь, в конце концов, эти кнопки будут 'истекает »и больше не будет активно добавляться или нажиматься, однако нам понадобятся исторические данные.Идея заключается в том, что по истечении этого срока мы получим данные из Redis и заполним их в MongoDB.Любые запросы по историческим данным будут против MongoDB.

Кто-нибудь предложил бы против этого решения?Имеет ли смысл делать это таким образом?

Спасибо!

1 Ответ

2 голосов
/ 01 апреля 2012

Это решение имеет смысл, я делаю нечто подобное в своем приложении.

Следует отметить одну вещь:

Так, например, каждый, кто нажимает кнопку, добавляется в уникальный список, связанный с этой кнопкой.

Вы разрешаете дублировать пользователей в этом списке? Если да, используйте списки. Если нет, возможно, вы захотите соединить его с set (для уникальных проверок), но это будет стоить вам некоторой оперативной памяти.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...