Tuesday, November 6, 2012

Leaving MongoDB in favour of {Riak & PostgreSQL}. A real feedback from Kiip.

MongoDB is definitely a great NoSQL solution, very popular, but its mission is also clearly defined, where it's the choice and where it's not. Kiip has shared their opinion and the whole story about why they moved to {Riak & PostgreSQL partly} after a year running MongoDB in production (A Year with MongoDB). So, it's not that it was a kind of a total failure, no. The basic factors've been listed, let's summarize them briefly - both cons and pros about Mongo, based on the actual experience.

The Good

  • Schemaless 
  • Simple replication
  • Query Language
  • Full-featured Drivers for Many Languages

The Bad

  • Non-counting B-Trees
  • Poor Memory Management
  • Uncompressed field names
  • Global write lock
  • Safe off by default
  • Offline table compaction
  • Secondaries do not keep hot data in RAM

Thanks Kiip, valuable details to be considered for decisions making yet on the early stages.