modular

En éste post, voy a comentar brevemente algunos tipos de datos disponibles en Redis y sus comandos más utilizados.

Listas

Listas de Strings que podremos utilizar tanto como stack, queue o list.
Comandos:

LPUSH: Left Push, inserta a la izquierda de la lista.

127.0.0.1:6379> LPUSH mylist world
127.0.0.1:6379> LPUSH mylist hello

RPUSH: Right Push, inserta a la derecha de la lista.

127.0.0.1:6379> RPUSH mylist "my friend"

LRANGE: Devuelve valores de la lista en un rango determinado.

127.0.0.1:6379> LRANGE mylist 0 1
1) "hello"
2) "world"

O podemos hacer que nos devuelva todos los valores.

127.0.0.1:6379> LRANGE mylist 0 -1
1) "hello"
2) "world"
3) "my friend"

LREM: Borra un elemento de la lista tantas veces como se le indique.

127.0.0.1:6379> RPUSH mylist hello hello hello
(integer) 3
127.0.0.1:6379> LRANGE mylist 0 -1
1) "hello"
2) "hello"
3) "hello"
127.0.0.1:6379> LREM mylist 2 hello
(integer) 2
127.0.0.1:6379> LRANGE mylist 0 -1
1) "hello"

Sets

Son listas de Strings sin elementos repetidos.
Comandos:

SADD: Añade un elemento a un Set.

127.0.0.1:6379> SADD myset hello
(integer) 1
127.0.0.1:6379> SADD myset hello
(integer) 0

SMEMBERS: Nos devuelve todos los miembros de un set.

127.0.0.1:6379> SMEMBERS myset
1) "hello"
2) "world"

SREM: Elimina un elemento de un Set.

127.0.0.1:6379> SREM myset world
(integer) 1
127.0.0.1:6379> SMEMBERS myset
1) "hello"

Hashes

Son colecciones de elementos clave valor. Perfectos para almacenar un objeto.
Comandos:

HMSET: Añade múltiples elementos a un hash.

127.0.0.1:6379> HMSET myhash username juan password secret
OK

HGETALL: Muestra todos los elementos de un hash.

127.0.0.1:6379> HGETALL myhash
1) "username"
2) "juan"
3) "password"
4) "secret"

HKEYS: Muestra todas las claves en un hash.

127.0.0.1:6379> HKEYS myhash
1) "username"
2) "password"

HDEL: Elimina un elemento con la clave indicada.

127.0.0.1:6379> HGETALL myhash
1) "username"
2) "juan"
3) "password"
4) "secret"
127.0.0.1:6379> HDEL myhash password
(integer) 1
127.0.0.1:6379> HGETALL myhash
1) "username"
2) "juan"

Conclusión

Redis es my flexible en la gestión de estructuras de datos permitiéndonos implementar desde simples caches para almacenar información de objetos, a colas FIFO (First In First Out), pilas, el patrón Publish-Subscribe entre otras.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Translate