An introduction to MongoDB

  •        0
  

We aggregate and tag open source projects. We have collections of more than one million projects. Check out the projects section.



MongoDB is the most exciting SQL-free database currently available in the market. The new kid on the block, called MongoDB is a scalable, high-performance, open source, schema free and document oriented database that focuses on the ideas of NoSQL Approach. Written in C++, it has taken rapid strides since its emergence into the public sphere as a popular way to build your database applications.

The origin of MongoDB can be traced back to its original authors at 10gen, who developed MongoDB as a stand-alone product in 2009. With the introduction of MongoDB, the goal is to bridge the gap that exists between a key/value store and a traditional RDBMS. Its conception demanded eliminating the limitations of relational databases by changing the data model from relational to document-based. By doing that, it is able to add greater functionality with features such as, embedded docs for speed and manageability, and easier horizontal scalability as it is non-relational and does not support joins. Since MongoDB uses schema-less databases, it allows agile software development during the Software Development Life Cycle (SDLC). However, it has retained some highly functional features of MySQL as well, such as, indexes, dynamic queries and updates. Creating an index in MySql or Oracle and one in MongoDB is strikingly similar, except that in the case of latter, you have the option of indexing an embedded field.



What makes MongoDB such a great data store?

Document-oriented
The document-oriented nature of MongoDB is its major strength. It uses embedded documents and arrays, therefore multi-document transactions and joins are rarely used, which makes it highly scalable and efficient.

Scalability
Since document oriented architecture of MongoDB comprises of schema-less databases that rarely uses joins for queries, it renders horizontal scalability.

High performance
MongoDB is a high-performance SQL-free database. SQL and other relational database store relational data, for instance, data in table X can have direct relations to information in table Y. Since MongoDB doesn't need this ability, it functions without a lot of overhead, making it really fast. Add to that the fact that it is not yet ACID compliant helps its cause.

On the downside though, there are a few pressing issues which the community around the application need to focus on. The barrier to entry is relatively high when compared to SQL databases, as there is a lack of skillsets around NoSQL and its tools lack robustness of SQL. Also, as it is relatively new, it is hard to find NoSQL talent.

MongoDB is a great application when it comes to handling critical social interactions as in the case of social media network. Although, when you need to manage data where you have to guarantee data integrity, especially when financial transactions are involved, SQL is a far better choice. MongoDB works best with smaller datasets. Companies are using it for their research and data mining activities where the flexibility of MongoDB's document oriented architecture becomes easily evident. However, notwithstanding the downsides, the benefits justify the risks as is proven by its rapid adoption among IT professionals worldwide.

Author: Jiji Thomas works as a content writer for Dataentryoutsourced. He also indulges in blogging, creative writing and photography.

We aggregate and tag open source projects. We have collections of more than one million projects. Check out the projects section.


   




Related Articles

Column database vs OLAP

  • business-intelligence olap column-database

OLAP (Online Analytical Processing), Reporting, Data mining related tasks are usually done by Business intelligence products. They do powerful Extraction, Transformation and Loading (ETL) the data and provides various reports. They use relational database as its back end. How could they generate better reports? Will column DB do a better job?

Read More


Lucene / Solr as NoSQL database

  • lucene solr no-sql nosql document-store

Lucene and Solr are most popular and widely used search engine. It indexes the content and delivers the search result faster. It has all capabilities of NoSQL database. This article describes about its pros and cons.

Read More


Best situation to use Column database

  • column database reporting

Column oriented database or datastore as the name sounds it stores the data by column rather than by row. It has some advantages and disadvantages over traditional RDBMS. Developer should know the typical situation to choose column oriented database.

Read More


LogicalDOC - Open Source DMS

  • dms document-management-system

LogicalDOC is both a document management and a collaboration system. The software is loaded with many functions and allows organizing, indexing, retrieving, controlling and distributing important business documents securely and safely for any organization and individual.

Read More


Advantages and Disadvantages of using Hibernate like ORM libraries

  • database orm

Traditionally Programmers used ODBC, JDBC, ADO etc to access database. Developers need to write SQL queries, process the result set and convert the data in the form of objects (Data model). I think most programmers would typically write a function to convert the object to query and result set to object. To overcome these difficulties, ORM provides a mechanism to directly use objects and interact with the database.

Read More


An introduction to LucidWorks Enterprise Search

  • lucene solr search engine enterprise

Lucidworks Enterprise search solution is built on top of Apache Solr. It scales seamlessly w/sub-second response times under extreme query loads for multi-billion document collections. It has user friendly UI, which does all the job of configuration and search.

Read More


How Bitcoin works? A simple introduction.

Bitcoin is an open source digital currency which could be transferred in a P2P payment network. It is decentralized and it is not controlled by any central authority or banks. It is transferred from person to person and no authority will be aware of your transaction. Its quite different from PayPal or Banks.

Read More


Solr vs Elastic Search

  • full-text-search search-engine lucene solr elastic-search

Solr and Elastic Search are built on top of Lucene. Both are open source and both have extra features which makes programmer life easy. This article explains the difference and the best situation to choose between them.

Read More


Whats new in Lucene / Solr 4.0

  • lucene solr new-release

The release 4.0 is one of the important milestone for Lucene and Solr. It has lot of new features and performance important. Few important ones are highliggted in this article.

Read More


LucidWorks Vs SearchBlox - Enterprise Search Solution

  • lucene solr searchblox lucidworks enterprise-search

Enterprise search software should be capable to search the data available in the entire organization or personnel desktop. The data could be in File system, Web or in Database. It should search contents of Emails, file formats like doc, xls, ppt, pdf and lot more. There are many commercial products available but LucidWorks and SearchBlox are best and free.

Read More


How to learn from open source projects

  • open-source learning methodology

Students ask this question frequently steps or methodology to learn from open source projects. There is no single answer or steps available. I listed the steps which i follow and i hope this will help for few.

Read More


Why require Searchengine? Why not use database for full text search in Enterprise application.

  • searchengine database

Most of the database has support of full text search, basically indexing and saarching. MySQL, Oracle and many more databases has in-built full text search. Then what is the need to go for external search engine like Lucene, Sphinx, Solr etc. Check out the advantage of using Searchengine.

Read More


8 Best Open Source Searchengines built on top of Lucene

  • lucene solr searchengine elasticsearch

Lucene is most powerful and widely used Search engine. Here is the list of 7 search engines which is built on top of Lucene. You could imagine how powerful they are.

Read More


Should web application store images in Database or File system?

  • database image-store filesystem

Web developers most frequent question, Should user images be stored in database or file system? Which is the best way. Both has some pros and cons.

Read More


Is ZooKeeper mandatory for Cloud

  • zookeeper distributed cloud

Cloud is nothing but more than one system or application distributed across the network, across the globe. It may have couple of application servers, database server, shared data storage, backup server and lot more. The resources in the distributed environment must have information about each other so that they could co-ordinate and share without any issues. ZooKeeper helps to do that.

Read More


Git vs Subversion

  • version-control subversion git

Git and Subversion are most popular and widely used version control system. What is the best situation to choose them? It is important to know its pros and cons, evaluate your requirement and choose the right one.

Read More


Google Open Source Pledge

  • google open-source patent

Open Source is the way to innovate and users using it should have complete freedom. Google has came forward to declare couple of its patents on Map Reduce under Open Patent Non-Assertion Pledge (OPN Pledge). There are multiple variants of open source license and using that means the product is completely free. Why OPN Pledge is required?

Read More


Lucene Vs Solr

  • searchengine lucene solr

Lucene is a search library built in Java. Solr is a web application built on top of Lucene. Certainly Solr = Lucene + Added features. Often there would a question, when to choose Solr and when to choose Lucene.

Read More


Why Elastic Search is gaining more popularity than Solr?

  • solr elastic-search search-engine

Solr and Elastic Search both are built on top of Lucene library. Both are compratively equal. Any new feature / enhancement which get introduced in Lucene, will also get added to Solr. But still Elastic Search which uses Lucene as it core gained more popularity than Solr in recent years.

Read More


How to create SEO friendly url

  • seo url searchengine

SEO friendly URL is recommended for any website which wants to be indexed and wants its presence in search results. Searchengine mostly index the static URL. It will avoid the URL which has lot of query strings. Almost all websites generate content dynamically then how could the URL be static. That is the job of the programmer.

Read More