大量数据能缓存到redis里面吗?

大量数据能缓存到redis里面吗


哈士奇WWW
浏览 4104回答 1
1回答

DIEA

不适合引子:    在大数据时代,总希望存在一个Key-value存储机制,像HashMap一样在内存中处理大量(千万数量级)的key-value对,以便提高数据查找、修改速度。    所以,我们会想到,Memcached和Redis这两个NoSQL数据库(严格来讲二者都不可以算作数据库)。    1、Memcached是一个cache机制,当内存不足时会采用LRU机制,替换出陈旧数据,因此他不能保证我们的数据像在HashMap中一样不丢失,且没有数据持久化机制;    2、Redis克服了这一缺点,采取磁盘存储机制实现数据持久化。但是,当数据量达到1千万左右时,由于内存中不能存储如此大量数目的数据,频繁同磁盘进行数据交换,导致数据查询、存储性能的急剧下降,将导致服务不可用。     结论:当前还没有好的产品可以实现key-value保证数据完整性,千万级条数量级的,高效存储和查询支持产品。     附录一:如下是转自其它网友的测试数据:     附录二:memcached 和redis的比较,和各自用途附录一:从图中可以猜测到还会有Redis 2.2.1 的测试,相同的测试环境,1K的数据量,使用ServiceStack.Redis客户端进行如下测试:  1) Set操作  2) Get操作  3) Del操作  每一套测试分别使用三个配置进行测试:  1) 绿色线条的是开启Dump方式的持久化,5分钟持久化一次  2) 蓝色线条是开启AOF方式的持久化,每秒写入磁盘一次  3) 红色线条是关闭任何的持久化方式  对于每一个配置都使用相同的其他配置:  1) 开启VM 最大内存10GB(128字节一
打开App,查看更多内容
随时随地看视频慕课网APP