Um armazenamento de valores-chave fornece o modelo de dados mais simples possível e é exatamente o que o nome sugere:é um sistema de armazenamento que armazena valores indexados por uma chave. Você está limitado a consultar por chave e os valores são opacos , a loja não sabe nada sobre eles. Isso permite operações de leitura e gravação muito rápidas (um acesso simples ao disco) e vejo esse modelo como um tipo de cache não volátil (ou seja, adequado se você precisar de acessos rápidos por chave a dados de longa duração).
Um banco de dados orientado a documentos estende o modelo anterior e os valores são armazenados em um estruturado formato (um documento, daí o nome) que o banco de dados pode entender. Por exemplo, um documento pode ser uma postagem de blog e os comentários e as tags armazenadas de forma desnormalizada. Como os dados são transparentes , a loja pode fazer mais trabalho (como campos de indexação do documento) e você não está limitado a consultar por chave. Como sugeri, esses bancos de dados permitem buscar os dados de uma página inteira com uma única consulta e são adequados para aplicativos orientados a conteúdo (e é por isso que grandes sites como Facebook ou Amazon gostam deles).
Outros tipos de bancos de dados NoSQL incluem armazenamentos orientados a colunas , bancos de dados gráficos e até mesmo bancos de dados de objetos . Mas isso vai além da questão.