• 作者:老汪软件技巧
  • 发表时间:2023-12-31 07:00
  • 浏览量:

文章目录

知识点05:Redis的数据结构及数据类型

实施

理解Redis:类似于Java中的一个Map集合,可以存储多个KV,根据K获取V

数据类型

Key:类型Value值应用场景

10000

一般用于存储单个数据指标的结果

Hash

name:laoer age : 20 sex

用于存储整个对象所有属性值

uv

List

{100,200,300,100,600}

有序允许重复的集合,每天获取最后一个值

Set

{,,,……}

无序且不重复的集合,直接通过长度得到UV

ZSet【score,】

{10000-牙膏,9999-玩具,9998-电视……}

有序不可重复的集合,统计TopN

{010}

将一个字符串构建位,通过0和1来标记每一位

{,id2……}

类似于Set集合,底层实现原理不一样,数据量大的情况下,性能会更好,结果可能存在一定的误差

Hash类型

List类型

Set类型

Zset类型

小结

Value的数据类型 Hash:Java Map集合 / 中Dic List:Java List集合:有序且可重复 Set:Java Set集合:无序且不可重复 Zset:有序且不可重复 知识点06:Redis的通用命令

默认进入db0

move key N:将某个Key移动到某个数据库中

:清空当前数据库的所有Key

:清空所有数据库的所有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"
node1:6379> move m1 1
(integer) 1
node1:6379> keys *
1) "s2"
node1:6379> select 1
OK
node1:6379[1]> keys *
1) "m1"
2) "s1"
node1:6379[1]> flushdb
OK
node1:6379[1]> keys *
(empty list or set)
node1:6379[1]> select 0
OK
node1:6379> keys *
1) "s2"
node1:6379> flushall
OK
node1:6379> keys *
(empty list or set)
node1:6379> 

小结

后记

?博客主页:

?欢迎点赞 ? 收藏 ⭐留言 ? 如有错误敬请指正!

?本文由 原创,首发于 CSDN博客?

?不能老盯着手机屏幕,要不时地抬起头,看看老板的位置⭐