"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > Redis 2

Redis 2

Publicado el 2024-08-15
Navegar:263

Redis 2

Redis: listas, conjuntos y HashMaps

Esta es una continuación de la entrada de blog anterior

Hay otros 3 tipos de datos disponibles además de los pares clave-valor

Liza

Esta estructura de datos se parece a la lista en Python o a la matriz en Javascript o C#. Se pueden utilizar para guardar artículos usados ​​recientemente. Las operaciones comunes son;

Operaciones Explicaciones Ejemplos Más explicaciones
LPUSH Agrega un elemento al principio de la lista LPUSH amigos "Sofía" similar a Array.unshift en javascript
LARGO Obtener todos los elementos en una lista LRANGE amigos 0 -1 de manera similar, una lista en Python 0 es el primer elemento y -1 es el último elemento
RPUSH Agrega un elemento al final de la lista RPUSH amigos "Poe" similar a Array.push en javascript
LPOP Elimina un elemento del inicio de la lista Amigos LPOP "Poe" Devolverá 1 si Poe existe en la lista y 0 en caso contrario
RPOP Elimina un elemento del final de la lista Amigos RPOP "Sofía" Devolverá 1 si Sophia existe en la lista y 0 en caso contrario

Conjuntos

Una estructura de datos que solo tiene elementos únicos. similar a conjuntos en Python y Conjuntos en Javascript y HashSets en C#. Las operaciones comunes incluyen;

Operaciones Explicaciones Ejemplos Más explicaciones
TRISTE Agrega un valor al conjunto SADD colores "rosa"
MIEMBROS devuelve los miembros del conjunto Colores SOCIOS devolverá todos los elementos en los colores establecidos
SREM Elimina miembros del conjunto Colores SREM "rosa" Devolverá 1 si existe rosa en la lista y 0 en caso contrario

mapas hash

Un mapa hash es un grupo de pares clave-valor. Sin embargo, un mapa hash no se puede anidar. Tomemos el caso de una persona con un nombre, correo electrónico y número de teléfono

HSET person name "Joe" # Adds the key-value pair {name : joe} to the hashmap
HSET person email "[email protected]" # Adds the key-value pair {email : [email protected]} to the hashmap
HSET person phone_number " 2345656655413" # Adds the key-value pair {number : ....} to the hashmap

el comando HGET se puede utilizar para obtener el valor de una clave particular en un mapa hash

HGET person name # returns "Joe"

el comando HGETALL todo el par clave-valor en el mapa hash

HGETALL person 

1) "name"
2) "Joe"
3) "email"
4) "[email protected]"
5) "phone_number"
6) " 2345656655413"

el comando HDEL elimina un par clave-valor por su clave

HDEL person name # removes {name : joe}

el comando HEXISTS verifica si existe una clave en un conjunto de hash

HEXISTS person name # returns 0 because we've deleted it before

Esos son la mayoría de los comandos básicos que un desarrollador debe conocer.


Preguntas comunes de la entrevista

  1. ¿Cuál es el significado completo de Redis?: Redis significa REmote DIctionary Server

  2. ¿En qué se diferencia Redis de las bases de datos tradicionales como MySQL?: Redis opera en la memoria principal y tiene operaciones básicas para acceder a los valores rápidamente, a diferencia de SQL, que reside en el disco y tiene una amplia gama de operaciones básicas.

  3. ¿Cuáles son las limitaciones de Redis con respecto al tamaño y tipo de datos?: Redis está diseñado para contener valores que caben en la memoria de la máquina. No es adecuado para modelos relacionales complejos con uniones ni para estructurar blobs grandes

  4. ¿Cómo se maneja el almacenamiento en caché en un entorno distribuido usando Redis?: Maneje el almacenamiento en caché configurando instancias de Redis como una capa de almacenamiento en caché frente a la base de datos. El uso de hash consistente para distribuir claves entre los nodos de caché garantiza una distribución uniforme de la carga y reduce los errores de caché

  5. ¿Cuándo debería utilizar los tipos de datos de lista en Redis?: Las listas son excelentes para colas atómicas duraderas, colas de trabajos, registros, buffers y muchos otros casos de uso

Declaración de liberación Este artículo se reproduce en: https://dev.to/ezekiel_77/redis-2-fec?1 Si hay alguna infracción, comuníquese con [email protected] para eliminarla.
Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3