Hva er Redis -datatyper

Hva er Redis -datatyper
Redis er en utrolig nøkkelverdidatabase som er rask fordi den lagrer data i systemets minne i stedet for den mye tregere disken. Det er et populært valg for applikasjoner med høy ytelse og kan brukes som en frittstående database eller et hurtigbufringssystem for andre databaser.Til tross for at den er en nøkkelverdibutikk, støtter den flere datatyper andre enn strenger som den verdier. Redis støtter bare binærsikre strengverdier med en maksimal størrelse på 512 MB for nøkler.

En binær streng refererer til en sekvens av byte som brukes i lagring av ikke-tradisjonelle data som bilder som bilder. I motsetning til rå strenger, som inneholder tekstinformasjon, kan binære strenger lagre data fra forskjellige formater.

Denne detaljerte artikkelen vil diskutere datatypene som støttes i Redis. Vi ser da på hvordan du bruker Redis -kommandoene til å jobbe med de diskuterte datatypene.

La oss diskutere.

Redis datatyper

Redis er en nøkkelverdibutikk, fungerer ved å kartlegge en unik nøkkel til et spesifikt verdiobjekt. Ved å bruke hver enkelt tast i databasen, kan du hente, oppdatere eller fjerne verdien som er tilknyttet nøkkelen.

Denne funksjonen gjør Redis veldig enkel å bruke og administrere. Som nevnt er nøkler i Redis -databasen binære strenger. For verdier kan du imidlertid bruke forskjellige objekter som:

  1. Strenger
  2. Lister
  3. Hasj
  4. Settene
  5. Sorterte sett
  6. Bitmaps (ikke diskutert)
  7. Hyperloglog (ikke diskutert)

Redis gir et sett med kommandoer og operasjoner for hver datatype nevnt ovenfor. For å følge med denne opplæringen, må du forsikre deg om at du har en Redis -klyngeoppsett på systemet ditt og klar til å gå.

Strengtyper

Strengtyper er de mest grunnleggende og standardenhetstypene du kan angi en Redis -nøkkel. Som nevnt har en Redis -nøkkel en maksimal størrelse på 512 MB enten i tekst eller binær streng. Imidlertid anbefales det å sette kortslåtte nøkler.

Å jobbe med strenger i Redis er veldig grei og enormt fort. For å jobbe med Redis Strings, bruk Get, Set og Del -kommandoer.

For å legge til en ny nøkkel i Redis -databasen, åpne Redis CLI og skriv inn kommandoen etter syntaks vist nedenfor:

Angi nøkkelverdi

Set -kommandoen tar henholdsvis første og andre argumenter som nøkkel og verdi.

For å hente verdien som er lagret i en bestemt nøkkel, bruk Get -kommandoen etterfulgt av navnet på nøkkelen.

For eksempel:

Få nøkkel
"verdi"

Når du har kjørt kommandoen over, bør du se verdien som er lagret av en bestemt nøkkel.

For å slette en tast og verdi fra databasen, bruk Del -kommandoen etterfulgt av navnet på nøkkelen.

Del Key
(Heltall) 1

Når du har utført kommandoen, vil Redis returnere antall elementer som er fjernet fra databasen. Hvis ingen av de spesifiserte nøklene eksisterer i databasen, vil Redis returnere 0, som vist i eksemplet nedenfor:

Del Not There
(Heltall) 0

Listetyper

Redis støtter også lister. Lister representerer en bestilt sekvens av strengverdier tilknyttet en spesifikk nøkkel. Tenk på lister som en bestilt samling av strengverdier.

Det er forskjellige ulemper og ulemper med å bruke lister i Redis. Først gir lister en rask metode for å sette inn og fjerne elementer fra hodet.

Ulempen med listen er at når vi trenger å få tilgang til et element fra samlingen, må Redis skanne hele gruppen. Dette blir en ulempe, spesielt hvis leseoperasjoner er høyere sammenlignet med skriveoperasjoner.

I Redis kan du legge til elementer i en liste ved å skyve den til venstre - noe som betyr å legge den til hodet på listen eller skyve den til høyre - til halen.

Følgende er kommandoene når du trenger å jobbe med lister i Redis.

For å opprette en ny liste, bruk enten LPush- eller RPush -kommandoen. LPush vil legge til et nytt element i hodet på den spesifiserte listen, mens RPush vil legge elementet til halen på listen.

LPUSH -databaser MongoDB
RPUSH -databaser mysql

For å hente et spesifikt utvalg av elementer, bruk Lrange -kommandoen etterfulgt av start- og stoppverdiene.

For å få de 4 første verdiene, kan vi for eksempel bruke Lrange -kommandoen som vist nedenfor:

Lrange -databaser 0 3

Kommandoen skal returnere elementene fra indeks 0 til indeks 4.

Hvis du vil fjerne elementer fra en Redis -liste, kan du bruke LPOP- og RPOP -kommandoene. LPOP vil fjerne elementene fra hodet, mens RPOP vil slette elementer fra halen.

Lpop databaser

"Redis"

LPOP/RPOP -kommandoene vil returnere verdien av elementet fjernet fra listen.

RPOP -databaser
"Firebase"

Anta at du vil få en verdi fra en spesifikk indeksposisjon i listen. Du kan bruke Lindex -kommandoen som:

Lindex -databaser 2
"MySQL

Det er godt å merke seg at det er flere kommandoer å bruke med lister enn de som er diskutert i denne opplæringen. Vurder dokumentasjonen som angitt i lenken nedenfor.

https: // redis.io/kommandoer#liste

Hash -typer

Redis støtter også hasj som en datatype. Vi kan definere en hasj som en samling nøkkelverdipar. I de fleste tilfeller kan hashes være nyttige når det gjelder å kartlegge strengfelt og verdier.

La oss for eksempel si at vi må lagre pasientinformasjonen og sykdomsnivået. Vi kan sette tilstanden som nøkkelen og verdiene som et sett med nøkkelverdipar med pasientens navn og sykdomsnivået.

Du kan bruke følgende grunnleggende kommandoer til å jobbe med hasj i Redis.

For å opprette en hasj, bruk HSET -kommandoen. Denne kommandoen kartlegger nøkkelen i en spesifisert hasj.

Hset sykdom_1 "John doe" 2

I eksemplet over lager vi en hasj der sykdommen er nøkkelen.

For å få en verdi tilknyttet en nøkkel i hasj, bruk HGget -kommandoen etterfulgt av navnet på hasj og den spesifikke tasten.

For eksempel:

Hget sykdom_1 "Bruce K"
"1"

For å se den komplette hashen, bruk Hgetall -kommandoen som vist:

Hgetall sykdom_1

Kommandoen skal returnere de spesifikke nøklene og verdiene i hasj, som vist på skjermdumpen ovenfor.

For å fjerne et spesifikt nøkkelverdipar fra hasj, bruk HDEL-kommandoen etterfulgt av hasjnavnet og nøkkelen til å fjerne.

La oss for eksempel fjerne informasjonen om “John Doe” fra hasj. Vi kan gjøre:

Hdel sykdom_1 "John doe"
(Heltall) 1

Kommandoen vil returnere det totale antallet elementer som er fjernet. I vårt eksempel fjernes bare ett nøkkelverdipar.

Angi typer

Følgende datatype støttet av Redis er settet. Et sett er veldig likt en liste med en betydelig forskjell: en liste tillater ikke dupliserte verdier.

Derfor kan vi definere et sett som en samling unike uordnede strengverdier. Sett bestilles ikke. Dette fjerner muligheten til å legge til eller fjerne elementer som er venstre eller høyre for indeksen. Sett er imidlertid instrumentale når du trenger å lagre unike verdier.

Følgende er kommandoer levert av Redis for å jobbe med sett.

For å opprette et nytt sett, bruk SADD -kommandoen etterfulgt av en nøkkel og verdien for å lagre.

SADD MY-Key Member1
(Heltall) 1

For å få alle medlemmene i et sett, bruk Smembers -kommandoen:

Smelter min nøkkel
1) "Member4"
2) "Member2"
3) "Member3"
4) "Member1"
5) "Member5"

For å finne ut om et element er medlem av et sett, bruk Sismember -kommandoen:

Sismember my-key member3
(Heltall) 1

Kommandoen returnerer en hvis et spesifisert medlem eksisterer i et sett.

Å legge til et medlem til et sett flere ganger vil imidlertid alltid gi samme resultat.

For å fjerne et medlem fra et sett, bruk SREM etterfulgt av nøkkelen og medlemmet for å fjerne.

SREM MY-Key Member1
(Heltall) 1

Kommandoen over skal returnere en heltallverdi som indikerer antall elementer som er slettet.

Sorterte setttyper

Sorterte sett er en av de funksjonelle og avanserte datatypene i Redis. Et sortert sett består av tre hovedkomponenter. Den første er den unike strengen som fungerer som nøkkelen. Den andre er medlem og en tredje verdi som er kjent som en poengsum.

Hvert element i et sortert sett blir kartlagt til en flytende punktverdi (poengsum) som deretter brukes til å sortere dem i forskjellige ordrer.

Følgende er grunnleggende kommandoer for å samhandle med sorterte sett i Redis.

For å legge til et medlem til et sortert sett med en poengsum, bruk ZADD -kommandoen.

Zadd Mykey 1 Member1

Elementene etter ZADD -kommandoen representerer henholdsvis nøkkelen, poengsummen og medlemmet.

For å hente varene basert på deres posisjon i settet, bruk Zrange -kommandoen:

Zrange Mykey 0 100

For å fjerne et element fra det sorterte settet, bruk ZREM -kommandoen:

Zrem Mykey Member6

Tilsvarende skal kommandoen returnere en heltallverdi som indikerer antall elementer som er fjernet fra det sorterte settet.

Siste tanker

Og med det har vi konkludert med opplæringen vår. I denne guiden lærte du hvordan du jobber med forskjellige datatyper i Redis ved hjelp av et sett med kommandoer. Imidlertid gjør denne opplæringen sitt beste for å introdusere deg for Redis -datatyper, mer enn vist her. Tenk på den primære dokumentasjonen for å lære mer.