¿Qué es Redis?

Remote Dictionary Server (Redis) es un sistema de almacenamiento de valores clave escrito por Salvatore Sanfilippo.

Redis es una base de datos clave-valor de código abierto escrita en lenguaje ANSIC, compatible con el protocolo BSD, admite red, se basa en memoria y persistencia y proporciona API en varios idiomas.

A menudo se le llama servidor de estructura de datos porque los valores pueden ser cadenas, hashes, listas, conjuntos y conjuntos ordenados.

Introducción a Redis

Redis es completamente de código abierto y gratuito. Es una base de datos clave-valor de alto rendimiento que cumple con el protocolo BSD.

Redis y otros productos de almacenamiento en caché de valores clave tienen las siguientes tres características:

(1) ①Redis admite la persistencia de datos y puede guardar datos en la memoria en el disco y puede reiniciarse. y utilizar de nuevo.

②Redis no solo admite datos clave-valor simples, sino que también proporciona almacenamiento de estructuras de datos como list, set, zset y hash.

③Redis admite la copia de seguridad de datos, es decir, la copia de seguridad de datos en modo maestro-esclavo.

Características de Redis

Alto rendimiento: Redis almacena todos los conjuntos de datos en la memoria y puede escribir (configurar) 110.000 veces por segundo y leer (obtener) en una máquina Linux de nivel básico 810.000 veces.

Persistencia: cuando todos los datos existen en la memoria, puede utilizar estrategias flexibles para guardar de forma asincrónica los cambios en el disco según el tiempo transcurrido y/o la cantidad de actualizaciones desde el último guardado.

Estructuras de datos: Redis soporta varios tipos de estructuras de datos como cadenas, hashes, conjuntos, listas, conjuntos ordenados con consultas de rango, mapas de bits, hiperlogs e índices geoespaciales con consultas de radio.

Operaciones atómicas: las operaciones de Redis que manejan diferentes tipos de datos son atómicas, por lo que puedes configurar de forma segura claves INCR, agregar y eliminar elementos de colecciones y más.

Idiomas soportados: Redis soporta múltiples lenguajes, como C, C++, Erlang, Go, Haskell, Java, JavaScript (Node.js), Lua, Objective-C, Perl, PHP, Python, R, Ruby, Rust, Scala, Smalltalk, etc.

Replicación maestro/esclavo: Redis sigue una replicación maestro/esclavo muy simple y rápida. Solo se necesita una línea en el archivo de configuración para configurarlo, y Slave hace 10 mm en una instancia Amazon EC2.

La sincronización inicial del conjunto de claves tarda sólo 21 segundos.

Fragmentación: Redis admite la fragmentación. Al igual que con otros almacenes de valores-clave, es fácil distribuir un conjunto de datos entre varias instancias de Redis.

Portabilidad: Redis está escrito en C y es adecuado para la mayoría de sistemas POSIX, como Linux, BSD, Mac OS X, Solaris, etc.