Un magasin de valeurs-clés fournit le modèle de données le plus simple possible et correspond exactement à ce que son nom suggère :c'est un système de stockage qui stocke des valeurs indexées par une clé. Vous êtes limité à la requête par clé et les valeurs sont opaques , le magasin ne sait rien à propos d'eux. Cela permet des opérations de lecture et d'écriture très rapides (un simple accès disque) et je vois ce modèle comme une sorte de cache non volatile (c'est-à-dire bien adapté si vous avez besoin d'accès rapides par clé à des données à longue durée de vie).
Une base de données orientée documents étend le modèle précédent et les valeurs sont stockées dans un fichier structuré format (un document, d'où le nom) que la base de données peut comprendre. Par exemple, un document peut être un article de blog et les commentaires et les balises stockées de manière dénormalisée. Étant donné que les données sont transparentes , le magasin peut faire plus de travail (comme l'indexation des champs du document) et vous n'êtes pas limité à la requête par clé. Comme je l'ai laissé entendre, de telles bases de données permettent de récupérer les données d'une page entière avec une seule requête et sont bien adaptées aux applications orientées contenu (c'est pourquoi les grands sites comme Facebook ou Amazon les aiment).
Les autres types de bases de données NoSQL incluent les magasins orientés colonnes , bases de données de graphes et même des bases de données d'objets . Mais cela va au-delà de la question.