¿Qué es REDIS?
Es un código abierto de estructura de datos en memoria caché avanzado,
de tipo “key - Value”, a menudo referido como una base de datos NoSQL.
También se conoce como un servidor de estructura de datos.
La esencia de un almacén de “key - Value” es la capacidad de almacenar
algunos datos, llamados como un valor dentro de una llave. Estos datos se
pueden recuperar posteriormente sólo si conocemos la clave exacta
utilizada para almacenarlo.
Rendimiento y Uso de Redis
Redis está escrito en ANSI C muy optimizado, es capaz de procesar con un
sólo servidor de Redis cientos de miles de peticiones por segundo.
Este es uno de los motivos por los que se ha hecho tan popular, y es
utilizado en multitud de sitios actualmente, algunos tan famosos como
Flickr, Stack Overflow, GitHub, o la española Telefónica Digital.
El factor que diferencia a Redis respecto a una caché de memoria
convencional, es que conoce la estructura de los datos que alberga.
Tiene soporte en todos los lenguajes de programación libres mas conocidos
y difundidos, PHP, C++, C#, Java, Lua, Perl, Python, etc...
Otras funcionalidades que aporta
Además de actuar como servidor de estructuras de datos, Redis aporta otras
funcionalidades muy interesantes:
- Expiración de claves basada en tiempo.
- Operaciones Atómicas y Transacciones.
- Persistencia periódica de la memoria a disco, para recuperación ante
caídas.
- Protocolo abierto, y uso desde decenas de lenguajes de
programación.
Además, con la versión 2.6 de Redis liberada a finales de Octubre de 2012,
se pueden ejecutar Scripts dentro del servidor Redis, escritos en lenguaje
LUA.
Tipos de Estructura de Datos
soportados por Redis
Actualmente Redis soporta cinco tipos de estructuras de datos:
1- Cadenas de caracteres (Strings)
2- Listas (Lists)
3- Conjuntos (Sets)
4- Conjuntos Ordenados (Sorted Sets)
5- Tablas Hash (Hashes)