NoSQL è termine usato per Non Solo SQL, che copre quattro principali categorie - valore-chiave, Documento, famiglia Colonna e di database del grafico.
I database a valore chiave sono adatti per le applicazioni che hanno frequenti piccole letture e scritture e semplici modelli di dati. Questi record vengono archiviati e recuperati utilizzando una chiave che identifica in modo univoco il record e viene utilizzato per trovare rapidamente i dati all'interno del database.
ad es. Redis, Riak ecc.
Banche Dati hanno la capacità di memorizzare gli attributi diversi con grandi quantità di dati
esempio MongoDB, CouchDB ecc
Colonna famiglia database sono progettati per grandi volumi di dati, leggere e scrivere le prestazioni e alta disponibilità
ad esempio Cassandra, HBase ecc
Il database è un database che utilizza le strutture del grafico per query semantiche con nodi, spigoli e proprietà per rappresentare e memorizzare i dati
es Neo4j, InfiniteGraph ecc
Prima di capire NoSQL, devi capire alcuni concetti chiave.
Coerenza - Tutti i server nel sistema avranno gli stessi dati in modo che chiunque utilizzi il sistema otterrà la stessa copia indipendentemente dal server che risponde alla richiesta.
Disponibilità - Il sistema risponderà sempre a una richiesta (anche se non sono i dati più recenti o coerenti nel sistema o solo un messaggio che dice che il sistema non funziona).
Tolleranza partizione - Il sistema continua a funzionare nel suo complesso anche se singoli server non funzionano o non possono essere raggiunti.
Nella maggior parte dei casi, solo due di queste tre proprietà vengono soddisfatte dai database NoSQL.
Dalla tua domanda,
CouchDB: AP (disponibilità & partizione) del database & documento
Cassandra: AP (disponibilità & partizione) del database famiglia & Colonna
MongoDB: CP (Consistenza & partizione) del database & documento
Vertica: CA (Consistenza & disponibilità) database di famiglia & Colonna
MonetDB: ACID (Atomicità Consistenza Isolamento Durabilità) & Database relazionale
Da: http://blog.nahurst.com/visual-guide-to-nosql-systems
Date un'occhiata a questo article1, article2 e ppt per diversi scenari di selezionare un particolare tipo di database.
Distingue due tipi di negozi di colonne: http://dbmsmusings.blogspot.com/2010/03/distinguishing-two-major-types-of_29.html – tuinstoel
Is Structured (columnar) vs Non-structured/Semi-structured (NoSQL). Pensala in questo modo. –