redis简介
Redis是一个开源的使用ANSIC语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API
Redis是 NoSQL(nosql中存储的数据都是key-value形式)技术阵营中的一员,它通过多种键值数据类型来适应不同场景下的存储
需求,借助一些高层级的接口使用其可以胜任,如缓存、队列系统的不同角色
redis特性
1)Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。
2)Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。
3)Redis支持数据的备份,即master-slave模式的数据备份。
redis优势
1)性能极高 – Redis能读的速度是110000次/s,写的速度是81000次/s 。
2)丰富的数据类型 – Redis支持二进制案例的 Strings, Lists, Hashes, Sets 及 Ordered Sets 数据类型操作。
3)原子 – Redis的所有操作都是原子性的,同时Redis还支持对几个操作全并后的原子性执行。
4)丰富的特性 – Redis还支持 publish/subscribe, 通知, key 过期等等特性。
redis应用场景
1)用来做缓存(ehcache/memcached)——redis的所有数据是放在内存中的(内存数据库)
2)可以在某些特定应用场景下替代传统数据库——比如社交类的应用
3)在一些大型系统中,巧妙地实现一些特定的功能:session共享、购物车
数据结构
redis是key-value的数据结构,每条数据都是⼀个键值对
键的类型是字符串,(键不能重复)
值的类型分为五种:
1)字符串string
2)哈希hash
3)列表list
4)集合set
5)有序集合zset