informatique , un cache distribué est une extension du concept traditionnel de cache utilisé dans un seul environnement . Un cache distribué peut s'étendre sur plusieurs serveurs, ce qui lui permet d'augmenter sa taille et sa capacité transactionnelle. Il est principalement utilisé pour stocker les données d'application résidant dans une base de données et les données de session web . L'idée de la mise en cache distribuée est devenue réalisable grâce à la baisse significative du coût de la mémoire vive et à l'augmentation considérable des débits des cartes réseau , le 1 Gbit/s étant désormais la norme et le 10 Gbit/s gagnant en popularité. De plus, un cache distribué fonctionne efficacement sur des machines moins coûteuses, généralement utilisées pour les serveurs web , contrairement aux serveurs de bases de données qui nécessitent du matériel onéreux. L'architecture Internet émergente appelée ICN ( Information-centric Networking ) est un excellent exemple de réseau de cache distribué. L'ICN étant une solution au niveau réseau, les schémas de gestion de cache réseau distribué existants ne sont pas adaptés à l'ICN. Dans un environnement de supercalculateur , le cache distribué est généralement implémenté sous la forme d' un tampon de rafale .
Dans la mise en cache distribuée, chaque clé de cache est attribuée à un fragment (ou partition) spécifique. Il existe différentes stratégies de partitionnement :
- Partitionnement de modules
- Partitionnement basé sur la portée
- Le hachage cohérent répartit uniformément les clés de cache entre les fragments, même si certains fragments tombent en panne ou deviennent indisponibles.