NoSQL Benchmarks NoSQL use cases NoSQL Videos NoSQL Hybrid Solutions NoSQL Presentations Big Data Hadoop MapReduce Pig Hive Flume Oozie Sqoop HDFS ZooKeeper Cascading Cascalog BigTable Cassandra HBase Hypertable Couchbase CouchDB MongoDB OrientDB RavenDB Jackrabbit Terrastore Amazon DynamoDB Redis Riak Project Voldemort Tokyo Cabinet Kyoto Cabinet memcached Amazon SimpleDB Datomic MemcacheDB M/DB GT.M Amazon Dynamo Dynomite Mnesia Yahoo! PNUTS/Sherpa Neo4j InfoGrid Sones GraphDB InfiniteGraph AllegroGraph MarkLogic Clustrix CouchDB Case Studies MongoDB Case Studies NoSQL at Adobe NoSQL at Facebook NoSQL at Twitter



Presentation: NoSQL, Riak and CouchDB: A Very Interesting Association

Mårten Gustafson’s (@martengustafson) slides focus on Riak and CouchDB after a quick intro to the NoSQL ecosystem. I find this association very interesting, but you’ll have to read on to find out why.

Some notes:


  • decentralized key-value store
  • a flexible map/reduce engine
  • HTTP/JSON API (note: the upcoming version will also support a Protocol Buffers client and API)
  • a database ideally suited for Web applications

Riak “stuff”

Riak - Takeaways

  • No single point of failure
  • Choose your levels for:
    • availability
    • consistency
    • partition tolerance

Before jumping to the CouchDB section, I should remind you of Kevin Smith’s introduction to Riak presentation.


  • document oriented database
  • Kick ass replication
  • Map/reduce view (index) definitions

CouchDB “stuff”

CouchDB - Takeaways

  • Kick ass replication
  • Views are fast
  • Can host and serve complete webapps

If you don’t think this is enough, you can also check Will Leinweber’s Relaxing with CouchDB video

I don’t know if this association between CouchDB and Riak was intentional or not, but personally I find it extremely interesting. Getting started with CouchDB should be quite simple and it will probably take you far. Once your application will need more scalability changing to Riak should be also quite simple and that not only due to their friendly HTTP/JSON protocol, but to quite a few similarities of these two products. That’s not to say that Riak and CouchDB don’t have unique features that you’ll probably miss while moving from one to another — for example you’ll need to rework a bit your map/reduce functions.

And now I’ll leave you with the slidedeck: