Redis Smembers

Redis Smembers
Redis støtter flere datatyper og datastrukturer. Settet er et av de mest fordelaktige blant dem. Det lar deg lagre en samling strenger i uordnet form. En av de nyttige funksjonene knyttet til sett er at ingen gjentatte elementer er tillatt.

Et sett kan lagre mer enn fire milliarder unike medlemmer. Store settoperasjoner som Legg til og fjerne har konstant tidskompleksitet, noe som er veldig effektivt. Når du prøver å legge til et eksisterende element til et sett, vil det bare beholde en kopi av det elementet uten å lage et nytt element. Derfor er det ikke nødvendig å legge til eksplisitte duplikatkontroller.

Kommandoen 'Smør'

Det er flere kommandoer tilgjengelig for å operere på Redis -sett. Det er alltid nyttig å hente alle elementene som er lagret i et sett. Vanligvis brukes 'smembers' kommandoen til å hente elementer i et Redis -sett.

Syntaks

Smelkere

Hvert sett har en nøkkel som fungerer som en referanse for rekke elementer.

Eksempel - Teller sidevisninger fra unike brukere

La oss ta et eksempel der nettstedet ditt må telle visningene fra unike brukere. Derfor stoler du ikke på at visninger kommer fra samme bruker -ID. Vi kan bruke et sett for å holde alle de unike brukerne besøke nettstedet ditt.

Vi kan bruke 'Sadd' -kommandoen for å opprette et nytt sett på en spesifisert nøkkel og for å legge til noen medlemmer.

Sadd besøkende "Henry001"
Sadd besøkende "Jackma"
Sadd besøkende "Singh06"
Sadd besøkende "Robin"

Dette ville skape et sett med nøkkelen 'besøkende' med fire medlemmer, som vist i det følgende.

La oss utføre kommandoen 'Smembers' for å sjekke de tilgjengelige medlemmene i settet som er identifisert av nøkkelen 'VisitorIds'.

Produksjon:

Den returnerte matrisen inneholder ingen duplikat bruker -ID -er fordi 'SADD' -kommandoen ikke tillot dupliserte medlemmer å gå inn. Derfor kan du identifisere de unike brukerne som besøkte nettstedet ditt fra kommandoproduksjonen ovenfor.

Vi kan bruke 'Sadd' -kommandoen for å legge til flere medlemmer på en gang uten å utføre den samme kommandoen gjentatte ganger.

Sadd Newvisitors "Singh06" "Henry001" "Jackma" "Robin"

Produksjon:

Det samme resultatet er gitt av 'Smør "-kommandoen.

Kommandoen 'Sinter' kan brukes i stedet for 'Smembers' -kommandoen. Vanligvis returnerer 'Sinter' -kommandoen krysset mellom to sett. Men du kan bruke den ved å passere en tast. Det ville returnere medlemmene i settet som er lagret på den passerte nøkkelen.

Sinter newvisitors

Produksjon:

'Smembers' kommandoprestasjon

Denne kommandoen har en lineær tidskompleksitet som kan representeres som O (N). Det betyr at når medlemstallet øker, vil tiden det tar å returnere utvalget av elementene gå opp.

'Smør "-kommandoen på en ikke-sett type

Vanligvis vil 'Smør "-kommandoen bare fungere med angitte datatyper. Det vil øke en feil for andre datatyper. La oss lage en 'hasj' som vist i det følgende.

HSET MYHASH ID 1 Navn Funnyhash

Vi har laget en hasj kalt 'myhash'. Deretter vil vi sende denne nøkkelen til 'Smør "-kommandoen.

Smør Myhash

Produksjon:

Som forventet returnerer kommandoen en feilmelding ved å indikere at nøkkelen ikke holder en innstilt type verdi. Det er en hasj. Derfor avsluttes 'Smør "-kommandoen med feilmeldingen ovenfor. Så denne kommandoen er spesifikk for å angi datatyper.

Konklusjon

Redis kommer med flere innebygde datatyper. Den støtter sett. Et sett er en uordnet samling av strenger. Det lagrer ikke dupliserte medlemmer. Hvis vi prøver å sette inn et duplikatelement i et sett, vil det bare beholde en enkelt kopi av det medlemmet. Redis Set Operations er veldig effektive. Legg til og fjerne operasjoner har konstant tidskompleksitet. Vi kan bruke 'Smør "-kommandoen for å returnere alle medlemmene som er lagret i et sett på en spesifisert nøkkel. Denne operasjonen har lineær tidskompleksitet og er fremdeles veldig nyttig i virkelige applikasjoner.