Redis - Может ли размер данных превышать объем памяти? - PullRequest
5 голосов
/ 04 апреля 2010

Я довольно новичок в Redis, и прежде чем использовать его, я хотел бы узнать некоторые важные (как для меня) детали о нем. Так ....

Redis использует RAM и HDD для хранения данных. RAM используется как быстрое хранилище для чтения / записи, HDD используется для сохранения этих данных. Когда Redis запускается, он загружает все данные с жесткого диска в оперативную память или загружает только часто запрашиваемые данные в оперативную память? Что делать, если у меня на жестком диске 500 Мб памяти Redis, но у меня только 100 Мб или оперативной памяти для Redis. Где я могу прочитать об этом?

Спасибо

PS: простите за мой английский

Ответы [ 2 ]

9 голосов
/ 06 апреля 2010

Redis загружает все в оперативную память. Все данные записываются на диск, но будут считываться только для таких вещей, как перезапуск сервера или создание резервной копии.

Есть несколько способов использовать его с меньшим объемом оперативной памяти, чем данные. Вы можете настроить его в сочетании с MySQL или другим дисковым хранилищем так, чтобы он работал так же, как memcached - вы вручную управляете отсутствием и сохранением кэша.

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

1 голос
/ 07 февраля 2012

Последние версии (> 2.0) значительно улучшились, а управление памятью стало более эффективным. См. Этот пост в блоге, в котором объясняется, как использовать хеши для оптимизации объема оперативной памяти: http://antirez.com/post/redis-weekly-update-7.html

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