NoSQL describes non-relational data stores that break using the good reputation for relational databases and Acidity guarantees. Popular free NoSQL data stores include:

  • Cassandra (tabular, designed in Java, utilized by 'cisco' WebEx, Digg, Facebook, IBM, Mahalo, Rackspace, Reddit and Twitter)
  • CouchDB (document, designed in Erlang, utilized by BBC and Engine Yard)
  • Dynomite (key-value, designed in Erlang, utilized by Powerset)
  • HBase (key-value, designed in Java, utilized by Bing)
  • Hypertable (tabular, designed in C++, utilized by Baidu)
  • Kai (key-value, designed in Erlang)
  • MemcacheDB (key-value, designed in C, utilized by Reddit)
  • MongoDB (document, designed in C++, utilized by Ea, Github, NY Occasions and Sourceforge)
  • Neo4j (graph, designed in Java, utilized by some Swedish colleges)
  • Project Voldemort (key-value, designed in Java, utilized by LinkedIn)
  • Redis (key-value, designed in C, utilized by Craig's list, Engine Yard and Github)
  • Riak (key-value, designed in Erlang, utilized by Comcast and Mochi Media)
  • Ringo (key-value, designed in Erlang, utilized by Nokia)
  • Scalaris (key-value, designed in Erlang, utilized by OnScale)
  • Terrastore (document, designed in Java)
  • ThruDB (document, designed in C++, utilized by JunkDepot.com)
  • Tokyo, japan Cabinet/Tokyo, japan Tyrant (key-value, designed in C, utilized by Mixi.jp (Japanese social media site))

Let me learn about specific problems you - the SO readers - have solved using data stores and what NoSQL data store you used.

Questions:

  • What scalability problems perhaps you have used NoSQL data stores to resolve?
  • What NoSQL data store have you use?
  • What database have you use just before switching to some NoSQL data store?

I am searching for first-hands encounters, so please not answer unless of course you've that.