• 1. Redis介绍参考资料:http://baike.baidu.com/view/4595959.htm
  • 2. Redis 是什么redis是一个key-value存储系统。它支持存储的value类型包括string(字符串)、list(链表)、set(集合)和zset(有序集合)。 这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。 redis支持各种不同方式的排序。 为了保证效率,数据都是缓存在内存中。redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件 并且在此基础上实现了master-slave(主从)同步。
  • 3. Redis 特性
  • 4. NOSQL 介绍
  • 5. NOSQL 分类一1. 满足海量存储需求和访问的面向文档的数据库 (1)MongoDB MongoDB是用C++开发的,主要解决的是海量数据的访问效率问题。根据官方文档记载,当数据量达到50GB以上的时候,MongoDB的数据库访问速度是MySQL的10倍以上。MongoDB的并发读写效率不是特别出色,根据官方提供的性能测试表明,大约每秒可以处理0.5万~1.5万次读写请求 (2)CouchDB CouchDB是用Erlang开发的面向文档的数据库系统,其数据存储方式类似Lucene的Index文件格式。 CouchDB最大的意义在于它是一个面向Web应用的新一代存储系统,事实上,CouchDB的口号就是:下一代的Web应用存储系统。 它可以把存储系统分布到n台物理节点上,并且可以很好地协调和同步节点之间的数据读写一致性。这当然也得益于Erlang无与伦比的并发特性
  • 6. NOSQL 分类二2. 满足极高读写性能需求的Key-Value数据库 1)Redis Redis本质上是一个Key-Value类型的内存数据库,类似Memcached,整个数据库加载在内存当中进行操作,定期通过异步操作把数据库数据flush到硬盘上进行保存。因为是纯内存操作,Redis的性能非常出色,每秒可以处理超过10万次读写操作,是我知道的性能最快的Key-Value DB。 Redis的出色之处不仅仅是性能,Redis最大的魅力是支持保存List链表和Set集合的数据结构,而且还支持对List进行各种操作。 2)Tokyo Cabinet和Tokyo Tyrant Tokyo Cabinet(TC)和Tokyo Tyrant(TT)的开发者是日本人Mikio Hirabayashi,主要用于日本最大的SNS网站mixi.jp。TC出现的时间最早,现在已经是一个非常成熟的项目,也是Key-Value数据库领域最大的热点,现在广泛应用于网站。TC是一个高性能的存储引擎,而TT提供了多线程高并发服务器,性能也非常出色,每秒可以处理4万~5万次读写操作。
  • 7. NOSQL 分类三3. 满足高可扩展性和可用性的面向分布式计算的数据库 (1)Cassandra Cassandra的主要特点就是它不是一个数据库,而是由一堆数据库节点共同构成的一个分布式网络服务。对Cassandra的一个写操作会被复制到其他节点上,对Cassandra的读操作也会被路由到某个节点上面去读取。对于一个Cassandra群集来说,扩展性能是比较简单的事情,只需在群集里面添加节点就可以了。 若以单个节点来衡量Cassandra,其节点的并发读写性能不是特别好 (2)Voldemort Voldemort与Cassandra类似,也是面向解决scale问题的分布式数据库系统。Cassandra来自于Facebook这个SNS网站,而Voldemort则来自于Linkedin这个SNS网站。 说起来SNS网站为我们贡献了许多的NoSQL数据库,例如Cassandra、Voldemort、Tokyo Cabinet、Flare等。Voldemort的资料不是很多,Voldemort官方给出Voldemort的并发读写性能也很不错,每秒读写超过了1.5万次。
  • 8. Redis 配置Redis安装目录下,redis.conf文件 参考: http://liuxinglanyue.iteye.com/blog/828594 可以配置: 端口、集群、最大连接数、最大内存数、持久化、日志、….