¿Qué tipos de datos admite Redis?
Redis proporciona cinco tipos de datos: cadena, hash, lista, conjunto y zset (conjunto ordenado).
Redis es un sistema de almacenamiento clave-valor. Al igual que Memcached, admite relativamente más tipos de valores almacenados, incluida cadena (cadena), lista (lista vinculada), conjunto (conjunto), zset (conjunto ordenado - conjunto ordenado) y hash (tipo hash). Todos estos tipos de datos admiten operaciones push/pop, agregar/eliminar, intersección, unión, diferencia y más ricas, y todas estas operaciones son atómicas. Sobre esta base, Redis admite varias formas diferentes de clasificación. Al igual que Memcached, los datos se almacenan en caché en la memoria para garantizar la eficiencia. La diferencia es que redis escribirá periódicamente datos actualizados en el disco o escribirá operaciones de modificación en archivos de registro adicionales y, sobre esta base, se logrará la sincronización maestro-esclavo (maestro-esclavo).
Redis es una base de datos clave-valor de alto rendimiento. La aparición de Redis ha compensado en gran medida las deficiencias del almacenamiento de claves/valores como Memcached, y puede desempeñar un muy buen papel complementario a las bases de datos relacionales en algunas situaciones. Proporciona Java, C/C++, C#, PHP, JavaScript, Perl, Object-C, Python, Ruby, Erlang y otros clientes, lo cual es muy conveniente de usar.
Redis admite la sincronización maestro-esclavo. Los datos se pueden sincronizar desde el servidor maestro con cualquier número de servidores esclavos, y el servidor esclavo puede ser un servidor maestro asociado con otros servidores esclavos. Esto permite a Redis realizar una replicación de árbol de un solo nivel. Guardar puede escribir datos de forma intencionada o no. Dado que el mecanismo de publicación/suscripción está completamente implementado, cuando la base de datos esclava sincroniza el árbol en cualquier lugar, puede suscribirse a un canal y recibir el registro de publicación de mensajes completo del servidor maestro. La sincronización es útil para la escalabilidad y la redundancia de datos de las operaciones de lectura.