2010-04-04 168 views
2

我对Redis颇为陌生,在使用之前我想学习一些重要的细节(如我)。所以......Redis - 数据大小是否可以大于内存大小?

Redis正在使用RAM和HDD来存储数据。 RAM用作快速读/写存储器,HDD用于使数据持久。当Redis启动时,它会将所有数据从硬盘加载到RAM中,或者只将经常查询的数据加载到RAM中?如果我在硬盘上安装了500Mb Redis存储器,但Redis只有100Mb或RAM。我在哪里可以读到它?

谢谢

PS:对不起,我的英语

回答

6

Redis的一切都加载到RAM中。所有数据都写入磁盘,但只能读取重新启动服务器或备份等内容。

虽然有几种方法可以用少于RAM的数据使用它。您可以将它与MySQL或另一个基于磁盘的存储结合使用,以便像memcached一样工作 - 您可以手动管理缓存未命中和持久性。

Redis有一个虚拟机模式,其中所有的密钥必须适合RAM,但不常访问的数据可以在磁盘上。不过,我不确定这是否还处于稳定版本。

+0

非常有用,但是从哪里知道VM模式?在文档中找不到它。或者你正在检查新版本的源代码? – Kirzilla 2010-04-06 06:55:48

+2

http://antirez.com/post/redis-virtual-memory-story.html – 2010-04-06 07:20:11

+3

因为这篇文章,Redis虚拟机已被弃用,并很快被删除。 – 2011-11-18 22:02:28