Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Вивчайте Завдання: Керування Інтересами Користувачів | Типи Даних у Redis
Вступ до Redis

bookЗавдання: Керування Інтересами Користувачів

Уявіть, що ви розробляєте функцію для застосунку, який відстежує інтереси користувачів. Інформація про кожного користувача зберігається в Redis у вигляді множини. Кожен користувач має унікальний набір інтересів.

  1. Додайте інтереси кожного користувача до відповідних множин:

    • user:1:interests: "music", "movies", "sports";
    • user:2:interests: "sports", "travel", "reading";
    • user:3:interests: "reading", "music", "cooking".
  2. Перевірте, чи цікавиться Користувач 1 "travel" і чи цікавиться Користувач 2 "sports";

  3. Визначте спільні інтереси Користувача 1 та Користувача 2;

  4. Знайдіть інтереси Користувача 1, які не поділяє Користувач 2;

  5. Створіть список усіх унікальних інтересів, які поділяють Користувач 1, Користувач 2 та Користувач 3;

  6. Користувач 3 більше не цікавиться "music". Видаліть цей інтерес з його множини;

  7. Виведіть список інтересів кожного користувача після виконання цих операцій.

1. Додавання інтересів для кожного користувача до відповідних множин:

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

2. Перевірка наявності певного інтересу у множині користувача:

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

3. Отримання спільних інтересів між двома користувачами:

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

4. Отримання інтересів одного користувача, які не поділяє інший:

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

5. Створення повного списку унікальних інтересів усіх користувачів:

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

6. Видалення інтересу з множини користувача:

SREM user:3:interests "music"

7. Отримання оновлених множин інтересів для кожного користувача:

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

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 3. Розділ 5

Запитати АІ

expand

Запитати АІ

ChatGPT

Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат

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

bookЗавдання: Керування Інтересами Користувачів

Свайпніть щоб показати меню

Уявіть, що ви розробляєте функцію для застосунку, який відстежує інтереси користувачів. Інформація про кожного користувача зберігається в Redis у вигляді множини. Кожен користувач має унікальний набір інтересів.

  1. Додайте інтереси кожного користувача до відповідних множин:

    • user:1:interests: "music", "movies", "sports";
    • user:2:interests: "sports", "travel", "reading";
    • user:3:interests: "reading", "music", "cooking".
  2. Перевірте, чи цікавиться Користувач 1 "travel" і чи цікавиться Користувач 2 "sports";

  3. Визначте спільні інтереси Користувача 1 та Користувача 2;

  4. Знайдіть інтереси Користувача 1, які не поділяє Користувач 2;

  5. Створіть список усіх унікальних інтересів, які поділяють Користувач 1, Користувач 2 та Користувач 3;

  6. Користувач 3 більше не цікавиться "music". Видаліть цей інтерес з його множини;

  7. Виведіть список інтересів кожного користувача після виконання цих операцій.

1. Додавання інтересів для кожного користувача до відповідних множин:

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

2. Перевірка наявності певного інтересу у множині користувача:

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

3. Отримання спільних інтересів між двома користувачами:

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

4. Отримання інтересів одного користувача, які не поділяє інший:

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

5. Створення повного списку унікальних інтересів усіх користувачів:

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

6. Видалення інтересу з множини користувача:

SREM user:3:interests "music"

7. Отримання оновлених множин інтересів для кожного користувача:

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

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 3. Розділ 5
some-alt