2025-10-29 20:21:20 +01:00
|
|
|
|
# Base de données Clés-Valeur
|
|
|
|
|
|
|
|
|
|
|
|
> Une base de données Key-Value Store est le modèle le plus simple du paradigme NoSQL :
|
|
|
|
|
|
> - Chaque donnée est enregistrée sous forme d’une paire clé → valeur.
|
|
|
|
|
|
> - La clé est un identifiant unique (souvent une chaîne de caractères ou un hash).
|
|
|
|
|
|
> - La valeur peut être de tout type : texte, nombre, objet JSON, données binaire (image, vidéo, objet sérialisé).
|
|
|
|
|
|
|
|
|
|
|
|
Elles sont vues comme des tables de hachage persistantes et distribuées.
|
|
|
|
|
|
|
2025-10-29 20:32:06 +01:00
|
|
|
|
## Caractéristiques
|
2025-10-29 20:21:20 +01:00
|
|
|
|
|
|
|
|
|
|
- Simplicité : un accès direct par clé, sans relations complexes ni jointures.
|
|
|
|
|
|
- Performance élevée : très rapide en lecture et écriture (souvent en mémoire).
|
|
|
|
|
|
- Scalabilité horizontale : ajout de nœuds pour répartir les clés (partitionnement/sharding).
|
|
|
|
|
|
- Tolérance aux pannes : réplication des paires clé/valeur sur plusieurs nœuds.
|
|
|
|
|
|
- Schéma flexible : la valeur peut changer de format sans contrainte stricte.
|
|
|
|
|
|
|
2025-10-29 20:32:06 +01:00
|
|
|
|
## Cas d’usage
|
2025-10-29 20:21:20 +01:00
|
|
|
|
|
|
|
|
|
|
- Cache en mémoire : accélération des performances d’applications,
|
|
|
|
|
|
- Sessions utilisateur : stockage temporaire des informations de connexion,
|
|
|
|
|
|
- Courtier de messages : stocke des messages et des notifications,
|
|
|
|
|
|
|
2025-10-29 20:32:06 +01:00
|
|
|
|
## Solutions
|
2025-10-29 20:21:20 +01:00
|
|
|
|
|
|
|
|
|
|
- [Memcached](https://memcached.org/)
|
|
|
|
|
|
- [Redis](https://redis.io/open-source/),
|
|
|
|
|
|
- [DragonFly](https://www.dragonflydb.io/),
|
|
|
|
|
|
- [Amazon DynamoDB](https://aws.amazon.com/fr/dynamodb/),
|
|
|
|
|
|
- [KeyDB](https://docs.keydb.dev/),
|
|
|
|
|
|
- [Valkey](https://valkey.io/).
|
|
|
|
|
|
- [Riak KV](https://riak.com/products/riak-kv/index.html)
|
|
|
|
|
|
- [Microsoft Garnet](https://microsoft.github.io/garnet/)
|
|
|
|
|
|
|
|
|
|
|
|
|
2025-10-29 20:32:06 +01:00
|
|
|
|
[VOIR Rediss](docs/redis.md)
|