Redis Mget

Redis Mget

Redis -strenger forklarte

Strengene er den mest grunnleggende og grunnleggende datastrukturen introdusert av Redis -databasen. Redis -strengene er binære sikre sekvenser av byte. De er mye som normale strenger tilgjengelig i programmeringsspråk som Java og C#.nett. Det viktigste er at Redis -strengene kan brukes til å lagre nesten alt du liker som strenger, heltall, serialiserte JSons, XMLS og binære verdier. Siden Redis String -datatypen er binærsikker, kan binære objekter som bilder, videoer og dokumenter enkelt lagres ved hjelp av strenger. I tillegg kan en enkelt Redis -streng inneholde dataene opptil 512 MB.

Videre brukes Redis -strengdatastrukturen ofte i følgende brukstilfeller:

  • Hurtigbufring
    • Øktlagring
    • API -svar
    • HTML -sider
  • Disk
  • Bitmap implementering og bitvis operasjoner

De mest brukte strengoperasjonene er satt, Get, Mget og SetNX. Incrby- og incrbyfloat -kommandoene brukes ofte til å administrere tellerne implementert ved hjelp av Redis String Data Structure. I denne opplæringen er MGET -kommandoen detaljert.

MGE -kommando avslørt

MGET -kommandoen brukes til å hente verdiene til de gitte redis -nøklene. Den godtar en eller flere nøkler som argumenter. Videre opererer MGET -kommandoen på O (n) tidskompleksitet der n er antall spesifiserte nøkler. Syntaksen til MGET -kommandoen er som følger:

Mget Key [Key…]

Ved utførelse av MGET -kommandoen returnerer den en rekke verdier som er lagret på de spesifiserte redis -tastene. Hvis nøkkelen ikke eksisterer, returnerer den den spesielle verdien nil. Tilsvarende, hvis nøkkelen ikke har en strengverdi, en nil Verdien returneres.

Bruk sak: Hent alle hurtigbufrede API -svar

La oss anta et scenario der Redis String -datatypen brukes til å implementere en hurtigbuffer som inneholder de nylige API -svarene. Vi bruker SET -kommandoen for å lagre noen dummy API -svar for demonstrasjonsformål.

Sett dummyhost/kunder "Ricky, Bernard, Mary, Samuel, Joe"
Sett dummyhost/leverandører "Jimmy, Jeremy, Andrew, Hera"
Sett DummyHost/Fakturaer '"Fakturaer": ["Invoice_id": 1, "Invoice_Payment": 1000, "Invoice_id": 2, "Invoice_Payment": 3400]'

Vi lagrer et par strengverdier og et serialisert JSON -objekt ved hjelp av Redis String -datatypen.

La oss nå bruke MGET -kommandoen til å hente alle svarene i hver API -samtale på en gang.

MGET Dummyhost/Customer Dummyhost/Leverandører Dummyhost/Fakturaer

Produksjon:

1) "Ricky, Bernard, Mary, Samuel, Joe"
2) "Jimmy, Jeremy, Andrew, Hera"
3) "" Fakturaer ": [" Invoice_id ": 1," Invoice_Payment ": 1000, " Invoice_id ": 2," Invoice_Payment ": 3400]"

Som forventet returneres verdiene i hver nøkkel som en matrise.

Spesifisere en ikke-eksisterende nøkkel

Som nevnt returnerer Mget -kommandoen den spesielle verdien nil Når en ikke-eksisterende nøkkel er gitt. La oss spesifisere en ikke-eksisterende nøkkel kalt "None-ExistingKey" til MGET-kommandoen og utføre det forrige eksemplet som følger:

MGET Dummyhost/Customer Dummyhost/Leverandører Dummyhost/Fakturaer None -ExistingKey

Som du kunne se, er den siste verdien i matrisen nil som er assosiert med den ikke-eksisterende redis-nøkkelen.

Totalt sett er Mget -kommandoen en ideell kandidat når vi trenger å hente strengverdiene som er lagret på flere taster i en samtale i stedet for å ringe Get -kommandoen flere ganger.

Konklusjon

Oppsummert opererer MGE. Den godtar en eller flere redis -nøkler som argumenter. Som fremhevet opererer MGET -kommandoen i O (n) tidskompleksitet. Brukssaken viste deg hvordan du bruker MGET -kommandoen til å hente flere API -svar som er lagret på flere nøkler effektivt.