2013-12-22 5 views
4

Я собираюсь использовать Redis в качестве кеша, чтобы уменьшить запросы к базе данных.
Я знаю, что это не вопрос с явным ответом, но я беспокоюсь о том, какой размер памяти нужен Редису.Как рассчитать, сколько нужно RAM redis?

Я собираюсь сэкономить 10 миллионов integer number в некотором redis sets. (некоторые для идентификаторов пользователей, некоторые для альбомов, ...) и 2 миллиона строк длиной 30 символов.

В MYSQL образом:int составляет длину 4 байта, так 10000000 * 4 = 40 миллиона байт.
и строка с 30 символами может занимать 30 байт, 30 байт * 2 миллиона = 60 миллионов байт.

Так что на бумаге мне нужно 100MB, чтобы сохранить их в redis, но я знаю в REAL, это может быть иначе.

Может кто-нибудь помочь мне оценить, сколько ОЗУ мне нужно?

+0

Сразу отметим, что Redis делает индексы и диапазоны, поэтому я думаю, что это число неверны! Я должен купить план redis, но пытаюсь выяснить, какой план? – JehandadK

ответ

3

Лучший ответ - эксперимент. 100mb не так много, поэтому просто нажимайте 40 + 60 миллионов случайных байтов на redis и просто умножайтесь, чтобы получить номера для 1gb и более. Весы масштабируются линейно.

Играйте с различными типами хранения (хэши и т. Д.).

Массовая вставка может помочь вам в ваших экспериментах http://redis.io/topics/mass-insert

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