- String类型
* KV:【String,String】,类似于Java中Map集合的一条KV
- Hash类型
* KV:【String,Map集合】:Map集合的嵌套,Map集合中的元素是无序的
- List类型
* KV:【String,List】:有序且可重复
- Set类型
* KV:【String,Set】:无序且不重复
- Zset类型
* KV:【String,TreeMap集合】:Value也类似于Map集合,有序的Map集合
* 类似于List和Set集合特点的合并:有序且不可重复
-
小结
- Redis中的数据是什么结构以及有哪些类型?
- 数据结构:KV
- K:String:唯一标识一条数据,用于获取Value
- V:多种类型:存储的数据
- Value的数据类型
- String:Java字符串
- 【String,String】:一般用于存储单个指标的结果
- Hash:Java Map集合 / Python 中Dic
- 【String,Map【k1v1,k2v2……】】
- List:Java List集合:有序且可重复
- 【String,List[1,2,3,4,5,6,6,7]】
- Set:Java Set集合:无序且不可重复
- 【String,Set[1,2,3,4,5]】
- Zset:有序且不可重复
- 【String,TreeMap【k1v1,k2v2 => 按照k排序】】
- k:score:评分,默认按照评分对元素进行排序
- v:元素,不能重复
- String:Java字符串
- 数据结构:KV
- Redis中的数据是什么结构以及有哪些类型?
知识点06:Redis的通用命令
-
目标:掌握Redis常用的通用命令
-
实施
-
keys:列举当前数据库中所有Key
-
语法:keys 通配符
-
del key:删除某个KV
-
exists key :判断某个Key是否存在
-
type key:判断这个K对应的V的类型的
-
expire K 过期时间:设置某个K的过期时间,一旦到达过期时间,这个K会被自动删除
-
ttl K:查看某个K剩余的存活时间
-
select N:切换数据库的
-
Redis默认由16个数据:db0 ~ db15,个数可以通过配置文件修改,名称不能改
- Redis是一层数据存储结构:所有KV直接存储在数据库中
-
默认进入db0
-
move key N:将某个Key移动到某个数据库中
-
flushdb:清空当前数据库的所有Key
-
flushall:清空所有数据库的所有Key
-
node1:6379> keys *
1) "s1"
node1:6379> get s1
"hadoop"
node1:6379> set s2 hive
OK
node1:6379> get s2
"hive"
node1:6379>
node1:6379> keys *
1) "s1"
2) "s2"
node1:6379> set a1 spark
OK
node1:6379> keys *
1) "a1"
2) "s1"
3) "s2"
node1:6379> keys a*
1) "a1"
node1:6379> keys s*
1) "s1"
2) "s2"
node1:6379> del s1
(integer) 1
node1:6379> keys *
1) "a1"
2) "s2"
node1:6379> exists s2
(integer) 1
node1:6379> exists s1
(integer) 0
node1:6379>
node1:6379> hset m1 name zhangsan
(integer) 1
node1:6379> hset m1 age 18
(integer) 1
node1:6379> keys *
1) "m1"
2) "a1"
3) "s2"
node1:6379> type m1
hash
node1:6379> type s2
string
node1:6379>
node1:6379> expire a1 20
(integer) 1
node1:6379> ttl a1
(integer) 17
node1:6379> ttl a1
(integer) 16
node1:6379> ttl a1
(integer) 15
node1:6379> ttl a1
(integer) 14
node1:6379> ttl a1
(integer) 13
node1:6379> ttl a1
(integer) 12
node1:6379> ttl a1
(integer) 11
node1:6379> ttl a1
(integer) 10
node1:6379> ttl a1
(integer) 9
node1:6379> keys *
1) "m1"
2) "s2"
node1:6379>
node1:6379> select 1
OK
node1:6379[1]> select 10
OK
node1:6379[10]> select 0
OK
node1:6379> select 1
OK
node1:6379[1]> keys *
(empty list or set)
node1:6379[1]> set s1 hue
OK
node1:6379[1]> keys *
1) "s1"
node1:6379[1]> select 0
OK
node1:6379>
node1:6379> keys *
1) "m1"
2) "s2"
![img](https://img-blog.csdnimg.cn/img_convert/580389135e901f2065c61dc012c6a2ad.png)
![img](https://img-blog.csdnimg.cn/img_convert/f48f37e0d6e18cb62bbfd8361d0088f4.png)
![img](https://img-blog.csdnimg.cn/img_convert/e2564f191e17db78f3f682e43cc469bf.png)
**既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!**
**由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新**
**[需要这份系统化资料的朋友,可以戳这里获取](https://bbs.csdn.net/topics/618545628)**
,涵盖了95%以上大数据知识点,真正体系化!**
**由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新**
**[需要这份系统化资料的朋友,可以戳这里获取](https://bbs.csdn.net/topics/618545628)**