Cuando tenga Redis en funcionamiento, ¡puede comenzar a usarlo!
La forma más sencilla es usar redis-cli
, una aplicación instalada al instalar Redis.
Es una forma integrada de escribir comandos en Redis sin tener que configurar una aplicación para hacerlo.
Puede conectarse a un servidor Redis remoto usando redis-cli -h <host> -p <port> -a <password>
Una vez que esté en la aplicación Redis CLI, puede comenzar a almacenar datos en ella.
Agrega un valor usando la estructura SET <key> <value>
:
SET name "Flavio"
Recuperar un valor
Recuperar un valor usando la estructura GET <key>
:
Verificar si existe una clave
También podemos verificar si existe una clave usando EXISTS <key>
:
El comando devuelve 1 (existe) o 0 (no existe).
Establecer si no existe
Una variación de SET
nos permite establecer una clave solo si aún no existe:
SETNX name "Roger"
Eliminar una clave
Eliminar una clave usando DEL <key>
:
Lista de claves existentes
Puede listar todas las llaves insertadas usando KEYS *
O puede filtrar usando un patrón como KEYS n*
para enumerar solo las claves que comienzan con n
, por ejemplo.
Cada valor almacenado puede contener hasta 512 MB de valor.
Claves que caducan
Una clave puede almacenarse temporalmente y eliminarse automáticamente cuando finaliza el temporizador:
SETEX <key> <seconds> <value>
Puede obtener el tiempo restante para borrar una clave usando TTL <key>
En este ejemplo establecí un name
clave con Flavio
como valor, y usando TTL puedo verificar cuánto tiempo queda hasta que la clave devuelva el valor. Una vez que el temporizador expira, da como resultado un valor nulo (nil
):
También puede configurar una clave existente para que caduque usando EXPIRE <key> seconds>
.
Incrementar y decrementar
Un valor numérico se puede incrementar usando INCR <key>
y se decrementa usando DECR <key>
. También puede usar INCRBY <key> <amount>
y DECRBY <key> <amount>
para incrementar un valor clave en una cantidad específica:
Esos comandos son muy adecuados para operaciones con mucha concurrencia en las que muchos clientes pueden interactuar con los mismos datos, para garantizar transacciones atómicas. .
El ejemplo más común es cuando 2 clientes diferentes intentan incrementar el mismo número.
En una base de datos como PostgreSQL o MongoDB, primero obtiene el valor numérico, lo incrementa y luego realiza una solicitud al servidor para incrementarlo.
Digamos que el valor es 1
. Si dos clientes leen el valor usando GET
luego llaman a SET
para incrementarlo de forma independiente, al final, si no hay nada que impida que ocurra el cambio concurrente, el resultado será 2
. Redis previene este problema desde la raíz.
Estructuras de datos más complejas
Hasta ahora hemos trabajado con tipos de datos simples como enteros y cadenas.
Redis puede admitir estructuras más complejas.
Veamos en las próximas lecciones cómo trabajar con:
- Listas
- Conjuntos
- Conjuntos ordenados
- Hashes