Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。从2010年3月15日起,Redis的开发工作由VMware主持。从2013年5月开始,Redis的开发由Pivotal赞助。
与常见的关系型数据库不同,redis舍弃了关系型数据库的关系,从而简化了关系型数据库在存储数据时使用的大量的关系算法,所以redis的优点是在处理海量数据的增删改查时具有很好的性能,同时维护海量数据也十分方便。而缺点则是数据和数据之间没有了关系,所以不能很好的得到数据之间的关系,同时没有强大的事务保证数据的安全性。关系型数据库适合一般数据量的数据,非关系型数据库适合处理海量数据,当数据需要保证安全的时候需要使用关系型数据库,而对查询量很多且不是十分重要的数据使用非关系型数据库保存。如新浪微博,知乎和github等都是redis的使用者。
redis是一种非关系型数据库,它是一个key-value存储系统。它支持存储的value类型很多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。redis的使用方面:
1.关系型数据库的缓存
当客户端第一次向数据库请求查询数据时,非关系型数据库首先得到关系型数据库中的数据并保存起来,返回给客户端。当客户端再有相同的请求时,直接读取非关系型数据库的数据即可得到最终的结果
2.任务队列
3.大量数据运算
4.排行榜