MongoDB is
new generation document oriented NoSQL database. It is open source product and
developed and supported by company 10gen (Now Mongo Inc.). MongoDB is available
under GNU Affero General Public License and Apache License. 10gen created
MongoDB in 2007 and its first product release was MongoDB 1.4 in 2009.
Its
definition given by 10gen:- “MongoDB is a scalable, open source, high
performance, document oriented database.”
MongoDB
is most popular document oriented NoSQL databases now days. To know
more about NoSQL database and its categories read my previous blogs.
MongoDB
is adopted by many mejor companies including eBay, The New York Times, CERN,
SAP, MetLife, MTV, Forbes, Sourceforge, Codecademy, Shutterfly, Foursquare
and more.
MongoDB provides following features:-
- Ad hoc queries:- It supports search by field and regular expression search.
- Indexing:- Any field in mongodb can be indexed.
- Replication:- Supports master-slave replication. A master can perform read-write and a slave copies data from the master and can only be used for read or backup.
- Duplication of data:-Data duplication to keep the system up and running in case of hardware failure.
- Scalability:- New machines can be added to run a database.
- Automatic Load Balancing:- Data is split into range and shared across multiple nodes.
- File storage:- Could be used as a file system taking advantage of load balancing and data replication.
- Aggregation:-MapReduce is available. Offers similar functionality as SQL GROUP by clause.
- JavaScript execution:-Can use JavaScript functions.
- Special support for location:- Understands longitude and latitude.