Redis入门学习
介绍
关于一个Redis的入门级别的学习,可以快速认识Redis及基本操作
Nosql简介
NoSQL: 即Not-OnlySQL(泛指非关系型的数据库),作为关系型数据库的补充。
作用: 应用对于海量用户和海量数据前提吓得数据处理问题。
特征:
可扩容,可伸缩
大数据量下得高性能
灵活得数据模型
高可用
常见Nosql数据库:
Redis
memcache
HBase
MongoDB
电商场景的解决方案:
一、常用命令
基本操作
功能性命令
清除屏幕信息
帮助信息查阅
退出指令
信息添加
代码示例
//添加数据
set key value
范例
set name itheima
//信息查询
get key //根据key查询对应的value,如果不存在,返回空(null)
范例:
get name
//清除屏幕信息
Clear //清除屏幕中的信息
//帮助命令
//功能:获取命令帮助文档,获取组中所有命令信息名称
help 命令名称
help @组名
//退出客户端命令行模式
quit
exit
二、 五种常用字符串
string---->String
hash --> Hashmap
list --> LinkList
set --> HashSet
sorted_set --> TreeSet
redis 数据存储格式:
Redis自身是一个Map,其中所有的数据都是采用key:value的形式存储
数据类型指的是存储的数据类型,也就是value部分的类型,key部分永远都是字符串
1.String类型
String类型数据的基本操作
添加/修改数据: set key value
获取数据:get key
删除数据:del key
获取数据字符个数(字符串长度):strlen key
2.Hash类型
新的存储需求:对一系列存储的数据进行编组,方便管理,典型应用存储对象信息
需要的内存结构:一个存储空间保存多少个键值对数据
hash类型:底层使用哈希表结构实现数据存储
图片分析
Hash类型数据的基本操作
添加/修改数据: hset key field value
获取数据:hget key field
Hgettall key
删除数据:hdel key field1 [field2]
获取哈希表中所有的字段名和字段值: hkeys key
hvals key
3.List数据类型
数据存储需求:存储多个数据,并对数据进入存储空间的顺序进行区分
需要的存储数据:一个存储空间保存多个数据,且通过数据可以体现进入顺序
list类型:保存多个数据,底层使用双向链表存储结构实现
图片分析
list类型数据的基本操作
添加/修改数据:
lpush key value1 [value2] …
rpush key value1 [value2] …
获取数据:lrange key start stop
lindex key index
llen key
删除数据:lpop key
rpop key
4.Set类型
新的存储需求:存储大量的数据,在查询方面提供更高的效率
休要的存储结构:能够保存大量的数据,搞笑的内部存储机制,便于查询
set类型:与hash存储结构完全相同,仅存储键,不存储值(nil),并且值式不允许重复的
set类型数据的基本操作
添加/修改数据: sadd key menber1 [member2]
获取数据:smembers key
删除数据:srem key member1 [member2]
获取集合的数量:scard key
5.sorted_set类型
新的存储需求:根据排序有利于数据的有效显示,需要提供一种可以根据自身特征进行排序的方式
需要的存储结构:新的存储模型,可以保存可排序的数据
sorted_set类型:在set的存储结构基础上添加可排序字段
图片分析:
sorted_set类型数据的基本操作
添加/修改数据: zadd key score1 member1 [score2 member2]
获取数据:
zrange key start stop [WITHSCORES]
zrevrange key start stop [WITHSCORES]
删除数据:zrem key member [member …]
获取集合的数量:scard key
三、持久化方式
1.redis是一个内存数据库,当redis服务器重后,获取电脑重后,数据会丢失,我们可以捋redis内存中的数据持久化保存到硬盘的文件中。
2. redis持久化机制:
RDB
1.RDB:默认方式,不需要进行配置,,默认就使用这种机制
在一定的间隔时间中,检则key的变化情况,然后持久化数据
1.编辑redis.windwos.conf文件
# after 900 sec (15 min) if at least 1 key changed
# after 300 sec (5 min) if at least 10 keys changed
# after 60 sec if at least 10000 keys changed
save 900 1
save 300 10
save 60 10000
重新后动redis服务器,并指定配置文件名称
D: \Javaweb2018\day23_redis\资料\redislwindows-64(redis-2.8.9>redis-server.exe redis.windows.conf
AOF
2,AOF :日志记录的方式,可以记录每一条命令的操作。可以每一次命合操作后,持久化数据
1.编辑redis.windwos.conf文件