Redis的数据库大小与内存比率是多少?
例如,如果我有一个80MB的数据库,Redis将使用多少RAM(与普通的Web应用程序一起使用时)?
答案 0 :(得分:24)
Redis将使用比磁盘更多的RAM。 dumpfile格式可能更密集。这是来自真实生产系统的一些数字(在Ubuntu 10.04上运行Redis 2.0.4的64位EC2大型实例):
$ 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
如您所见,dumpfile比内存使用量小几百兆。
最后,它取决于您在数据库中存储的内容。我的主要是哈希,只有少数(可能不到1%)。没有任何键包含非常大的对象,平均对象大小为889字节。
答案 1 :(得分:-3)
Redis数据库存储在内存中,因此80mb的数据库占用80mb的内存。
Redis是一个极低内存使用程序,你可以从网站上看到这个例子“1百万个密钥,密钥是从0到999999的自然数字,字符串”Hello World“作为值使用100MB [拉姆]“。我的Redis应用程序使用大约300kb到500kb的RAM,因此您需要大量数据才能到达80mb的数据库。 Redis还保存到数据库的磁盘快照,因此硬盘驱动器为80mb,硬盘驱动器为80mb。