1.redis 的类型
redis有五种类型,分别是String,hash,list,set,zset,都是以键值对进行存取。
1.String类型:
格式: set key value
string类型是二进制安全的。意思是redis的string可以包含任何数据。比如jpg图片或者序列化的对象 。
string类型是Redis最基本的数据类型,一个键最大能存储512MB。
2.hash类型:
hash是以key,value形式存在,但value里又分为key-value,也是以键值对的形式。适合存储对象,比如用来存储学生基本信息,或者用户信息等
格式: hmset key1 key2 value2
3.list类型:
特点:类似java中的inkedlist链表,数据可重复,有序
列表类型,可以储存多个value
4.set类型:
特点:不可重复,无序
列表类型,可以储存多个value
5.sorted set(zset)类型:
特点:不可重复,有序
为什么最常用是String类型?
答:string类型可以解决很多存取数据要求;
从mysql获取数据(一条数据,多条数据。。。)封装java对象中,可以将java对象转换为json字符串,最后存储到redis中。
2.redis的持久化
redis持久化有RDB策略,AOF策略
RDB策略:持久化的频率不高,丢失数据严重,数据安全性低,但redis提供给用户操作数据性能更高
AOF策略:秒持久化,具有更高的数据安全,如果服务器崩溃,只会丢1秒内的数据
3.redis的常用命令
1.String类型的命令:
get
set
del
2.hash类型的命令:
hset
hget
hdel
hmset
hmget
hgetall
3.list类型
lpush 键 元素 元素
rpush 键 元素 元素
4.set类型
sadd 键 元素 元素
smembers 键
sismember 键 元素
srem 键 元素 元素
4.redis和mysql的区别
mysql:mysql这种关系型数据库在处理大数据量存储和大量用户并发访问获取数据方面,性能非常慢,对磁盘操作需要使用IO流,一个字节一个字节存取操作。所有数据读取到内存中后才可以操作。
redis:内存操作数据,非常快,会让系统性能大大提高。(解决了3高问题,高并发,高海量,高可用)
使用内存数据库优化磁盘数据库,内存数据库就是非关系型数据库NOSQL的redis
5.redis适合场景
1)会话存储
2)队列
3)发布/订阅
能大大提高。(解决了3高问题,高并发,高海量,高可用)
使用内存数据库优化磁盘数据库,内存数据库就是非关系型数据库NOSQL的redis
5.redis适合场景
1)会话存储
2)队列
3)发布/订阅