Accelerate delivery with this general purpose NoSQL engine
January 03, 2017

Accelerate delivery with this general purpose NoSQL engine

Anonymous | TrustRadius Reviewer
Score 9 out of 10
Vetted Review
Verified User

Overall Satisfaction with MongoDB

MongoDB is used across the whole organization in several use cases. There are use cases which are utilizing the technology, for high-throughput, or high data volume on a level which may not be economical with different technologies, and there are others, which only would like to leverage the fast development cycle made possible by the dynamic-schema design.
  • High data volume low latency access.
  • Rich indexing and querying capabilities
  • Enterprise grade tooling. (Ops Manager, advanced Security)
  • There is no cross-cluster replication of any kind. That would be very useful in many cases, like disaster recovery or test data delivery to pre-production validation.
  • There is no multi-document transaction capability. This could be accepted with limitations like a transaction only on 1 shard.
  • Most of the tooling is closed source, and tends to be a bit buggy.
  • Linear scaling is very powerful, one does not need to re-architect the database all the time hiting physical capability limits.
  • Simple HW architecture can be utilized no need for special network, or storage components.
  • Tooling nowdays, is very powerful through ops manager, and compass one can manage mongodb without touching command line.
  • Very hard to find knowledgeable people especially in Europe.
Cassandra: may be better for bigger use cases, in PB range, due to our use cases being slightly smaller, we did not need this, but we highly rely on efficient indexing, and low latency, which seemed to be better based on our testing in Mongodb.
Couchbase Server: Document features are not mature yet enough, and they are not/may not the main focus of the solution, so in some of our use cases, where advanced querying and indexes were necessary, we found MongoDB a better fit.
Hadoop: very powerful for batch operations, but not really good for OLTP like functions, the realtime capabilities are not the main focus, so Mongodb performs better and more economical in such use-cases.
MongoDB is very well suited for use cases where the data volume and the throughput are higher than a traditional RDBMS could sustain, without the need for complex transactions. You can scale a single cluster to tens of TBs still maintaining low latency access. For thousands of concurrent requests, it is better suited for small short living requests, even with a large update volume. It is not a very good fit alone for analytical applications, as there are no QoS settings available and broken queries are not always recoverable or interruptable. Together with SPARK, for example, it can be a perfect solution.