Redis MGET

Redis Mget



S'han explicat les cordes de Redis

Les cadenes són l'estructura de dades més bàsica i fonamental introduïda per la base de dades Redis. Les cadenes Redis són seqüències binàries segures de bytes. S'assemblen molt a les cadenes normals disponibles en llenguatges de programació com Java i c#.net. El més important és que les cadenes de Redis es poden utilitzar per emmagatzemar gairebé qualsevol cosa que us agradi, com ara cadenes, nombres enters, JSON serialitzats, XML i valors binaris. Com que el tipus de dades de cadena de Redis és binari segur, els objectes binaris com imatges, vídeos i documents es poden emmagatzemar fàcilment mitjançant cadenes. A més, una sola cadena de Redis pot contenir les dades fins a 512 MB.







A més, l'estructura de dades de cadena de Redis s'utilitza habitualment en els casos d'ús següents:



  • Emmagatzematge a la memòria cau
    • Emmagatzematge de la sessió
    • Respostes de l'API
    • pàgines HTML
  • Comptador
  • Implementació de mapes de bits i operacions per bits

Les operacions de cadena més utilitzades són SET, GET, MGET i SETNX. Les ordres INCRBY i INCRBYFLOAT s'utilitzen habitualment per gestionar els comptadors implementats mitjançant l'estructura de dades de cadena Redis. En aquest tutorial, es detalla l'ordre MGET.



S'ha revelat la comanda MGET

L'ordre MGET s'utilitza per recuperar els valors de les claus Redis donades. Accepta una o més claus com a arguments. A més, l'ordre MGET opera amb complexitat de temps O(N), on N és el nombre de claus especificades. La sintaxi de l'ordre MGET és la següent:





Tecla MGET [ clau... ]

En executar l'ordre MGET, retorna una matriu de valors que s'emmagatzemen a les claus Redis especificades. Si la clau no existeix, retorna el valor especial nil. De la mateixa manera, si la clau no conté un valor de cadena, a nil es retorna el valor.

Cas d'ús: Obteniu totes les respostes de l'API en memòria cau

Suposem un escenari en què el tipus de dades de cadena Redis s'utilitza per implementar una memòria cau que conté les respostes recents de l'API. Utilitzem l'ordre SET per emmagatzemar algunes respostes de l'API simulades amb finalitats de demostració.



conjunt dummyhost / clients 'ricky, bernard, mary, samuel, joe' conjunt dummyhost / proveïdors 'Jimmy, Jeremy, Andrew, Hera' conjunt dummyhost / factures '{'invoices': [{'invoice_id': 1, 'invoice_payment': 1000}, {'invoice_id': 2, 'invoice_payment': 3400}]}'

Emmagatzemem un parell de valors de cadena i un objecte JSON serialitzat mitjançant el tipus de dades de cadena Redis.

Ara, utilitzem l'ordre MGET per recuperar totes les respostes de cada trucada d'API alhora.

mget dummyhost / clients dummyhost / proveïdors dummyhost / factures

Sortida:

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

2 ) 'Jimmy, Jeremy, Andrew, Hera'

3 ) '{' factures ': [{' invoice_id ': 1, ' factura_pagament ': 1000}, {' invoice_id ': 2, ' factura_pagament ': 3400}]}'

Com era d'esperar, els valors de cada clau es retornen com a matriu.

Especificació d'una clau no existent

Com s'ha esmentat, l'ordre MGET retorna el valor especial nil quan es proporciona una clau inexistent. Especifiquem una clau inexistent anomenada 'nonexistingkey' a l'ordre MGET i executem l'exemple anterior de la següent manera:

mget dummyhost / clients dummyhost / proveïdors dummyhost / factures clau inexistent

Com podeu veure, l'últim valor de la matriu és nil que s'associa amb la clau Redis inexistent.

En general, l'ordre MGET és un candidat ideal quan necessitem recuperar els valors de cadena emmagatzemats en diverses claus en una trucada en lloc de cridar l'ordre GET diverses vegades.

Conclusió

En resum, l'ordre MGET funciona a l'estructura de dades de cadena Redis per retornar els valors emmagatzemats en diverses claus en una trucada. Accepta una o més claus Redis com a arguments. Com s'ha destacat, l'ordre MGET funciona en complexitat de temps O(N). El cas d'ús us va mostrar com utilitzar l'ordre MGET per obtenir diverses respostes de l'API emmagatzemades en diverses claus de manera eficient.