Redis es una base de datos que asocia a una clave un determinado valor. Es similar a memcache pero con un conjunto de datos persistente (no volátiles).
Para ser lo más rápida posible y a la vez no volátil redis tiene todo el conjunto de datos en memoria y de vez en cuando o cuando el número de registros cambiados llega a cierto valor estos son escritos asincronamente en disco. Podrían perderse un pequeño número de valores que es aceptable para la mayoría de las aplicaciones pero es tan rápido como una base de datos en memoria.
Redis está escrito en ANSI C y funciona en la mayoría de sistemas POSIX como Linux, BSD, Mac OS X. Redis es software libre bajo licencia BSD.
- Administración de conexiones al servidor (incluyendo autenticación)
- Operaciones con cadenas (tipo clave-valor)
- Operaciones sobre las claves (TTL, renombrado, expiración, tamaño total)
- Operaciones atómicas sobre listas (push, pop en cabeza y cola de lista, control de lista, tamaño de listas)
- Agrupación de claves en Sets
- Administración de múltiples bases de datos
- Ordenación (de listas y Sets)
- Comandos para el control de la persistencia (no volatilidad de los datos)
- Control remoto del servidor
Existen implementados diversos clientes de redis en estos lenguajes: Ruby, Python, PHP, Erlang, Tcl, Perl, Lua, Java
Redis es realmente rápido. Los benchmarks de redis arrojan resultados de hasta 100.000 peticiones resueltas en 1.23 segundos en un SO Linux 2.16 corriendo en un Xeon X3320 2.5Ghz o tiempos de grabación de 100.000 claves en 0.88 segundos bajo esta misma arquitectura.
Redis también puede ser clusterizado aunque el trabajo y gestión de todo esto debe ser llevado a cabo por el cliente que debe separar las llaves entre los servidores que componen el cluster. Así el escalado es muy sencillo.
Para obtener más información podéis ir a la página del proyecto redis en code.google.com





0 Referencias