String類型的常用命令:
創(chuàng)新互聯(lián)建站專業(yè)為企業(yè)提供榆陽網(wǎng)站建設(shè)、榆陽做網(wǎng)站、榆陽網(wǎng)站設(shè)計、榆陽網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計與制作、榆陽企業(yè)網(wǎng)站模板建站服務(wù),十年榆陽做網(wǎng)站經(jīng)驗,不只是建網(wǎng)站,更提供有價值的思路和整體網(wǎng)絡(luò)服務(wù)。
type key_name:查看某個key是什么類型的
>help @STRING #查看string類型的幫助
set key value [EX|NX|XX] :設(shè)定一個鍵值
EX表示過期時間,單位是s
NX表示當(dāng)此key存在時不創(chuàng)建,如果不存在則創(chuàng)建
XX表示當(dāng)此key存在時修改
setnx:當(dāng)指定key不存在才創(chuàng)建
mset:一次設(shè)置多個key
get:獲取某個key的value
mget:一次獲取多個key的value
getset:設(shè)定指定key新值的同時,返回指定key的原值
append:在指定key的values后邊追加新的內(nèi)容
del:刪除某個key
exist:判斷某key是否存在,存在返回1,不存在返回0
strlen:返回某key的長度
keys *:查看所有的key
整數(shù)類型的key:
incr:自動加1
decr:自動減1
字符串類型的key,不支持incr,decr的操作
Lists類型的常用命令:
>help @list#查看列表類型的幫助
lpush:從左邊開始往key中加入數(shù)據(jù)
lpop:從左邊開始往外彈出數(shù)據(jù)
rpush:從右邊開始往key中加入數(shù)據(jù)
rpop:從右邊開始往外彈出數(shù)據(jù)
llen:查看指定列表的長度
lrange:取出指定key的數(shù)據(jù)范圍
lindex:取出指定列表的指定下標(biāo)的值;例:lindex l1 0,取出列表l1的第1個值
ltrim:保留指定范圍內(nèi)的數(shù)據(jù)
lset:修改指定索引的值為指定的值
Sets(無序)類型常用的命令:
>help @set#查看無序集合類型的幫助
sadd:向集合中添加數(shù)據(jù)
spop:隨機彈出一個元素
srem:從集合中刪除一個已知的值(不是隨機彈出)
scard:統(tǒng)計一個集合中有多少個值
smembers:查看集合中的所有數(shù)據(jù)
sismember:判斷指定數(shù)據(jù)在集合中是否存在 --> 0表示不存在,1表示存在
sinter(交集):顯示兩個集合間的交集;即兩個集合同時存在的數(shù)據(jù)
sunion(并集):顯示兩個集合去除重復(fù)后的全部數(shù)據(jù)
sdiff(差集):顯示前邊的集合與后邊集合間的差集
smove:移動一個集合的值到另一個集合
Sorted _set(有序集合)類型常用的命令:
>help @sorted_set #查看有序集合類型的幫助
zadd:向集合中添加一個元素,可以同時指定多個值;同時要給此元素打一個分?jǐn)?shù)(因為sorted_set是依靠分?jǐn)?shù)來進(jìn)行排序的,分?jǐn)?shù)放在值的前邊)
例:>zadd weekday 1 mon,2 tue (mon的score是1,tue的score是2)
zcard:獲取有序集合中的成員個數(shù)
zrank:獲取有序集合中某元素的索引
zscore:查看元素的分?jǐn)?shù)
zrange:返回指定索引范圍的數(shù)據(jù)
hash類型的常用命令:
>help @hash#查看哈希類型的命令幫助
hset:設(shè)置指定key的字段值
用法:hset key field value
hsetnx:當(dāng)指定key不存在時才進(jìn)行設(shè)置
hget:獲取指定字段的值
用法:hget key field
hdel:刪除指定key的指定字段
hlen:獲取指定key字段的個數(shù)
hmset:一次設(shè)置多個字段
hmget:一次獲取多個字段值
hexists:判斷指定key中某個字段是否存在
hkeys:獲取所有的字段名字
hvals:獲取所有字段的值
hgetall:獲取指定key的所有字段和值
hyperloglog數(shù)據(jù)結(jié)構(gòu):
hyperloglog類似于set類型,但比set類型節(jié)省內(nèi)存;
hyperloglog可以利用極小的內(nèi)存空間完成獨立總數(shù)的統(tǒng)計,但存在一定的誤差率
添加hyperloglog數(shù)據(jù):
>pfadd 2016_03_06:unique:ids "uuid-1" "uuid-2" "uuid-3" "uuid-4"
>pfadd 2016_03_07:unique:ids "uuid-4" "uuid-5" "uuid-6" "uuid-7"
統(tǒng)計hyperloglog有多少條數(shù)據(jù):
>pfcount 2016_03_07:unique:ids
求2個或者多個hyperloglog的并集:
語法:PFMERGE destkey sourcekey [sourcekey ...]
>pfmerge union 2016_03_06:unique:ids 2016_03_07:unique:ids
使用前需要確定:
1.只為計算獨立總數(shù),不需要獲取單條數(shù)據(jù)
2.可以容忍一定的誤差率,畢竟hyperloglog在內(nèi)存上占用量上有很大的優(yōu)勢