Como usar Redis en la consola


#1

Siempre que tengo que debugear algo en Redis, me quiebro la cabeza y batallo para entender la estrucutra. Y cada vez es leer mil POSTs para entender…

Redis es una base de datos en memoria que es NoSQL.

Para almacenar datos, Redis usa básicamente lo hace de tres diferentes maneras:

  1. Scalars (llave valor) con solo un dato
  2. Listas, que contiene una llave un una lista de datos para ello
  3. Hashes, basicamente un diccionario de datos {llave:valor}

Para cualquiera de estos tres métodos, el registro lo almacena con una llave para hacer acceder a ese registro, pensemos lo como un ID.

Scalars

get <key>	
set <key> <value>
setnx <key> <value>	# Set key value only if key does not exist

Listas

lrange <key> <start> <stop>
lrange mylist 0 -1		# Get all of a list
lindex mylist 5			# Get by index
llen mylist			# Get length

lpush mylist "value"
lpush mylist 5			
rpush mylist "value"

lpushx mylist 6			# Only push in mylist exists
rpushx mylist 0 

lpop mylist
rpop mylist

lrem mylist 1 "value"		# Remove 'value' count times
lset mylist 2 6			# mylist[2] = 6
ltrim <key> <start> <stop>

Hashes

hexists myhash field1		# Check if hash key exists

hget myhash field1
hdel myhash field2
hset myhash field1 "value"
hsetnx myhash field1 "value"

hgetall myhash
hkeys myhash
hlen myhash

Esta info la obtuve de la siguiente referencia:
Redis Chead-Sheet