Redis MGET

Redis Mget



Redis Strings selitetty

Merkkijonot ovat Redis-tietokannan yksinkertaisin ja perustavin tietorakenne. Redis-merkkijonot ovat turvallisia tavuja. Ne ovat paljon kuin tavalliset merkkijonot, jotka ovat saatavilla ohjelmointikielissä, kuten Java ja c#.net. Mikä tärkeintä, Redis-merkkijonoja voidaan käyttää lähes kaiken, mistä pidät, kuten merkkijonojen, kokonaislukujen, sarjamuotoisten JSON-tiedostojen, XML-tiedostojen ja binääriarvojen tallentamiseen. Koska Redis-merkkijonotietotyyppi on binääriturvallinen, binääriobjekteja, kuten kuvia, videoita ja asiakirjoja, voidaan helposti tallentaa merkkijonojen avulla. Lisäksi yksi Redis-merkkijono voi sisältää tietoja enintään 512 megatavua.







Lisäksi Redis-merkkijonotietorakennetta käytetään yleisesti seuraavissa käyttötapauksissa:



  • Välimuisti
    • Istunnon tallennus
    • API-vastaukset
    • HTML-sivut
  • Laskuri
  • Bittikartan toteutus ja bittikohtaiset toiminnot

Yleisimmin käytetyt merkkijonotoiminnot ovat SET, GET, MGET ja SETNX. INCRBY- ja INCRBYFLOAT-komentoja käytetään yleisesti Redis-merkkijonotietorakenteen avulla toteutettujen laskurien hallintaan. Tässä opetusohjelmassa MGET-komento on yksityiskohtainen.



MGET-komento paljastettiin

MGET-komentoa käytetään annettujen Redis-avainten arvojen hakemiseen. Se hyväksyy yhden tai useamman avaimen argumentteina. Lisäksi MGET-komento toimii O(N)-aikakompleksisuudella, jossa N on määritettyjen avainten lukumäärä. MGET-komennon syntaksi on seuraava:





MGET-avain [ avain... ]

Kun MGET-komento suoritetaan, se palauttaa joukon arvoja, jotka on tallennettu määritettyihin Redis-avaimiin. Jos avainta ei ole, se palauttaa erikoisarvon nolla. Vastaavasti, jos avaimessa ei ole merkkijonoarvoa, a nolla arvo palautetaan.

Käyttötapaus: Hae kaikki välimuistissa olevat API-vastaukset

Oletetaan skenaario, jossa Redis-merkkijonotietotyyppiä käytetään toteuttamaan välimuisti, joka sisältää viimeisimmät API-vastaukset. Käytämme SET-komentoa tallentaaksemme joitain näennäisiä API-vastauksia esittelytarkoituksiin.



aseta dummyhost / Asiakkaat 'ricky, bernard, mary, samuel, joe' aseta dummyhost / toimittajia 'Jimmy, jeremy, Andrew, hera' aseta dummyhost / laskut '{'laskut': [{'laskun_tunnus': 1, 'laskun_maksu': 1000}, {'laskun_tunnus': 2, 'laskun_maksu': 3400}]}'

Tallennamme pari merkkijonoarvoa ja sarjoitetun JSON-objektin käyttämällä Redis-merkkijonotietotyyppiä.

Käytä nyt MGET-komentoa hakemaan kaikki vastaukset jokaisessa API-kutsussa kerralla.

mget dummyhost / asiakkaiden dummyhost / toimittajat dummyhost / laskut

Lähtö:

1 ) 'ricky, bernard, mary, samuel, joe'

kaksi ) 'Jimmy, jeremy, Andrew, hera'

3 ) '{' laskut ': [{' laskun_tunnus ': 1,' lasku_maksu ':1000}, {' laskun_tunnus ': kaksi,' lasku_maksu ':3400}]}'

Kuten odotettiin, kunkin avaimen arvot palautetaan taulukkona.

Ei-olemassa olevan avaimen määrittäminen

Kuten mainittiin, MGET-komento palauttaa erikoisarvon nolla kun toimitetaan olematon avain. Määritetään MGET-komennolle ei-olemassa oleva avain nimeltä 'nonexistingkey' ja suoritetaan edellinen esimerkki seuraavasti:

mget dummyhost / asiakkaiden dummyhost / toimittajat dummyhost / laskut, joita ei ole olemassa

Kuten näet, taulukon viimeinen arvo on nolla joka liittyy olemattomaan Redis-avaimeen.

Kaiken kaikkiaan MGET-komento on ihanteellinen ehdokas, kun meidän on noudettava useille avaimille tallennetut merkkijonoarvot yhdessä kutsussa sen sijaan, että kutsuttaisiin GET-komentoa useita kertoja.

Johtopäätös

Yhteenvetona voidaan todeta, että MGET-komento toimii Redis-merkkijonotietorakenteessa palauttaakseen useille avaimille tallennetut arvot yhdessä kutsussa. Se hyväksyy yhden tai useamman Redis-avaimen argumentteina. Kuten on korostettu, MGET-komento toimii O(N)-ajan monimutkaisuuden mukaan. Käyttötapaus osoitti, kuinka voit käyttää MGET-komentoa useiden useille avaimille tallennettujen API-vastausten noutamiseen tehokkaasti.