2011-01-19 75 views

回答

23

Redis将使用比磁盘更多的RAM。转储文件格式可能更密集一点。这是一个真正的生产系统中的一些数字(64位EC2实例大在Ubuntu 10.04上运行的Redis 2.0.4):

$ redis-cli info | grep used_memory_human 
used_memory_human:1.36G 

$ du -sh /mnt/data/redis/dump.rdb 
950M /mnt/data/redis/dump.rdb 

正如你所看到的,转储文件比内存使用量小的几百个兆。

最终它取决于你在数据库中存储的内容。我主要在我的哈希中,只有少数(可能少于1%)集合。没有一个键包含非常大的对象,平均对象大小为889字节。

-3

Redis数据库存储在内存中,因此一个80mb的数据库会占用80MB的内存。

Redis是一个使用程序极低的内存,你可以从这个例子中看到,从网站上的“100万个密钥,密钥是从0到999999的自然数和字符串”Hello World“作为值使用100MB [Ram的]“。我的Redis应用程序使用大约300kb到500kb的内存,所以您需要大量数据才能访问80mb的数据库。 Redis还可以保存到数据库的磁盘快照,因此80MB RAM和硬盘80MB。

+1

-1这根本不准确。我有4.1GB的数据,占用11GB的RAM。 – Alan 2013-09-14 17:52:26

+1

-1明显的错误答案... – 2013-12-04 15:00:33