Redis Srem

Redis Srem
“Hvis din neste webapplikasjon ser etter en måte å lagre en samling strenger uten duplikater, er Redis-sett den datastrukturen til datastruktur. Redis -sett kan inneholde mer enn fire milliarder strengtype medlemmer, som er mer enn nok i praktiske brukssaker. Flere forhåndsbygde kommandoer er tilgjengelige for å utføre grunnleggende for avanserte operasjoner på sett som tillegg, fjerning, eksistenskontroll osv. Det viktigste med de grunnleggende settoperasjoner som ADD og fjerner er at de har konstant tidskompleksitet.”

Redis Srem Command

Redis Srem -kommandoen brukes til å fjerne elementer fra et sett som er lagret på en spesifisert nøkkel. Fra versjon 2.4.0, denne kommandoen støtter å fjerne flere medlemmer samtidig. Valideringer er på plass for følgende scenarier.

Spesifisere ikke-eksisterende medlemmer

Hvis et spesifisert medlem ikke er en del av det gitte settet, vil det medlemmet bli hoppet over.

Spesifisere ikke-eksisterende nøkkel

Hver gang nøkkelen ikke er tilgjengelig, vil SREM -kommandoen returnere 0. I så fall behandler SREM-kommandoen det ikke-eksisterende settet som et tomt sett.

Syntaks:

SREM -kommandoen har veldig enkel syntaks, som vist i det følgende.

SREM Redis_Key -medlem [medlem ...]

redis_key: Den unike identifikatoren der settet er lagret.

medlem: Medlemmet som skal fjernes fra listen. Eventuelt kan du spesifisere flere medlemmer.

SREM -kommandoen returnerer en heltallverdi som er tellingen av medlemmene som er fjernet med suksess. Som et eksempel, hvis tre medlemmer ble fjernet fra settet, ville den returnerende verdien være 3.

I tillegg, hvis du spesifiserer en tast som peker på en hasj eller liste, men ikke på et sett. I et slikt tilfelle ville SREM -kommandoen øke en feil.

Eksempel 01 - Fjern et medlem fra settet

La oss anta at vi skal lagre topp fans av ditt personlige nettsted basert på interaktivitetsnivået hver måned. Siden sett holder ikke-duplikatmedlemmer, kan vi forsikre at den samme brukeren ikke vil bli lagt til flere ganger.

Vi vil bruke SADD -kommandoen for å legge de 5 beste fansen i januar til settet som er lagret på Key Topfans: januar.

Sadd Topfans: januar Jacknelson Tinamaddy Joshinglish Eoinmorgan Derekharns

La oss inspisere Topfans: januar Sett ved hjelp av Smembers -kommandoen.

Smør Topfans: januar

Produksjon:

På grunn av den uetiske oppførselen til medlemmet “tinamaddy”, fikk vi et krav om å fjerne henne fra settet. Nå er SREM -kommandoen den ideelle kandidaten til å gjøre dette.

Srem Topfans: januar Tinamaddy

Som forventet er utgangen 1, noe som betyr at ett medlem er fjernet. La oss også inspisere de eksisterende medlemmene i settet.

Smør Topfans: januar

Som vist i output ovenfor, har medlemmet "Tinamaddy" gått fra listen.

Eksempel 02 - Fjern flere medlemmer samtidig

I noen scenarier må vi kanskje fjerne mer enn ett medlem fra et sett. Derfor støtter SREM -kommandoen flere medlemsargumenter. La oss si at vi må fjerne både medlemmene “Jacknelson” og “Joshinglish”. Følgende kommando vil gjøre det for deg.

Srem Topfans: Januar Jacknelson Joshinglish

Kommandoen returnerte heltallet 2, noe som betyr at to medlemmer er fjernet.

Det viktige å legge merke til er at SREM -kommandoen bruker konstant tid i begge scenariene. Derfor anbefales det å bruke i lav latensapplikasjoner.

Konklusjon

For å oppsummere, opererer SREM -kommandoen på faste datastrukturer. Hovedjobben er å fjerne et element fra et sett som er lagret på en spesifisert nøkkel. I likhet med SADD- og SISMEMES -kommandoene, har SREM -kommandoen konstant tidskompleksitet der antallet elementer ikke trer i kraft på utførelsestiden for SREM -kommandoen. Som sagt, fra Redis versjon 2.4.0, SREM -kommandoen tillater flere medlemsargumenter. Derfor kan du slette flere medlemmer fra en gitt liste samtidig. Ved utførelsen av denne kommandoen returnerer den en heltallverdi som er antallet vellykket fjernet elementer fra listen. Totalt sett er SREM -kommandoen en ideell kandidat å bruke i lav latensapplikasjoner.