Showing posts with label 10gen. Show all posts
Showing posts with label 10gen. Show all posts

Tuesday, March 31, 2015

MongoDB find() and findOne() methods



     In  MongoDB CRUD operation find() and findOne() methods are used to read a documents from the collections. Lets study this methods with example. 

1. find() : 
                  The most basic operation to query documents out of the database is called find(). MongoDB find() method returns all documents present in the database.
 For example, Here I have student database and collection name is grades which has 800 documents. After executing this query it returns first 10 documents and it ask for next 10 documents. If you want more documents type "it" next 10 documents will get display.

    find() method can take some arguments. You can filter result by adding search criteria. For example in "grades" collection there are "homework","quiz" and "exam " type of documents. If I want only "exam" type . The query will be db.grades.find({''type'' :''exam''}).




       We can also add multiple fields in criteria but both the criteria should match. Like here I have selected students with type :exam and you can also include and exclude fields if you want by making field name true or false, here I excluded object id field.





  2. findOne():

 This method also retrieves the data but it returns only one document at a time. Lets see following example fineOne() without argument returns very first document from the collection.



  We can also add criteria in findOne() method like find() method. In following example only document with the "student_id" : 112 is return as specified in criteria.




         









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.