Вы находитесь на странице: 1из 21

Mongo DB ( Most Popular Open Source NoSQL Database )

Session by Tejas Suthar for Tatvasoft Pvt. Ltd.


Session: Part 1 of 2
Before We Start



This is just a Knowledge Sharing session
Everyone is allowed to ask / raise questions if you have any queries / concerns / doubts.
I will try to answer as much as I can.




Important
Its most important to Learn More About
1. History How its been implemented / evolved?
2. Popularity How popular it is at the moment in its domain (NoSQL Market)?
3. Future Aspects How far it can go?
Mongo DB : History
Founded by 10gen (now MongoDB Inc.) - Initially developed for Platform as a service (PAAS), later in
2009 company shifted to opensource model providing commercial support as well.
Month / Year founded: October 2007
From version 1.4 (March 2010) onward, MongoDB has been considered production ready. The latest
stable version, 2.6, was released on April 8, 2014.
Mongo DB: Popularity
According to db-engines.com, in April 2014, MongoDB is in 5th place as the most popular type of
database management system, and first place for NoSQL database management systems.







Source: http://db-engines.com/en/ranking
Mongo DB : Trend & Future Analysis
Source: http://www.google.co.in/trends
Mongo DB : Why is it very important to Learn?
Because, its popular and has a great market value in Document oriented Databases.
Proven trek record for High Traffic Performance
Large set of Advanced Features Replication, Sharding, Indexing, Map-Reduce, Ad-hoc queries
Flexible document structure, Schema less, very high IO performance
Trusted by large companies like eBay, Forbes, The NewYork Times, forsquare
Increasing user base ( In turn good community support, easy to use and get help / support )
Increasing trend and popularity, and it will be in huge demand over 5 years of span and it will provide
more opportunities for projects to come. ( We will see trend analysis on later slides )
With time progress, it is going to be in huge demand same as other next gen cutting edge technology
along with Angular JS, Node JS, HTML 5, Sass, Compass etc.
So Just basic understanding of this database is necessary, when project comes we just need to start
working on it instead of start working at that time.









MongoDB is available for free under the GNU Affero General Public License.
The language drivers are available under an Apache License.
In addition, MongoDB Inc. offers commercial licenses for MongoDB.
Mongo DB : Licensing & Support
Mongo DB : About

MongoDB (from "humongous") is a cross-platform document-oriented database system.
Classified as a NoSQL (Not Only SQL) database.
Has JSON-like documents with dynamic schemas known as BSON (Binary JSON)
Major Companies Using MongoDB: eBay, Foursquare, SourceForge, NewYorkTimes, SAP, Forbes, The
Guardian, Codecademy, Craigslist, MetLife


Mongo DB : Main Features - Advanced
Ad hoc queries
Indexing
Replication
Load balancing
File storage
Aggregation ( Map-reduce )
Server-side JavaScript Execution
Capped collections
What is Document?
Document is same as single record in MySQL
What is collection?
Collection is same as Table in MySQL
Insert Document in Collection

Same as Insert Record in Table in MySQL









Find Query in MongoDB
Mongo DB: Criticisms / Limitations
1. Limited Support of UTF-8 encoding
Very limited support for sorting on UTF-8 encoded string data
Which is a substantial problem when storing non-English text.
Specifically, MongoDB currently uses the memcmp function when sorting strings, which doesn't correctly handle
UTF-8 data under different locales.
2. Read Write Concern
MongoDB uses a readers-writer lock that allows concurrent read access to a database but exclusive write access
to a single write operation.
So at a particular time only one thread can have access to Write into Db while other threads have read access to
DB.
Mongo DB : Language Support


Official drivers for a variety of popular programming languages and development environments
C, C#, Go, PHP, Java, Node.js, Python, Ruby and many more.
A complete list of supported drivers for Mongo DB is available at
http://docs.mongodb.org/ecosystem/drivers/




Management & Graphical Front Ends - Robomongo

Robomongo: Most popular open source database management tool available as Windows, Linux & Mac
installer)








Management & graphical Interface - Rockmongo
Rockmongo: Web based interface for MongoDB database management same as phpMyAdmin in
MySQL







Management & Graphical Interface Db Backup
Mongoimport, Mongoexport: A command line utility to import content from JSON, CSV to to export
data from mongo database.
Many other interesting tools available to explore more features like mongo, mongostat, mongotop,
mongosniff, mongodump, mongorestore
A more detailed list of administration interfaces available here:
http://docs.mongodb.org/ecosystem/tools/administration-interfaces/#admin-uis
http://mongodb-tools.com/


MongoDB Resources
MongoDB documentation: http://docs.mongodb.org/manual/
Database Download: http://www.mongodb.org/
Robomongo: http://robomongo.org/
Rockmongo: http://rockmongo.com/
Community Support: http://www.mongodb.org/about/community/
Blog: http://blog.mongodb.org/
Mailing List: http://groups.google.com/group/mongodb-announce
MongoDB events page: http://www.10gen.com/events
Stackoverflow Tag: http://stackoverflow.com/questions/tagged/mongodb
IRC node: freenode.net#mongodb

QUESTIONS?

Вам также может понравиться