The Pros and Cons of MongoDB

By on

by Angela Guess

Barry Devlin recently discussed some of the pros and cons of MongoDB. He starts his article with an introduction MongoDB and NoSQL databases in general: “NoSQL stores come in a half a dozen generic classes, and MongoDB is in the class of “document stores” along with tools such as Apache’s CouchDB and Terrastore. Documents? If you’re confused, you are not alone. In this context, we don’t mean textual documents used by humans, but rather use the word in a programming sense as a collection of data items stored together for convenience and ease of processing, generally without a predefined schema. From a database point of view, such a document is rather like the pre-First Normal Form set of data fields that users present to you as what they need in their application.”

Devlin continues, “Two characteristics–the lack of a predefined schema and the absence of joins–are very attractive in certain situations, and these turn out to be key
design points for MongoDB. The lack of a schema makes it very easy to add new data fields to an existing database without having to reload the old data; so if you are in an emerging industry or application space, especially where data volumes are large, this is very attractive. The absence of joins also plays well for large data volumes; if you have to shard your data over multiple servers, joins can be very expensive. So, MongoDB, like most NoSQL tools, play strongly in the Web space with companies needing fact processing of large volumes of data with emergent processing needs.”

He goes on, “As always, there are pros and cons. Avoiding storing and maintaining a second copy of large volumes of data is always a good thing. And if the analysis doesn’t
require joining with data from another source, using the original source data can be advantageous. There are always questions about performance impacts on the operational source, and sometimes security implications as well. However, the main question is around the types of query possible against a NoSQL store in general or a document-oriented database in this case. It is generally accepted that normalizing data in a relational database leads to a more query-neutral structure, allowing a wider variety of queries to be handled.”

Read more here.

photo credit: MongoDB

Leave a Reply

We use technologies such as cookies to understand how you use our site and to provide a better user experience. This includes personalizing content, using analytics and improving site operations. We may share your information about your use of our site with third parties in accordance with our Privacy Policy. You can change your cookie settings as described here at any time, but parts of our site may not function correctly without them. By continuing to use our site, you agree that we can save cookies on your device, unless you have disabled cookies.
I Accept