数据类型

字符串 


字符串      最大长度512,二进制安全(无乱码问题,在内存中的数据,只有unlcode编码一总编码格式,不存在乱码,硬盘(GBK-UTF-8等))

根据保存的字符串内容自动变更,OBJECT encoding [key]  #查看存储变量类型

int           #保存整数形式的字符串

embstr    #保存小于或等于44字节大小的字符串,内部类型提升效率

raw        #保存大于44字节大小的字符串

列表list


列表list  2的32次方 - 1 个元素 (4294967295, 每个列表超过40亿个元素)。底层双向链表(双指向),(java-arraylist,底层是数组一次性开辟内存,有下标写操作性能不佳)

rpush [key] [value]  #从右边(r列表最后面,l列表最前面)添加一个或多个值

lrange [key]  0 -1    #过去 所有list元素  ,-1最后一个元素,-2倒数第二的元素

blpop testp 0    #获取第一个元素并移除,等待时间0代表无限单位秒

brpop testp 0    #获取最后一个元素并移除,等待时间0代表无限单位秒

brpoplpush list1 list1   #轮训队列, 获取列表一个元素并插入到另外一个列表 

hashmap 


散列hash   可以存储 2的32次方 - 1 键值对(40多亿)。

hset [hash] [key] [vale]  #添加hash

hmset [hash] [key] [vale]  [key] [vale]  #添加多个hash

hget [hash] [key]   #获取hash,vaule

hgetall [hash]  #获取hash所有key-value

hdel [hash] [key] 删除指定hash,指定key 

无序set



无序set,随机获取元素,合集,差集

sadd [key] [value]    #添加一个或多个值

srandmember [key]  [count]    #从set随机读取元素,默认count=1,如果count>set上限,返回所有,count正数:读取数量不可重复;count负数:可重复次数   

smembers [key]    #查询set所有值

scard [key]    #查询set成员数

spop [key]    #随机删除一个元素

sismember [key] [value]   #判断元素是否存在

sunion [set] [set]     #返回所有给定集合的并集 ,重复只取一次

suniontore [set3] [set1] [set2]   #返回所有给定集合的并集 ,并覆盖到set3

sdiff/sdiffstore        #反回差集,和sunion 用法一样       

有序set


有序set     score分数排序,快速获取排行数据 

zadd [key] [score] [value]   #添加一个或多个元素,或者更新已存在元素的score排序 

zrange [key]  0 -1                #查询有序set  ,withscores:带出score可选

zrangebyscore [key] -inf +inf            #按分值筛选数据, (小于5000分值的数据) -inf 5000 WITHSCORES,(大于等于5000到4000的护具)  5000 40000 

zrank [key]                     #获取元素索引正序,从0开始

zrevrank   [key]             #获取元素索引倒叙,从0开始

zrem [key] [value]       #删除指定元素

zremrangebyscore [key] 1 2   #根据分数删除

zremrangebybank    [key] 1 2   #根据索引范围删除     

hyperloglog


基数统计hyperloglog  2.9新增    可以统计2的64次方个不同元素基数(基数=不重复的),的累加器。 只做统计不存储 

pfadd [key]  [value]    #添加基数统计 

pfcount  [key] [查询基数统计]   

pfmerge [key3]  [key1] [key2]     #合并多个hyperlog 到key3

流Stream


xadd [queuename] * [keyname] [key] [valuename] [value]    #添加队列,id*代表自动生成    , 例:xadd mytopic * acctid1 978 content1 40

xlen [queuename]   #查看队列长度

xrange [queuename]  - + [count]    #查询队列正序,count可选代表读取个数, -代表最小值,+代表最大值,可替换成id范围,[id] + 查询大于等于, - [id] 查询小于等于

xrevrange [queuename]   + -    #查询队列倒叙

xdel [queuename] [id]  #删除队列指定id元素

xread count 1 block 0 streams mytopic $    #获取队列并阻塞,阻塞时间 block 0代表无限时间单位毫秒,$代表最新数据

你可能感兴趣的:(数据类型)