简述redis

什么是Redis

Redis是用C语言开发的一个开源的高性能键值对(Key-Value)数据库,官方提供测试数据, 50个并发执 行100000个请求,度的速度是110000次/s,写的速度是81000次/s,且Redis通过提供多种键值数据类型来适应 不同场景下的存储需求,目前为止Redis支持的键值数据类型如下:

			1.字符串类型String
			2.哈希类型hash
			3.列表类型list
			4.集合类型set
			5.有序集合类型sortedset

redis的应用场景

			缓存(数据查询、短链接、新闻内容、商品内容等等)
			聊天室的在线好友列表
			任务队列。(秒杀、抢购、12306等等)
			应用排行榜
			网站访问统计
			数据过期处理(可以精确到毫秒)
			分布式集群构架中的session分离

命令操作

1.redis的数据结构:

		redis存储的是:key,value格式的数据,其中key都是字符串,value有5种不同
	的数据结构
		value的数据结构:
				1.字符串类型string
				2.哈希类型hash:map格式
				3.列表类型list:linkedlist格式。支持重复元素
				4.集合类型set:不允许重复元素
				5.有序集合类型sortedset:不允许重复元素,且元素有顺序

2.字符串类型string

		1.存储:set key value
			set username zhangsan
		2.获取:get key
			get username -->"zhangsan"
		3.删除:del key
			del age -->(inteder) 1

3.哈希类型hash

		1.存储:hset key field value
			hset myhash username lisi -->(integer) 1
			hset myhash password 123 -->(integer) 1
		2.获取:
			hget key field:获取指定的field对应的值
				hget myhash username --> "lisi"
			hgetall key:获取所有的field和value
				hgetall myhash
					1)"username"
					2)"lisi"
					3)"password"
					4)"123"
		3.删除:hdel key field
			hdel myhash username -->(integer) 1

4.列表类型list:可以添加一个元素到列表的头部(左边)或者尾部(右边)

		1.添加:
			1.lpush key value:将元素加入列表左表
			2.rpush key value:将元素加入列表右边
				lpush mylist a --> (integer) 1
				lpush mylist b --> (integer) 2
				lpush mylist c --> (integer) 3
		2.获取:
			lrange key start end:范围获取
				lrange mylist 0 -1
					1)"b"
					2)"a"
					3)"c"
		3.删除:
			lpop key:删除列表最左边的元素,并将元素返回
			rpop key:删除列表最右边的元素,并将元素返回

5.集合类型set:不允许重复元素

		1.存储:sadd key value
			sadd myset a --> (integer) 1
			sadd myset a --> (integer) 0
		2.获取:smembers key:获取set集合中所有元素
			smembers myset
				1)"a"
		3.删除:srem key value:删除set集合中的某个元素
			srem myset a --> (integer) 1

6.有序集合类型sortedset:不允许重复元素,且元素有顺序,每个元素都会关联一个double类型的分数

redis正是通过分数来为集合中的成员进行从小到大的排序
		1.存储:zadd key score value
			zadd mysort 60 zhangsan --> (integer) 1
			zadd mysort 50 lisi --> (integer) 1
			zadd mysort 80 wangwu --> (integer) 1
		2.获取:zrange key start end [withscores]
			zrange mysort 0 -1
				1)"lisi"
				2)"zhangsan"
				3)"wangwu"

			zrange mysort 0 -1 withscores
				1)"zhangsan"
				2)"60"
				3)"wangwu"
				4)"80"
				5)"lisi"
				6)"500"
		3.删除:zrem key value
			zrem mysort lisi --> (integer) 1

7.通用命令

		1.keys * :查询所有的键
		2.type key:获取键对应的value的类型
		3.del key:删除指定的key value

总结:

redis是一个内存数据库,当redis服务器重启,或者电脑重启,数据会丢失,我们可以将redis内存中的数据持久化保存到硬盘的文件中
现实运用中我们都是关系型数据库,非关系型数据库同时使用的,这样可以形成互补的作用。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值