Redis Conjunto (Set)

El Set de Redis es un conjunto desordenado de tipo String. Los miembros del conjunto son únicos, lo que significa que no pueden aparecer datos duplicados en el conjunto.

La codificación de un objeto de conjunto puede ser intset o hashtable.

En Redis, los conjuntos se implementan mediante tablas hash, por lo que la complejidad de agregar, eliminar y buscar es O(1).

El número máximo de miembros en un conjunto es 2^3232- 1 (4294967295, cada conjunto puede almacenar más de 4 mil millones de miembros).

Ejemplo

redis 127.0.0.1:6379> SADD ejemplokey redis
(integer) 1
redis 127.0.0.1:6379> SADD ejemplokey mongodb
(integer) 1
redis 127.0.0.1:6379> SADD ejemplokey mysql
(integer) 1
redis 127.0.0.1:6379> SADD ejemplokey mysql
(integer) 0
redis 127.0.0.1:6379> SMEMBERS ejemplokey

1) "mysql"
2) "mongodb"
3) "redis"

En el ejemplo anterior, mediante elSADDcomando, al conjunto llamadoejemplokeyse le insertaron tres elementos.


Comandos de conjuntos Redis

La siguiente tabla enumera los comandos básicos de los conjuntos Redis:

N.ºComando y descripción
1SADD key member1 [member2]
Agrega uno o más miembros a un conjunto.
2SCARD key
Obtiene el número de miembros de un conjunto.
3SDIFF key1 [key2]
Devuelve la diferencia entre el primer conjunto y los demás.
4SDIFFSTORE destination key1 [key2]
Devuelve la diferencia entre todos los conjuntos dados y la almacena en destination.
5SINTER key1 [key2]
Devuelve la intersección de todos los conjuntos dados.
6SINTERSTORE destination key1 [key2]
Devuelve la intersección de todos los conjuntos dados y la almacena en destination.
7SISMEMBER key member
Determina si el elemento member es miembro del conjunto key.
8SMEMBERS key
Devuelve todos los miembros de un conjunto.
9SMOVE source destination member
Mueve el elemento member del conjunto source al conjunto destination.
10SPOP key
Elimina y devuelve un elemento aleatorio de un conjunto.
11SRANDMEMBER key [count]
Devuelve uno o más elementos aleatorios de un conjunto.
12SREM key member1 [member2]
Elimina uno o más miembros de un conjunto.
13SUNION key1 [key2]
Devuelve la unión de todos los conjuntos dados.
14SUNIONSTORE destination key1 [key2]
Almacena la unión de todos los conjuntos dados en el conjunto destination.
15SSCAN key cursor [MATCH pattern] [COUNT count]
Itera sobre los elementos de un conjunto.
Otras extensiones