Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprende Desafío: Gestión de Intereses de Usuario | Tipos de Datos en Redis
Introducción a Redis

bookDesafío: Gestión de Intereses de Usuario

Imagina que estás desarrollando una funcionalidad para una aplicación que rastrea los intereses de los usuarios. La información sobre cada usuario se almacena en Redis como un conjunto. Cada usuario tiene una colección única de intereses.

  1. Añadir los intereses de cada usuario a sus respectivos conjuntos:

    • user:1:interests: "music", "movies", "sports";
    • user:2:interests: "sports", "travel", "reading";
    • user:3:interests: "reading", "music", "cooking".
  2. Verificar si Usuario 1 está interesado en "travel" y si Usuario 2 está interesado en "sports";

  3. Identificar los intereses comunes de Usuario 1 y Usuario 2;

  4. Encontrar los intereses de Usuario 1 que no comparte con Usuario 2;

  5. Crear una lista de todos los intereses únicos compartidos por Usuario 1, Usuario 2 y Usuario 3;

  6. Usuario 3 ha dejado de estar interesado en "music". Eliminar este interés de su conjunto;

  7. Mostrar la lista de intereses de cada usuario después de realizar estas operaciones.

1. Añadir intereses para cada usuario a sus respectivos conjuntos:

SADD user:1:interests "music" "movies" "sports"
SADD user:2:interests "sports" "travel" "reading"
SADD user:3:interests "reading" "music" "cooking"

2. Verificar si un interés específico existe en el conjunto de un usuario:

SISMEMBER user:1:interests "travel"    # result: 0 (User 1 is not interested)
SISMEMBER user:2:interests "sports"   # result: 1 (User 2 is interested)

3. Obtener intereses compartidos entre dos usuarios:

SINTER user:1:interests user:2:interests   # result: ["sports"]

4. Obtener los intereses de un usuario que no comparte con otro:

SDIFF user:1:interests user:2:interests   # result: ["music", "movies"]

5. Crear una lista completa de intereses únicos de todos los usuarios:

SUNION user:1:interests user:2:interests user:3:interests   # result: ["music", "movies", "sports", "travel", "reading", "cooking"]

6. Eliminar un interés del conjunto de un usuario:

SREM user:3:interests "music"

7. Obtener los conjuntos de intereses actualizados para cada usuario:

SMEMBERS user:1:interests   # result: ["music", "movies", "sports"]
SMEMBERS user:2:interests   # result: ["sports", "travel", "reading"]
SMEMBERS user:3:interests   # result: ["reading", "cooking"]

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 3. Capítulo 5

Pregunte a AI

expand

Pregunte a AI

ChatGPT

Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla

Suggested prompts:

Can you explain what each Redis command does in this context?

How can I modify a user's interests if they gain a new interest?

What happens if I try to remove an interest that doesn't exist in a user's set?

Awesome!

Completion rate improved to 3.33

bookDesafío: Gestión de Intereses de Usuario

Desliza para mostrar el menú

Imagina que estás desarrollando una funcionalidad para una aplicación que rastrea los intereses de los usuarios. La información sobre cada usuario se almacena en Redis como un conjunto. Cada usuario tiene una colección única de intereses.

  1. Añadir los intereses de cada usuario a sus respectivos conjuntos:

    • user:1:interests: "music", "movies", "sports";
    • user:2:interests: "sports", "travel", "reading";
    • user:3:interests: "reading", "music", "cooking".
  2. Verificar si Usuario 1 está interesado en "travel" y si Usuario 2 está interesado en "sports";

  3. Identificar los intereses comunes de Usuario 1 y Usuario 2;

  4. Encontrar los intereses de Usuario 1 que no comparte con Usuario 2;

  5. Crear una lista de todos los intereses únicos compartidos por Usuario 1, Usuario 2 y Usuario 3;

  6. Usuario 3 ha dejado de estar interesado en "music". Eliminar este interés de su conjunto;

  7. Mostrar la lista de intereses de cada usuario después de realizar estas operaciones.

1. Añadir intereses para cada usuario a sus respectivos conjuntos:

SADD user:1:interests "music" "movies" "sports"
SADD user:2:interests "sports" "travel" "reading"
SADD user:3:interests "reading" "music" "cooking"

2. Verificar si un interés específico existe en el conjunto de un usuario:

SISMEMBER user:1:interests "travel"    # result: 0 (User 1 is not interested)
SISMEMBER user:2:interests "sports"   # result: 1 (User 2 is interested)

3. Obtener intereses compartidos entre dos usuarios:

SINTER user:1:interests user:2:interests   # result: ["sports"]

4. Obtener los intereses de un usuario que no comparte con otro:

SDIFF user:1:interests user:2:interests   # result: ["music", "movies"]

5. Crear una lista completa de intereses únicos de todos los usuarios:

SUNION user:1:interests user:2:interests user:3:interests   # result: ["music", "movies", "sports", "travel", "reading", "cooking"]

6. Eliminar un interés del conjunto de un usuario:

SREM user:3:interests "music"

7. Obtener los conjuntos de intereses actualizados para cada usuario:

SMEMBERS user:1:interests   # result: ["music", "movies", "sports"]
SMEMBERS user:2:interests   # result: ["sports", "travel", "reading"]
SMEMBERS user:3:interests   # result: ["reading", "cooking"]

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 3. Capítulo 5
some-alt