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 |