Haaste: Käyttäjäkiinnostusten Hallinta
Kuvittele, että kehität ominaisuutta sovellukseen, joka seuraa käyttäjien kiinnostuksen kohteita. Tiedot jokaisesta käyttäjästä tallennetaan Redis-tietokantaan joukkona (set). Jokaisella käyttäjällä on yksilöllinen kokoelma kiinnostuksen kohteita.
-
Lisää kunkin käyttäjän kiinnostuksen kohteet heidän omiin joukkoihinsa:
user:1:interests: "music", "movies", "sports";user:2:interests: "sports", "travel", "reading";user:3:interests: "reading", "music", "cooking".
-
Tarkista, onko Käyttäjä 1 kiinnostunut "travel"-aiheesta ja onko Käyttäjä 2 kiinnostunut "sports"-aiheesta;
-
Tunnista Käyttäjän 1 ja Käyttäjän 2 yhteiset kiinnostuksen kohteet;
-
Selvitä Käyttäjän 1 kiinnostuksen kohteet, joita Käyttäjällä 2 ei ole;
-
Luo luettelo kaikista ainutlaatuisista kiinnostuksen kohteista, joita Käyttäjä 1, Käyttäjä 2 ja Käyttäjä 3 jakavat;
-
Käyttäjä 3 ei ole enää kiinnostunut "music"-aiheesta. Poista tämä kiinnostuksen kohde hänen joukostaan;
-
Näytä kunkin käyttäjän kiinnostuksen kohteet näiden toimenpiteiden jälkeen.
1. Lisää kiinnostuksen kohteet jokaiselle käyttäjälle heidän omiin joukkoihinsa:
SADD user:1:interests "music" "movies" "sports"
SADD user:2:interests "sports" "travel" "reading"
SADD user:3:interests "reading" "music" "cooking"
2. Tarkista, onko tietty kiinnostuksen kohde olemassa käyttäjän joukossa:
SISMEMBER user:1:interests "travel" # result: 0 (User 1 is not interested)
SISMEMBER user:2:interests "sports" # result: 1 (User 2 is interested)
3. Hae kahden käyttäjän yhteiset kiinnostuksen kohteet:
SINTER user:1:interests user:2:interests # result: ["sports"]
4. Hae yhden käyttäjän kiinnostuksen kohteet, joita toisella ei ole:
SDIFF user:1:interests user:2:interests # result: ["music", "movies"]
5. Luo kaikkien käyttäjien yksilöllisten kiinnostuksen kohteiden täydellinen lista:
SUNION user:1:interests user:2:interests user:3:interests # result: ["music", "movies", "sports", "travel", "reading", "cooking"]
6. Poista kiinnostuksen kohde käyttäjän joukosta:
SREM user:3:interests "music"
7. Hae päivitetyt kiinnostuksen kohteiden joukot jokaiselle käyttäjälle:
SMEMBERS user:1:interests # result: ["music", "movies", "sports"]
SMEMBERS user:2:interests # result: ["sports", "travel", "reading"]
SMEMBERS user:3:interests # result: ["reading", "cooking"]
Kiitos palautteestasi!
Kysy tekoälyä
Kysy tekoälyä
Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme
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
Haaste: Käyttäjäkiinnostusten Hallinta
Pyyhkäise näyttääksesi valikon
Kuvittele, että kehität ominaisuutta sovellukseen, joka seuraa käyttäjien kiinnostuksen kohteita. Tiedot jokaisesta käyttäjästä tallennetaan Redis-tietokantaan joukkona (set). Jokaisella käyttäjällä on yksilöllinen kokoelma kiinnostuksen kohteita.
-
Lisää kunkin käyttäjän kiinnostuksen kohteet heidän omiin joukkoihinsa:
user:1:interests: "music", "movies", "sports";user:2:interests: "sports", "travel", "reading";user:3:interests: "reading", "music", "cooking".
-
Tarkista, onko Käyttäjä 1 kiinnostunut "travel"-aiheesta ja onko Käyttäjä 2 kiinnostunut "sports"-aiheesta;
-
Tunnista Käyttäjän 1 ja Käyttäjän 2 yhteiset kiinnostuksen kohteet;
-
Selvitä Käyttäjän 1 kiinnostuksen kohteet, joita Käyttäjällä 2 ei ole;
-
Luo luettelo kaikista ainutlaatuisista kiinnostuksen kohteista, joita Käyttäjä 1, Käyttäjä 2 ja Käyttäjä 3 jakavat;
-
Käyttäjä 3 ei ole enää kiinnostunut "music"-aiheesta. Poista tämä kiinnostuksen kohde hänen joukostaan;
-
Näytä kunkin käyttäjän kiinnostuksen kohteet näiden toimenpiteiden jälkeen.
1. Lisää kiinnostuksen kohteet jokaiselle käyttäjälle heidän omiin joukkoihinsa:
SADD user:1:interests "music" "movies" "sports"
SADD user:2:interests "sports" "travel" "reading"
SADD user:3:interests "reading" "music" "cooking"
2. Tarkista, onko tietty kiinnostuksen kohde olemassa käyttäjän joukossa:
SISMEMBER user:1:interests "travel" # result: 0 (User 1 is not interested)
SISMEMBER user:2:interests "sports" # result: 1 (User 2 is interested)
3. Hae kahden käyttäjän yhteiset kiinnostuksen kohteet:
SINTER user:1:interests user:2:interests # result: ["sports"]
4. Hae yhden käyttäjän kiinnostuksen kohteet, joita toisella ei ole:
SDIFF user:1:interests user:2:interests # result: ["music", "movies"]
5. Luo kaikkien käyttäjien yksilöllisten kiinnostuksen kohteiden täydellinen lista:
SUNION user:1:interests user:2:interests user:3:interests # result: ["music", "movies", "sports", "travel", "reading", "cooking"]
6. Poista kiinnostuksen kohde käyttäjän joukosta:
SREM user:3:interests "music"
7. Hae päivitetyt kiinnostuksen kohteiden joukot jokaiselle käyttäjälle:
SMEMBERS user:1:interests # result: ["music", "movies", "sports"]
SMEMBERS user:2:interests # result: ["sports", "travel", "reading"]
SMEMBERS user:3:interests # result: ["reading", "cooking"]
Kiitos palautteestasi!