Els conjunts són una estructura de dades fonamental en Redis que permeten emmagatzemar col·leccions de valors únics i no ordenats. Els conjunts són útils per a una varietat d'aplicacions, com ara la gestió de grups d'usuaris, etiquetes, o qualsevol altra col·lecció d'elements únics.

Conceptes Clau

  • Unicitat: Cada element en un conjunt és únic. No es permeten duplicats.
  • No Ordenat: Els elements en un conjunt no tenen un ordre específic.
  • Operacions de Conjunt: Redis proporciona diverses operacions per treballar amb conjunts, com ara la unió, la intersecció i la diferència.

Comandes Bàsiques

Afegir Elements a un Conjunt

Per afegir elements a un conjunt, utilitzem la comanda SADD.

SADD myset "element1"
SADD myset "element2" "element3"

Recuperar Tots els Elements d'un Conjunt

Per obtenir tots els elements d'un conjunt, utilitzem la comanda SMEMBERS.

SMEMBERS myset

Verificar si un Element Existeix en un Conjunt

Per comprovar si un element està present en un conjunt, utilitzem la comanda SISMEMBER.

SISMEMBER myset "element1"

Eliminar Elements d'un Conjunt

Per eliminar elements d'un conjunt, utilitzem la comanda SREM.

SREM myset "element1"

Obtenir la Quantitat d'Elements en un Conjunt

Per obtenir el nombre d'elements en un conjunt, utilitzem la comanda SCARD.

SCARD myset

Operacions de Conjunt

Unió de Conjunts

La comanda SUNION retorna la unió de múltiples conjunts.

SUNION set1 set2

Intersecció de Conjunts

La comanda SINTER retorna la intersecció de múltiples conjunts.

SINTER set1 set2

Diferència de Conjunts

La comanda SDIFF retorna la diferència entre conjunts.

SDIFF set1 set2

Exemple Pràctic

A continuació, es mostra un exemple pràctic que il·lustra l'ús de conjunts en Redis.

# Crear dos conjunts
SADD set1 "a" "b" "c"
SADD set2 "b" "c" "d"

# Unió de conjunts
SUNION set1 set2
# Resultat: "a", "b", "c", "d"

# Intersecció de conjunts
SINTER set1 set2
# Resultat: "b", "c"

# Diferència de conjunts
SDIFF set1 set2
# Resultat: "a"

Exercicis Pràctics

Exercici 1: Crear i Manipular Conjunts

  1. Crea un conjunt anomenat fruits i afegeix-hi els elements "apple", "banana" i "cherry".
  2. Verifica si "banana" està present en el conjunt fruits.
  3. Elimina "apple" del conjunt fruits.
  4. Obté tots els elements del conjunt fruits.

Solució

SADD fruits "apple" "banana" "cherry"
SISMEMBER fruits "banana"
SREM fruits "apple"
SMEMBERS fruits

Exercici 2: Operacions de Conjunt

  1. Crea dos conjunts anomenats setA i setB. Afegeix els elements "1", "2", "3" a setA i "3", "4", "5" a setB.
  2. Obté la unió de setA i setB.
  3. Obté la intersecció de setA i setB.
  4. Obté la diferència entre setA i setB.

Solució

SADD setA "1" "2" "3"
SADD setB "3" "4" "5"
SUNION setA setB
SINTER setA setB
SDIFF setA setB

Errors Comuns i Consells

  • Duplicats: Recorda que els conjunts no permeten elements duplicats. Si intentes afegir un element que ja existeix, no es produirà cap error, però l'element no es duplicarà.
  • No Ordenat: No esperis que els elements en un conjunt estiguin en un ordre específic. Si necessites un ordre, considera utilitzar una altra estructura de dades com ara llistes o conjunts ordenats.

Conclusió

Els conjunts en Redis són una eina poderosa per gestionar col·leccions d'elements únics. Amb les comandes bàsiques i les operacions de conjunt, pots realitzar una àmplia varietat de tasques de manera eficient. En el següent mòdul, explorarem una altra estructura de dades important: els hashs.

© Copyright 2024. Tots els drets reservats