imperativo: ridurre la complessità - MongoDB trades availability for consistency, whereas CouchDB trades consistency for availability.
sono due storage "special purpose", ovvero molto adatti per determinati tipi di progetti e poco adatti per altri.
"evita la conversione dalle strutture dati usate nell'appllicativo e quelle immagazzinate nella base dati relazionale"
progettato per recuperare grandi quantità di dati da estrarre successivamente(aggregazioni) e processare con altri strumenti come MySQL, che ha strumenti più facili per le ricerche "the database you store the incoming signals in is called an OLTP (for on-line transactional processing) and the database you store the aggregates in is called OLAP (for on-line analytical processing). OLTP you want something that is quick at inserting data, but also something that supports indexing the data and searching for things. The aggregation is greatly helped by a database that does half the work of summing and finding maximums and minimums. For OLAP something much simpler works, a key-value store is all you need. I use Redis because it too is very easy to work with and to set up. It also lets you store more than scalar values, which is convenient. Sometimes your value is actually a list, or a hash, in most key-value stores you have to encode such values, but Redis handles it natively. The downside of Redis is that you can't do queries ("as in give me all rows that has this value for Y"), you have to keep indices to your data yourself."
interessante la funzionalità GeoSpatial
CouchDB trades disk space for performance
un'interfaccia a strutture dati e operazioni sui dati
applications:
esistono valori associati a chiavi di tipo stringa, lista o hash, ma anche insiemi, insiemi ordinati.
Redis seems to be taking around twice as much memory as MongoDB takes. Redis performance comes at the prices of increased memory footprint.
This can be an important data point in choosing between MongoDB and Redis – MongoDB might be preferrable for users who care about reducing their memory costs.
Generally Redis is 10-30% faster when the data set fits within working memory of a single machine. Once that amount of data is exceeded, Redis fails. Mongo will slow down at an amount which depends on the type of load.
Cassandra è lo storage, Hadoop è il data mining engine, sono complessi e sviluppati per enormi basi dati e complessità.