Redis - Conjuntos ordenados
Los conjuntos ordenados de Redis son similares a los conjuntos de Redis con la característica única de los valores almacenados en un conjunto. La diferencia es que cada miembro de un conjunto ordenado está asociado con una puntuación, que se utiliza para tomar el conjunto ordenado ordenado, desde la puntuación más pequeña hasta la más alta.
En el conjunto ordenado de Redis, agregue, elimine y pruebe la existencia de miembros en O (1) (tiempo constante independientemente de la cantidad de elementos contenidos dentro del conjunto). La longitud máxima de una lista es 2 32 - 1 elementos (4294967295, más de 4 mil millones de elementos por conjunto).
Ejemplo
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"
En el ejemplo anterior, se insertan tres valores con su puntuación en el conjunto ordenado de Redis llamado 'tutoriales' por el comando ZADD.
Comandos de conjuntos ordenados de Redis
La siguiente tabla enumera algunos comandos básicos relacionados con conjuntos ordenados.
No Señor | Comando y descripción |
---|---|
1 | ZADD clave score1 member1 [score2 member2] Agrega uno o más miembros a un conjunto ordenado o actualiza su puntuación, si ya existe |
2 | Tecla ZCARD Obtiene el número de miembros en un conjunto ordenado |
3 | ZCOUNT clave mínimo máximo Cuenta los miembros en un conjunto ordenado con puntuaciones dentro de los valores dados |
4 | Miembro de incremento de clave ZINCRBY Incrementa la puntuación de un miembro en un conjunto ordenado |
5 | Tecla de teclas numéricas de destino de ZINTERSTORE [tecla ...] Intersecta múltiples conjuntos ordenados y almacena el conjunto ordenado resultante en una nueva clave |
6 | ZLEXCOUNT clave mínimo máximo Cuenta el número de miembros en un conjunto ordenado entre un rango lexicográfico dado |
7 | Inicio de la tecla ZRANGE parada [WITHSCORES] Devuelve un rango de miembros en un conjunto ordenado, por índice. |
8 | Tecla ZRANGEBYLEX min max [LIMIT recuento de compensación] Devuelve un rango de miembros en un conjunto ordenado, por rango lexicográfico. |
9 | Tecla ZRANGEBYSCORE mín máx. [WITHSCORES] [LIMIT] Devuelve un rango de miembros en un conjunto ordenado, por puntuación. |
10 | Miembro clave de ZRANK Determina el índice de un miembro en un conjunto ordenado |
11 | Miembro clave de ZREM [miembro ...] Elimina uno o más miembros de un conjunto ordenado |
12 | Tecla ZREMRANGEBYLEX min max Elimina todos los miembros en un conjunto ordenado entre el rango lexicográfico dado |
13 | ZREMRANGEBYRANK tecla inicio parada Elimina todos los miembros de un conjunto ordenado dentro de los índices dados |
14 | Tecla ZREMRANGEBYSCORE min max Elimina todos los miembros de un conjunto ordenado dentro de las puntuaciones dadas |
15 | Inicio de la tecla ZREVRANGE parada [WITHSCORES] Devuelve un rango de miembros en un conjunto ordenado, por índice, con puntuaciones ordenadas de mayor a menor. |
dieciséis | Clave ZREVRANGEBYSCORE mín. Máx. [WITHSCORES] Devuelve un rango de miembros en un conjunto ordenado, por puntaje, con puntajes ordenados de mayor a menor |
17 | Miembro clave de ZREVRANK Determina el índice de un miembro en un conjunto ordenado, con puntuaciones ordenadas de mayor a menor |
18 | Miembro clave de ZSCORE Obtiene la puntuación asociada con el miembro dado en un conjunto ordenado |
19 | Tecla de teclas numéricas de destino de ZUNIONSTORE [tecla ...] Agrega varios conjuntos ordenados y almacena el conjunto ordenado resultante en una nueva clave |
20 | Cursor de la tecla ZSCAN [MATCH pattern] [COUNT count] Itera incrementalmente elementos de conjuntos ordenados y puntuaciones asociadas |