Redis - Ensembles triés

Les ensembles triés Redis sont similaires aux ensembles Redis avec la caractéristique unique de valeurs stockées dans un ensemble. La différence est que chaque membre d'un ensemble trié est associé à un score, qui est utilisé pour prendre l'ensemble trié ordonné, du plus petit au plus grand score.

Dans l'ensemble trié Redis, ajoutez, supprimez et testez l'existence de membres dans O (1) (temps constant quel que soit le nombre d'éléments contenus dans l'ensemble). La longueur maximale d'une liste est de 2 32 - 1 éléments (4294967295, plus de 4 milliards d'éléments par ensemble).

Exemple

redis 127.0.0.1:6379> ZADD tutorials 1 redis 
(integer) 1 
redis 127.0.0.1:6379> ZADD tutorials 2 mongodb 
(integer) 1 
redis 127.0.0.1:6379> ZADD tutorials 3 mysql 
(integer) 1 
redis 127.0.0.1:6379> ZADD tutorials 3 mysql 
(integer) 0 
redis 127.0.0.1:6379> ZADD tutorials 4 mysql 
(integer) 0 
redis 127.0.0.1:6379> ZRANGE tutorials 0 10 WITHSCORES  
1) "redis" 
2) "1" 
3) "mongodb" 
4) "2" 
5) "mysql" 
6) "4"

Dans l'exemple ci-dessus, trois valeurs sont insérées avec son score dans l'ensemble trié Redis nommé `` tutoriels '' par la commande ZADD.

Commandes d'ensembles triés Redis

Le tableau suivant répertorie certaines commandes de base liées aux ensembles triés.

Sr.Non Commande et description
1 Clé ZADD score1 membre1 [score2 membre2]

Ajoute un ou plusieurs membres à un ensemble trié, ou met à jour son score, s'il existe déjà

2 Touche ZCARD

Obtient le nombre de membres dans un ensemble trié

3 Touche ZCOUNT min max

Compte les membres dans un ensemble trié avec des scores dans les valeurs données

4 Membre d'incrémentation de clé ZINCRBY

Incrémente le score d'un membre dans un ensemble trié

5 Touche numérique de destination ZINTERSTORE [touche ...]

Intersecte plusieurs ensembles triés et stocke l'ensemble trié résultant dans une nouvelle clé

6 Touche ZLEXCOUNT min max

Compte le nombre de membres dans un ensemble trié entre une plage lexicographique donnée

sept Touche ZRANGE start stop [WITHSCORES]

Renvoie une plage de membres dans un ensemble trié, par index

8 Touche ZRANGEBYLEX min max [LIMIT offset count]

Renvoie une plage de membres dans un ensemble trié, par plage lexicographique

9 ZRANGEBYSCORE clé min max [WITHSCORES] [LIMIT]

Renvoie une plage de membres dans un ensemble trié, par score

dix Membre clé de ZRANK

Détermine l'index d'un membre dans un ensemble trié

11 Membre clé de ZREM [membre ...]

Supprime un ou plusieurs membres d'un ensemble trié

12 Touche ZREMRANGEBYLEX min max

Supprime tous les membres d'un ensemble trié entre la plage lexicographique donnée

13 Touche ZREMRANGEBYRANK start stop

Supprime tous les membres d'un ensemble trié dans les index donnés

14 Touche ZREMRANGEBYSCORE min max

Supprime tous les membres d'un ensemble trié dans les scores donnés

15 Touche ZREVRANGE start stop [WITHSCORES]

Renvoie une plage de membres dans un ensemble trié, par index, avec des scores classés de haut en bas

16 Touche ZREVRANGEBYSCORE min. Max. [WITHSCORES]

Renvoie une plage de membres dans un ensemble trié, par score, avec des scores classés de haut en bas

17 Membre clé de ZREVRANK

Détermine l'index d'un membre dans un ensemble trié, avec des scores classés de haut en bas

18 Membre clé de ZSCORE

Obtient le score associé au membre donné dans un ensemble trié

19 ZUNIONSTORE destination numkeys touche [touche ...]

Ajoute plusieurs ensembles triés et stocke l'ensemble trié résultant dans une nouvelle clé

20 Curseur de la touche ZSCAN [Modèle MATCH] [COUNT count]

Itère incrémentalement les éléments des ensembles triés et les scores associés