阅读目的: 对什么是内存型数据库有概念性的认知。?web
阅读需知:有关Redis系列的博文,大体有如下的5篇博文。本ID将陆续补充。 redis
1 . 0 :首先,这是您在Redis的官方网站:数据库
1.1 您须要成功的下载,安装,而且配置好Redis。 有关过程请参考本ID的另外的一篇博文:高并发
Redis 系列 - 2 【安装与配置】性能
1.2 若是您须要了解Redis的设计与实现,请参考本ID博文:学习
Redis 系列 - 3 【Redis的设计与实现】网站
1.3 若是您须要了解Redis的 客户端,请参考本ID的其余博文:google
Redis 系列 - 4 【Redis 客户端 - JRedis的详细解析】spa
1.4 若是您须要了解 Redis与Storm是如何整合的,那么请参考本ID的博文:
Redis系列 -5 【Storm-redis-pubsub】 -Storm接口系列
? 1.5 若是您须要了解,抑或是在使用的过程之中出现了问题,请参考本ID的另外的博文
? ?Redis系列 - 6 【疑难杂症与问题诊断】 - QA时间。
若是以上的博文存在任何的纰漏,亦或您对本ID的博文有任何疑问,观点,建议,请及时给我反馈。多谢您的阅读。
Redis 是什么?
一般而言目前的数据库分类有几种,包括 SQL/NSQL,,关系数据库,键值数据库等等 等,分类的标准也不以,Redis本质上也是一种键值数据库的,但它在保持键值数据库简单快捷特色的同时,又吸取了部分关系数据库的优势。从而使它的位置处于关系数据库和键值数 据库之间。Redis不只能保存Strings类型的数据,还能保存Lists类型(有序)和Sets类型(无序)的数据,并且还能完成排序(SORT) 等高级功能,在实现INCR,SETNX等功能的时候,保证了其操做的原子性,除此之外,还支持主从复制等功能。
更为详细的描述请参考以下:
http://code.google.com/p/redis/wiki/index
Redis官方也一样提供了一个名为Retwis的项目代码,能够对照着官方学习。
2 Redis用来作什么?
一般局限点来讲,Redis也以消息队列的形式存在,做为内嵌的List存在,知足实时的高并发需求。而一般在一个电商类型的数据处理过程之中,有关商品,热销,推荐排序的队列,一般存放在Redis之中,期间也包扩Storm对于Redis列表的读取和更新。
一个详细的示范用例,还请参考本ID的另一篇博文: Storm 【topN】 排序。期间使用的是:Storm-redis-pubsub的接口
性能极高 – Redis能支持超过 100K+ 每秒的读写频率。
丰富的数据类型 – Redis支持二进制案例的 Strings, Lists, Hashes, Sets 及 Ordered Sets 数据类型操做。
原子 – Redis的全部操做都是原子性的,同时Redis还支持对几个操做全并后的原子性执行。
丰富的特性 – Redis还支持 publish/subscribe, 通知, key 过时等等特性。
是数据库容量受到物理内存的限制,不能用做海量数据的高性能读写,所以Redis适合的场景主要局限在较小数据量的高性能操做和运算上。
总结: Redis受限于特定的场景,专一于特定的领域之下,速度至关之快,目前还未找到能替代使用产品。