Redis se distingue des autres entrepôts de données NoSQL « traditionnels » en tant que composant auxiliaire spécifiquement conçu pour optimiser les performances des applications. Voici quelques capacités qui différencient Redis :
Sessions de cache Redis
Contrairement à des bases de données NoSQL telles que MongoDB ou PostgreSQL, Redis stocke les données dans la mémoire vive du serveur plutôt que sur des disques durs ou des SSD. Cela permet des temps de réponse nettement plus rapides lors des opérations de lecture et d'écriture, tout en assurant une haute disponibilité (grâce à Redis Sentinel) et une évolutivité des services et des workloads.
File d’attente Redis
Redis permet de mettre en file d'attente des tâches que les clients web pourraient mettre plus de temps à traiter. La gestion des files d'attente multiprocessus est courante dans de nombreuses applications web actuelles, et Redis simplifie la mise en place de processus automatisés écrits en Python, exécutés en arrière-plan des cycles de requête/réponse.
Types de données Redis
Bien que Redis soit techniquement un magasin clé-valeur, il agit comme un véritable serveur de structures de données, prenant en charge divers types et structures de données, notamment :
- Éléments de chaîne uniques et non triés
- Données binaires sécurisées
- HyperLogLogs
- Tableaux de bits
- Hachages
- Listes
Gestion des clients Redis
Redis offre des capacités d'intégration native pour aider les développeurs à manipuler et interagir avec leurs données. Actuellement, il existe plus de 100 clients open source dans la bibliothèque Redis, et les développeurs peuvent facilement ajouter de nouvelles intégrations pour prendre en charge davantage de fonctionnalités et de langages de programmation.