Redis - Размер данных может быть больше размера памяти?
-
24-09-2019 - |
Вопрос
Я довольно нового для Redis и прежде чем использовать его, я бы хотел узнать некоторые важные (как для меня) детали на нем. Так....
Redis использует RAM и HDD для хранения данных. ОЗУ используется как быстрое хранилище чтения / записи, HDD используется для сохранения этих данных. Когда Redis запускается, он загружает все данные с HDD в RAM или его загружает только часто запрашиваемые данные в ОЗУ? Что, если у меня будет 500 МБ Redis Storage на жестком диске, но у меня только 100 МБ или ОЗУ для Redis. Где я могу прочитать об этом?
Спасибо
PS: извините за мой английский
Решение
Redis загружает все в ОЗУ. Все данные записываются на диск, но будут читаться только для таких вещей, как перезапустить сервер или сделать резервную копию.
Есть пара способов, которыми вы можете использовать его с меньшими операторами, чем данные. Вы можете настроить его в сочетании с MySQL или другим дисковым магазином для работы, как Memcached - вы управляете пропуском кэша и настойчивости вручную.
Redis имеет режим VM, где все ключи должны вписаться в RAM, но редко доступные данные могут быть на диске. Тем не менее, я не уверен, если это еще в стабильных сборках.
Другие советы
Последние версии (> 2.0) значительно улучшились, и управление памятью более эффективна. См. Этот блог, который объясняет, как использовать хеси для оптимизации следа памяти памяти RAM: http://antirez.com/post/redis-weekly-update-7.html.