1、zset 概念 (sorted set)
(1)redis有序集合zset與普通集合set非常相似,是乙個沒有重複元素的字串集合。不同之處是有序集合的沒有成員都關聯了乙個評分(score) ,這個評分(score)被用來按照從最低分到最高分的方式排序集合中的成員。集合的成員是唯一的,但是評分可以是重複了 。
(2)因為元素是有序的, 所以你也可以很快的根據評分(score)或者次序(position)來獲取乙個範圍的元素。訪問有序集合的中間元素也是非常快的,因此你能夠使用有序集合作為乙個沒有重複成員的智慧型列表
2、zset 基本命令
(1)將乙個或多個 member 元素及其 score 值加入到有序集 key 當中
zadd ...
127.0.0.1:6379> zadd z1 100 v1 300 v2 200 v3 150 v4
(integer) 4
(2)返回有序集 key 中,下標在之間的元素
帶withscores,可以讓分數一起和值返回到結果集。
zrange [withscores]
從小到大
127.0.0.1:6379> zrange z1 0 -1
1) "v1"
2) "v4"
3) "v3"
4) "v2"
注:0到-1 是展示全部資料
從小到大(分+值)
127.0.0.1:6379> zrange z1 0 -1 withscores
1) "v1"
2) "100"
3) "v4"
4) "150"
5) "v3"
6) "200"
7) "v2"
8) "300"
從大到小(rev)
127.0.0.1:6379> zrevrange z1 0 -1
1) "v2"
2) "v3"
3) "v4"
4) "v1"
127.0.0.1:6379> zrange z1 0 -1
1) "v1"
2) "v4"
3) "v3"
4) "v2"
(3)返回有序集 key 中,所有 score 值介於 min 和 max 之間(包括等於 min 或 max )的成員。
有序集成員按 score 值遞增(從小到大)次序排列。
zrangebyscore key min max [withscores] [limit offset count]
127.0.0.1:6379> zrangebyscore z1 150 300
1) "v4"
2) "v3"
3) "v2"
(4)同上,改為從大到小排列。
zrevrangebyscore key max min [withscores] [limit offset count]
127.0.0.1:6379> zrevrangebyscore z1 300 150
1) "v2"
2) "v3"
3) "v4"
(5)為元素的score加上增量
zincrby
127.0.0.1:6379> zrange z1 0 -1 withscores
1) "v1"
2) "100"
3) "v4"
4) "150"
5) "v3"
6) "200"
7) "v2"
8) "300"
127.0.0.1:6379> zincrby z1 200 v2
"500"
(6)刪除該集合下,指定值的元素
zrem
127.0.0.1:6379> zrange z1 0 -1
1) "v1"
2) "v4"
3) "v3"
4) "v2"
127.0.0.1:6379> zrem z1 v1
(integer) 1
127.0.0.1:6379> zrange zi1 0 -1
1) "v4"
2) "v3"
3) "v2"
(7)統計該集合,分數區間內的元素個數
zcount
127.0.0.1:6379> zcount zi 0 10000
(integer) 3
(8)返回該值在集合中的排名,從0開始。
zrank
正序
127.0.0.1:6379> zrank zi v2
(integer) 2
倒敘
127.0.0.1:6379> zrevrank zi v2
(integer) 0
黑猴子的家 Scala 密封類
如果想讓case類的所有子類都必須在申明的該類的相同的檔案中定義,可以將樣例類的通用超類宣告為sealed,叫做密封類,密封就是外部使用者不能在其他檔案中定義子類。不能被繼承只能自己用 sealed abstract class trafficlightcolor case object red e...
黑猴子的家 Hadoop Checkpoint機制
fsimage和edit log合併的過程如下圖所示 其實這個合併過程是乙個很耗i o與cpu的操作,並且在進行合併的過程中肯定也會有其他應用繼續訪問和修改hdfs檔案。所以,這個過程一般不是在單一的namenode節點上進行從。如果hdfs沒有做ha的話,checkpoint由secondname...
黑猴子的家 FileInputFormat切片機制
1 job提交流程原始碼詳解 waitforcompletion submit 1 建立連線 connect 1 建立提交job的 new cluster getconfiguration 2 判斷是本地yarn還是遠端 initialize jobtrackaddr,conf 2 提交job su...