MGET de Redis

Mget De Redis



Cadenas de Redis explicadas

Las cadenas son la estructura de datos más básica y fundamental introducida por la base de datos de Redis. Las cadenas Redis son secuencias binarias seguras de bytes. Se parecen mucho a las cadenas normales disponibles en lenguajes de programación como Java y c#.net. Lo que es más importante, las cadenas de Redis se pueden usar para almacenar casi cualquier cosa que desee, como cadenas, números enteros, JSON serializados, XML y valores binarios. Dado que el tipo de datos de cadena de Redis es binario seguro, los objetos binarios como imágenes, videos y documentos se pueden almacenar fácilmente mediante cadenas. Además, una sola cadena de Redis puede contener datos de hasta 512 MB.







Además, la estructura de datos de cadena de Redis se usa comúnmente en los siguientes casos de uso:



  • almacenamiento en caché
    • Almacenamiento de sesión
    • Respuestas de la API
    • páginas HTML
  • Encimera
  • Implementación de mapa de bits y operaciones bit a bit

Las operaciones de cadena más utilizadas son SET, GET, MGET y SETNX. Los comandos INCRBY e INCRBYFLOAT se usan comúnmente para administrar los contadores implementados mediante la estructura de datos de cadena de Redis. En este tutorial, se detalla el comando MGET.



Comando MGET revelado

El comando MGET se usa para recuperar los valores de las claves Redis dadas. Acepta una o más claves como argumentos. Además, el comando MGET opera con una complejidad de tiempo O(N), donde N es el número de claves especificadas. La sintaxis del comando MGET es la siguiente:





clave MGET [ llave ... ]

Tras la ejecución del comando MGET, devuelve una matriz de valores que se almacenan en las claves de Redis especificadas. Si la clave no existe, devuelve el valor especial nulo. De manera similar, si la clave no contiene un valor de cadena, un nulo se devuelve el valor.

Caso de uso: Obtener todas las respuestas de la API almacenadas en caché

Supongamos un escenario en el que el tipo de datos de cadena de Redis se usa para implementar un caché que contiene las respuestas recientes de la API. Usamos el comando SET para almacenar algunas respuestas API ficticias con fines de demostración.



establecer anfitrion_dummy / clientes 'ricky, bernard, mary, samuel, joe' establecer anfitrion_dummy / proveedores 'jimmy, jeremy, andrew, hera' establecer anfitrion_dummy / facturas '{'facturas': [{'invoice_id': 1, 'factura_pago': 1000}, {'invoice_id': 2, 'factura_pago': 3400}]}'

Almacenamos un par de valores de cadena y un objeto JSON serializado usando el tipo de datos de cadena Redis.

Ahora, usemos el comando MGET para recuperar todas las respuestas en cada llamada a la API a la vez.

mgget dummyhost / clientes dummyhost / proveedores dummyhost / facturas

Producción:

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

2 ) 'jimmy, jeremy, andrew, hera'

3 ) '{' facturas ': [{' id_factura ': 1, ' Pago de la factura ': 1000}, {' id_factura ': 2, ' Pago de la factura ': 3400}]}'

Como era de esperar, los valores de cada clave se devuelven como una matriz.

Especificación de una clave inexistente

Como se mencionó, el comando MGET devuelve el valor especial nulo cuando se proporciona una clave inexistente. Especifiquemos una clave inexistente llamada 'clave no existente' al comando MGET y ejecutemos el ejemplo anterior de la siguiente manera:

mgget dummyhost / clientes dummyhost / proveedores dummyhost / facturas clave inexistente

Como puede ver, el último valor en la matriz es nulo que está asociado con la clave Redis inexistente.

En general, el comando MGET es un candidato ideal cuando necesitamos recuperar los valores de cadena almacenados en varias claves en una sola llamada en lugar de llamar al comando GET varias veces.

Conclusión

En resumen, el comando MGET opera en la estructura de datos de cadenas de Redis para devolver los valores almacenados en varias claves en una sola llamada. Acepta una o más claves de Redis como argumentos. Como se destaca, el comando MGET opera en una complejidad de tiempo O(N). El caso de uso le mostró cómo usar el comando MGET para obtener varias respuestas API almacenadas en varias claves de manera eficiente.