Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprende Challenge: Managing User Interests | Data Types in Redis
Introduction to Redis

book
Challenge: Managing User Interests

Imagine you are developing a feature for an application that tracks user interests. Information about each user is stored in Redis as a set. Each user has a unique collection of interests.

  1. Add the interests for each user to their respective sets:

    • user:1:interests: "music", "movies", "sports";

    • user:2:interests: "sports", "travel", "reading";

    • user:3:interests: "reading", "music", "cooking".

  2. Check if User 1 is interested in "travel" and if User 2 is interested in "sports";

  3. Identify the common interests of User 1 and User 2;

  4. Find the interests of User 1 that are not shared by User 2;

  5. Create a list of all unique interests shared by User 1, User 2, and User 3;

  6. User 3 has stopped being interested in "music." Remove this interest from their set;

  7. Display the list of interests for each user after performing these operations.

1. Add interests for each user to their respective sets:

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

2. Verify if a specific interest exists in a user's set:

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

3. Retrieve shared interests between two users:

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

4. Get interests of one user that are not shared by another:

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

5. Create a full list of unique interests from all users:

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

6. Delete an interest from a user's set:

SREM user:3:interests "music"

7. Retrieve the updated sets of interests for each user:

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

some-alt