Showing posts with label scalabilty. Show all posts
Showing posts with label scalabilty. Show all posts

Friday, September 5, 2014

Introduction to MongoDB

     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.