Introducción
En este laboratorio, aprenderás las operaciones fundamentales de clave-valor en Redis. Utilizaremos la interfaz de línea de comandos redis-cli para interactuar con el servidor Redis y realizar operaciones básicas como establecer, obtener, verificar la existencia, eliminar y configurar tiempos de expiración para las claves. Al finalizar este laboratorio, tendrás una comprensión sólida de cómo utilizar Redis como un almacén de datos sencillo.
Establecer y recuperar pares clave-valor
En este paso, nos centraremos en las operaciones principales de establecer y recuperar pares clave-valor en Redis. Esta es la base para utilizar Redis como almacén de datos.
Redis almacena los datos como pares clave-valor, de forma similar a un diccionario. La clave es un identificador único y el valor es el dato asociado a dicha clave.
Conectarse a Redis:
Abre una terminal en la máquina virtual de LabEx. Deberías estar ya en el directorio
~/project. Conéctate al servidor Redis usando el comandoredis-cli:redis-cliDeberías ver el prompt de Redis:
127.0.0.1:6379>. Esto indica una conexión exitosa al servidor Redis.Establecer un par clave-valor:
Vamos a establecer un par clave-valor usando el comando
SET. Asignaremos a la clavemykeyel valormyvalue.SET mykey myvalueRedis responderá con:
OKEsto confirma que el par clave-valor se ha almacenado correctamente.
Obtener el valor de una clave:
Para recuperar el valor asociado a una clave, utiliza el comando
GET. Recuperemos el valor demykey:GET mykeyRedis responderá con:
"myvalue"Esto demuestra que hemos recuperado con éxito el valor asociado a la clave
mykey.Establecer otro par clave-valor:
Vamos a establecer otro par clave-valor con una clave y un valor diferentes. En esta ocasión, usaremos
user:1001como clave yJohncomo valor.SET user:1001 JohnRedis responderá con:
OKObtener el valor de la nueva clave:
Ahora, recuperemos el valor de la clave
user:1001:GET user:1001Redis responderá con:
"John"Ya has establecido y recuperado pares clave-valor en Redis con éxito.
Salir de la CLI de Redis:
Es importante salir de la CLI de Redis después de cada paso para que los comandos se registren correctamente. Escribe:
exit
Verificar la existencia de claves
En este paso, aprenderemos a comprobar si una clave existe en Redis utilizando el comando EXISTS. Esto es útil para determinar si una clave ha sido establecida antes de intentar recuperar su valor o realizar otras operaciones.
Conectarse a Redis:
Conéctate al servidor Redis usando el comando
redis-cli:redis-cliDeberías ver el prompt de Redis:
127.0.0.1:6379>.Verificar la existencia de una clave existente:
En el paso anterior, establecimos la clave
mykey. Comprobemos si existe usando el comandoEXISTS:EXISTS mykeyRedis responderá con:
(integer) 1Una respuesta de
1indica que la clavemykeyexiste en Redis.Verificar la existencia de una clave inexistente:
Ahora, comprobemos si existe una clave que no hemos definido. Por ejemplo, busquemos una clave llamada
nonexistentkey:EXISTS nonexistentkeyRedis responderá con:
(integer) 0Una respuesta de
0indica que la clavenonexistentkeyno existe en Redis.Salir de la CLI de Redis:
Sal de la CLI de Redis para asegurar que los comandos se registren:
exit
Eliminar claves
En este paso, aprenderemos a eliminar claves de Redis utilizando el comando DEL. Esto es esencial para gestionar los datos y eliminar entradas obsoletas o no deseadas.
Conectarse a Redis:
Conéctate al servidor Redis usando el comando
redis-cli:redis-cliDeberías ver el prompt de Redis:
127.0.0.1:6379>.Eliminar una clave existente:
En los pasos anteriores, establecimos la clave
mykey. Vamos a eliminarla usando el comandoDEL:DEL mykeyRedis responderá con:
(integer) 1Una respuesta de
(integer) 1indica que una clave fue eliminada correctamente.Eliminar una clave inexistente:
Intentemos eliminar una clave que no existe, como
nonexistentkey:DEL nonexistentkeyRedis responderá con:
(integer) 0Una respuesta de
(integer) 0indica que no se eliminó ninguna clave (porque la clave no existía).Eliminar múltiples claves:
El comando
DELtambién se puede utilizar para eliminar varias claves a la vez. Vamos a eliminar la claveuser:1001que creamos anteriormente, e intentaremos eliminarnonexistentkeyde nuevo en el mismo comando:DEL user:1001 nonexistentkeyRedis responderá con:
(integer) 1Una respuesta de
(integer) 1indica que una clave fue eliminada correctamente (user:1001), y el intento de eliminarnonexistentkeyfue ignorado ya que no existía.Salir de la CLI de Redis:
Sal de la CLI de Redis:
exit
Establecer la expiración de claves
En este paso, aprenderemos a establecer un tiempo de expiración para una clave en Redis utilizando tanto el comando EXPIRE como el comando SET con el parámetro EX. Esto es útil para eliminar datos automáticamente después de un cierto período, como datos de sesión o cachés temporales.
Conectarse a Redis:
Conéctate al servidor Redis usando el comando
redis-cli:redis-cliDeberías ver el prompt de Redis:
127.0.0.1:6379>.Establecer un par clave-valor con expiración (Método 1: SET con parámetro EX):
Redis permite establecer un par clave-valor con un tiempo de expiración en un solo comando usando el parámetro
EX. Vamos a establecer la clavesessionkeycon el valorsessionvaluey un tiempo de expiración de 15 segundos:SET sessionkey sessionvalue EX 15Redis responderá con:
OKEste comando establece el par clave-valor y el tiempo de expiración en una sola operación, lo cual es más eficiente que usar comandos separados.
Verificar el TTL de la clave establecida con EX:
Comprobemos el tiempo de vida restante (TTL, por sus siglas en inglés) para
sessionkey:TTL sessionkeyRedis responderá con el número de segundos restantes hasta que la clave expire (por ejemplo,
(integer) 14). El valor será ligeramente inferior a 15 debido al tiempo transcurrido desde que se estableció la clave.Establecer un par clave-valor (Método 2: Usando el comando EXPIRE por separado):
Alternativamente, puedes establecer un par clave-valor primero y luego configurar su tiempo de expiración por separado. Vamos a establecer la clave
tempkeycon el valortempvalue:SET tempkey tempvalueRedis responderá con:
OKEstablecer el tiempo de expiración usando el comando EXPIRE:
Ahora, establezcamos un tiempo de expiración de 10 segundos para
tempkeyusando el comandoEXPIRE:EXPIRE tempkey 10Redis responderá con:
(integer) 1Una respuesta de
(integer) 1indica que el tiempo de expiración se estableció correctamente.Verificar el tiempo de vida restante (TTL):
Para comprobar el tiempo de vida restante (TTL) de
tempkey, utiliza el comandoTTL:TTL tempkeyRedis responderá con el número de segundos restantes hasta que la clave expire (por ejemplo,
(integer) 9). El valor podría ser ligeramente inferior a 10 debido al tiempo transcurrido desde que se estableció la expiración. Si la clave no existe o no tiene expiración,TTLdevuelve-2o-1respectivamente.Salir de la CLI de Redis:
Sal de la CLI de Redis:
exit
Resumen
En este laboratorio, has aprendido las operaciones fundamentales de clave-valor en Redis utilizando la interfaz de línea de comandos redis-cli. Aprendiste a conectarte al servidor Redis y a utilizar el comando SET para almacenar datos como pares clave-valor. También practicaste la recuperación de valores mediante el comando GET. Además, aprendiste a verificar la existencia de claves usando el comando EXISTS, a eliminar claves usando el comando DEL y a establecer tiempos de expiración para las claves utilizando tanto el comando SET con el parámetro EX como el comando EXPIRE. El comando SET con el parámetro EX es particularmente útil, ya que permite establecer un par clave-valor con tiempo de expiración en una operación única y eficiente. Estos son los pilares para utilizar Redis como un almacén de datos sencillo y eficiente.


