SlideShare ist ein Scribd-Unternehmen logo
1 von 16
MongoDB 101
Session I Topics
• What is MongoDb?
• Introduction to JSON
• MongoDb Relative to Relational
• Setting up MongoDb on Windows
• Firing up the mongo shell
• Setting up RoboMongo
• Schema? What Schema?
What is MongoDB?
Non Relational
JSON
Document Store
MongoDB is a
Key features of MongoDB
Flexibility
stores data in JSON which
seamlessly maps to
programming languages.
Dynamic schema makes it
easier for your data model
to evolve.
Power
Secondary indexes,
dynamic queries, sorting,
rich updates, upserts
(update if document exists,
insert if doesn’t)
Functionality of RDBMS+
Horizontal scaling of
NRDBMS
Speed/Scaling
Queries are faster due to
non-relational data.
Autosharding allows scaling
your cluster linearly by
adding more machines.
Ease of Use
Easy to install, configure, maintain, and use.
Works right out of the box and you can dive right into app development
Why JSON?
JSONis open, human and machine-readable standard
Supports all basic datatypes: numbers, strings, boolean values, arrays
and hashes
No need for a fixed schema. Just add what you want.
Format is programmer friendly. Unlike you know… XML!
MongoDB uses BSON behind the scenes which is an extended format
for JSON
MongoDB reuses a Javascript engine for their queries. Makes complete
sense in the world to re-use JSON for object representation.
JSON Basics
Light weight, text-based open source standard for data interchange.
Based on a subset of Javascript
Fundamental structure of JSON
Collection of Key-
Value pairs
Array/List of items
{
“name”: “Abhijeet Vaikar”,
“designation”: “PA”,
“age”: 25
}
[“json”, “xml”, “bson”, “bxml”]
JSON Basics
var myArray = [ "John Doe",
29, true, null ];
var myArray2 = [
{ “name”: “John Doe”,
“age”:29},
{ “name”: “Anna Smith”, “age”:
24}
];
Try in console:
myArray[2] – true
myArray2[1].name – Anna Smith
More Arrays: More Objects:
var objectWithNestedArray = {
“name”: “John Doe”,
“interests”:[“Reading”,
“Mountain Biking”, “Hacking”]
};
var objectWithNestedObject =
{
“favorites” : {
“color” : “blue”,
“sport” : “Soccer”
}
};
Try in console:
objectWithNestedArray.interest
s[0] – Reading
objectWithNestedObject.favorit
es.color - blue
JSON Basics Demo
JSON Basics
JSON Specification link: www.json.org
Validate your JSON : www.jsonlint.com
Prettify/Format your JSON: www.jsonprettyprint.com
MongoDB documents
All data in MongoDB is stored as documents (JSON style data structures ).
A collection contains many documents.
Format: Data is stored on disk in BSON (Binary JSON) serialization format.
Document example:
{
_id: ObjectId("5099803df3f4948bd2f98391"),
name: { first: "Alan", last: "Turing" },
birth: new Date('Jun 23, 1912'),
death: new Date('Jun 07, 1954'),
contribs: [ "Turing machine", "Turing test", "Turingery" ]
}
Fields: Fields in a document cannot:
• Start with the dollar ( $ )character
• Contain the dot ( . ) character
• Contain the null character
Maximum document size is 16 megabytes.
Document fields order is maintained following write operations except for _id field
which will always be first.
MongoDB Relative to Relational
Depth of Functionality
Scalability&Performance
Memcached
Key Value stores
MongoDB
SQL Server / MySQL
Where does MongoDB fit?
Setting up MongoDB on Windows
1. Determine if your system is 32-bit / 64-bit and download and execute the setup
from http://www.mongodb.org/downloads. Follow the default steps.
2. Your setup will install mongodb in path C:Program FilesMongoDB 2.x Standard
3. Set environment variables for mongo and mongod processes for convenience
(optional)
4. Configure mongodb to set your data directory using the following command:
mongod.exe --dbpath d:testmongodbdata
5. Start command prompt and trigger mongo executable. You should see:
MongoDB shell version: 2.6.x
connecting to: test
6. Perform the following query for checking out if all is good:
db.poetry.insert({“name” : “Ba Ba Black Sheep”}); //Hit enter
db.poetry.find() //Hit enter
Setting up MongoDB on Windows
If you get the following output:
{
"_id" : ObjectId("542254b633fc68d796ef1867"),
"name" : "Ba Ba Black Sheep"
}
Then you can go like this:
Mongo Shell +
RoboMongo Demo
Schema? What Schema?
Data in MongoDB is schema less. Data model of a document can be modified as
needed.
Helps agile developers! 
{
“_id” : 0,
“height”: 480,
“width”:640,
“tags”: [
“dogs”, “work”
]
}
Document 1
{
“_id” : 1,
“name” : “Birthday”,
“height”: 450,
“width”:640,
“tags”: [
“baby”, “happy”
]
}
Document 2
{
“_id” : 2,
“name” : “Party”,
“height”: 480,
“width”:640,
“tags”: [
“office”, “party”
],
“rating”: 3
}
Document 3
Schemaless data
Demo

Weitere ähnliche Inhalte

Was ist angesagt?

Intro To Mongo Db
Intro To Mongo DbIntro To Mongo Db
Intro To Mongo Db
chriskite
 
Mongodb introduction and_internal(simple)
Mongodb introduction and_internal(simple)Mongodb introduction and_internal(simple)
Mongodb introduction and_internal(simple)
Kai Zhao
 

Was ist angesagt? (20)

Mongodb basics and architecture
Mongodb basics and architectureMongodb basics and architecture
Mongodb basics and architecture
 
Intro To Mongo Db
Intro To Mongo DbIntro To Mongo Db
Intro To Mongo Db
 
Mongo DB 102
Mongo DB 102Mongo DB 102
Mongo DB 102
 
Mongo DB Presentation
Mongo DB PresentationMongo DB Presentation
Mongo DB Presentation
 
Mongodb
MongodbMongodb
Mongodb
 
Introduction to MongoDB
Introduction to MongoDBIntroduction to MongoDB
Introduction to MongoDB
 
Indexing with MongoDB
Indexing with MongoDBIndexing with MongoDB
Indexing with MongoDB
 
Introduction to MongoDB
Introduction to MongoDBIntroduction to MongoDB
Introduction to MongoDB
 
Mongodb introduction and_internal(simple)
Mongodb introduction and_internal(simple)Mongodb introduction and_internal(simple)
Mongodb introduction and_internal(simple)
 
Mongo DB: Fundamentals & Basics/ An Overview of MongoDB/ Mongo DB tutorials
Mongo DB: Fundamentals & Basics/ An Overview of MongoDB/ Mongo DB tutorialsMongo DB: Fundamentals & Basics/ An Overview of MongoDB/ Mongo DB tutorials
Mongo DB: Fundamentals & Basics/ An Overview of MongoDB/ Mongo DB tutorials
 
Python and MongoDB
Python and MongoDB Python and MongoDB
Python and MongoDB
 
Intro To MongoDB
Intro To MongoDBIntro To MongoDB
Intro To MongoDB
 
MongodB Internals
MongodB InternalsMongodB Internals
MongodB Internals
 
Introduction to MongoDB
Introduction to MongoDBIntroduction to MongoDB
Introduction to MongoDB
 
MongoDB presentation
MongoDB presentationMongoDB presentation
MongoDB presentation
 
Introduction to MongoDB
Introduction to MongoDBIntroduction to MongoDB
Introduction to MongoDB
 
MongoDB Fundamentals
MongoDB FundamentalsMongoDB Fundamentals
MongoDB Fundamentals
 
Mongodb vs mysql
Mongodb vs mysqlMongodb vs mysql
Mongodb vs mysql
 
MongoDB World 2019: Fast Machine Learning Development with MongoDB
MongoDB World 2019: Fast Machine Learning Development with MongoDBMongoDB World 2019: Fast Machine Learning Development with MongoDB
MongoDB World 2019: Fast Machine Learning Development with MongoDB
 
Non Relational Databases
Non Relational DatabasesNon Relational Databases
Non Relational Databases
 

Andere mochten auch

Building Applications using MongoDB, Node.js and Socket.io
Building Applications using MongoDB, Node.js and Socket.ioBuilding Applications using MongoDB, Node.js and Socket.io
Building Applications using MongoDB, Node.js and Socket.io
MongoDB
 
OSCON 2012 MongoDB Tutorial
OSCON 2012 MongoDB TutorialOSCON 2012 MongoDB Tutorial
OSCON 2012 MongoDB Tutorial
Steven Francia
 

Andere mochten auch (12)

Building Applications using MongoDB, Node.js and Socket.io
Building Applications using MongoDB, Node.js and Socket.ioBuilding Applications using MongoDB, Node.js and Socket.io
Building Applications using MongoDB, Node.js and Socket.io
 
Ops Jumpstart: MongoDB Administration 101
Ops Jumpstart: MongoDB Administration 101Ops Jumpstart: MongoDB Administration 101
Ops Jumpstart: MongoDB Administration 101
 
MongoDB Administration ~ Kevin Hanson
MongoDB Administration ~ Kevin HansonMongoDB Administration ~ Kevin Hanson
MongoDB Administration ~ Kevin Hanson
 
Upgrading Mobile Tester's Weapons with Advanced Debugging
Upgrading Mobile Tester's Weapons with Advanced DebuggingUpgrading Mobile Tester's Weapons with Advanced Debugging
Upgrading Mobile Tester's Weapons with Advanced Debugging
 
SpringPeople Introduction to MongoDB Administration
SpringPeople Introduction to MongoDB AdministrationSpringPeople Introduction to MongoDB Administration
SpringPeople Introduction to MongoDB Administration
 
MongoDB Administration 101
MongoDB Administration 101MongoDB Administration 101
MongoDB Administration 101
 
OSCON 2012 MongoDB Tutorial
OSCON 2012 MongoDB TutorialOSCON 2012 MongoDB Tutorial
OSCON 2012 MongoDB Tutorial
 
The Rest Architectural Style
The Rest Architectural StyleThe Rest Architectural Style
The Rest Architectural Style
 
NoSQL databases and managing big data
NoSQL databases and managing big dataNoSQL databases and managing big data
NoSQL databases and managing big data
 
About Agile Testing Alliance (ATA)
About Agile Testing Alliance (ATA)About Agile Testing Alliance (ATA)
About Agile Testing Alliance (ATA)
 
Webinar: 10-Step Guide to Creating a Single View of your Business
Webinar: 10-Step Guide to Creating a Single View of your BusinessWebinar: 10-Step Guide to Creating a Single View of your Business
Webinar: 10-Step Guide to Creating a Single View of your Business
 
10-Step Methodology to Building a Single View with MongoDB
10-Step Methodology to Building a Single View with MongoDB10-Step Methodology to Building a Single View with MongoDB
10-Step Methodology to Building a Single View with MongoDB
 

Ähnlich wie MongoDB 101

Introduction to MongoDB
Introduction to MongoDBIntroduction to MongoDB
Introduction to MongoDB
Alex Bilbie
 
MongoDB and Ruby on Rails
MongoDB and Ruby on RailsMongoDB and Ruby on Rails
MongoDB and Ruby on Rails
rfischer20
 

Ähnlich wie MongoDB 101 (20)

Building your first app with MongoDB
Building your first app with MongoDBBuilding your first app with MongoDB
Building your first app with MongoDB
 
Mongodb Introduction
Mongodb Introduction Mongodb Introduction
Mongodb Introduction
 
MongoDB Schema Design: Practical Applications and Implications
MongoDB Schema Design: Practical Applications and ImplicationsMongoDB Schema Design: Practical Applications and Implications
MongoDB Schema Design: Practical Applications and Implications
 
Introduction to MongoDB
Introduction to MongoDBIntroduction to MongoDB
Introduction to MongoDB
 
MongoDB and Ruby on Rails
MongoDB and Ruby on RailsMongoDB and Ruby on Rails
MongoDB and Ruby on Rails
 
Dev Jumpstart: Build Your First App with MongoDB
Dev Jumpstart: Build Your First App with MongoDBDev Jumpstart: Build Your First App with MongoDB
Dev Jumpstart: Build Your First App with MongoDB
 
MongoDB
MongoDBMongoDB
MongoDB
 
MongoDB
MongoDBMongoDB
MongoDB
 
MongoDB for Coder Training (Coding Serbia 2013)
MongoDB for Coder Training (Coding Serbia 2013)MongoDB for Coder Training (Coding Serbia 2013)
MongoDB for Coder Training (Coding Serbia 2013)
 
Back to Basics 2017: Mí primera aplicación MongoDB
Back to Basics 2017: Mí primera aplicación MongoDBBack to Basics 2017: Mí primera aplicación MongoDB
Back to Basics 2017: Mí primera aplicación MongoDB
 
Dev Jumpstart: Build Your First App with MongoDB
Dev Jumpstart: Build Your First App with MongoDBDev Jumpstart: Build Your First App with MongoDB
Dev Jumpstart: Build Your First App with MongoDB
 
Webinar: General Technical Overview of MongoDB for Dev Teams
Webinar: General Technical Overview of MongoDB for Dev TeamsWebinar: General Technical Overview of MongoDB for Dev Teams
Webinar: General Technical Overview of MongoDB for Dev Teams
 
Back to Basics, webinar 2: La tua prima applicazione MongoDB
Back to Basics, webinar 2: La tua prima applicazione MongoDBBack to Basics, webinar 2: La tua prima applicazione MongoDB
Back to Basics, webinar 2: La tua prima applicazione MongoDB
 
MongoDB
MongoDBMongoDB
MongoDB
 
Building your first app with mongo db
Building your first app with mongo dbBuilding your first app with mongo db
Building your first app with mongo db
 
Sekilas PHP + mongoDB
Sekilas PHP + mongoDBSekilas PHP + mongoDB
Sekilas PHP + mongoDB
 
Webinar: Was ist neu in MongoDB 2.4
Webinar: Was ist neu in MongoDB 2.4Webinar: Was ist neu in MongoDB 2.4
Webinar: Was ist neu in MongoDB 2.4
 
Back to Basics Webinar 2 - Your First MongoDB Application
Back to  Basics Webinar 2 - Your First MongoDB ApplicationBack to  Basics Webinar 2 - Your First MongoDB Application
Back to Basics Webinar 2 - Your First MongoDB Application
 
Back to Basics Webinar 2: Your First MongoDB Application
Back to Basics Webinar 2: Your First MongoDB ApplicationBack to Basics Webinar 2: Your First MongoDB Application
Back to Basics Webinar 2: Your First MongoDB Application
 
Streaming Data Pipelines with MongoDB and Kafka at ao.com
Streaming Data Pipelines with MongoDB and Kafka at ao.comStreaming Data Pipelines with MongoDB and Kafka at ao.com
Streaming Data Pipelines with MongoDB and Kafka at ao.com
 

Kürzlich hochgeladen

%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
masabamasaba
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
VictorSzoltysek
 
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Medical / Health Care (+971588192166) Mifepristone and Misoprostol tablets 200mg
 

Kürzlich hochgeladen (20)

WSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go PlatformlessWSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go Platformless
 
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
 
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
 
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
 
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdfPayment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 

MongoDB 101

  • 2. Session I Topics • What is MongoDb? • Introduction to JSON • MongoDb Relative to Relational • Setting up MongoDb on Windows • Firing up the mongo shell • Setting up RoboMongo • Schema? What Schema?
  • 3. What is MongoDB? Non Relational JSON Document Store MongoDB is a
  • 4. Key features of MongoDB Flexibility stores data in JSON which seamlessly maps to programming languages. Dynamic schema makes it easier for your data model to evolve. Power Secondary indexes, dynamic queries, sorting, rich updates, upserts (update if document exists, insert if doesn’t) Functionality of RDBMS+ Horizontal scaling of NRDBMS Speed/Scaling Queries are faster due to non-relational data. Autosharding allows scaling your cluster linearly by adding more machines. Ease of Use Easy to install, configure, maintain, and use. Works right out of the box and you can dive right into app development
  • 5. Why JSON? JSONis open, human and machine-readable standard Supports all basic datatypes: numbers, strings, boolean values, arrays and hashes No need for a fixed schema. Just add what you want. Format is programmer friendly. Unlike you know… XML! MongoDB uses BSON behind the scenes which is an extended format for JSON MongoDB reuses a Javascript engine for their queries. Makes complete sense in the world to re-use JSON for object representation.
  • 6. JSON Basics Light weight, text-based open source standard for data interchange. Based on a subset of Javascript Fundamental structure of JSON Collection of Key- Value pairs Array/List of items { “name”: “Abhijeet Vaikar”, “designation”: “PA”, “age”: 25 } [“json”, “xml”, “bson”, “bxml”]
  • 7. JSON Basics var myArray = [ "John Doe", 29, true, null ]; var myArray2 = [ { “name”: “John Doe”, “age”:29}, { “name”: “Anna Smith”, “age”: 24} ]; Try in console: myArray[2] – true myArray2[1].name – Anna Smith More Arrays: More Objects: var objectWithNestedArray = { “name”: “John Doe”, “interests”:[“Reading”, “Mountain Biking”, “Hacking”] }; var objectWithNestedObject = { “favorites” : { “color” : “blue”, “sport” : “Soccer” } }; Try in console: objectWithNestedArray.interest s[0] – Reading objectWithNestedObject.favorit es.color - blue
  • 9. JSON Basics JSON Specification link: www.json.org Validate your JSON : www.jsonlint.com Prettify/Format your JSON: www.jsonprettyprint.com
  • 10. MongoDB documents All data in MongoDB is stored as documents (JSON style data structures ). A collection contains many documents. Format: Data is stored on disk in BSON (Binary JSON) serialization format. Document example: { _id: ObjectId("5099803df3f4948bd2f98391"), name: { first: "Alan", last: "Turing" }, birth: new Date('Jun 23, 1912'), death: new Date('Jun 07, 1954'), contribs: [ "Turing machine", "Turing test", "Turingery" ] } Fields: Fields in a document cannot: • Start with the dollar ( $ )character • Contain the dot ( . ) character • Contain the null character Maximum document size is 16 megabytes. Document fields order is maintained following write operations except for _id field which will always be first.
  • 11. MongoDB Relative to Relational Depth of Functionality Scalability&Performance Memcached Key Value stores MongoDB SQL Server / MySQL Where does MongoDB fit?
  • 12. Setting up MongoDB on Windows 1. Determine if your system is 32-bit / 64-bit and download and execute the setup from http://www.mongodb.org/downloads. Follow the default steps. 2. Your setup will install mongodb in path C:Program FilesMongoDB 2.x Standard 3. Set environment variables for mongo and mongod processes for convenience (optional) 4. Configure mongodb to set your data directory using the following command: mongod.exe --dbpath d:testmongodbdata 5. Start command prompt and trigger mongo executable. You should see: MongoDB shell version: 2.6.x connecting to: test 6. Perform the following query for checking out if all is good: db.poetry.insert({“name” : “Ba Ba Black Sheep”}); //Hit enter db.poetry.find() //Hit enter
  • 13. Setting up MongoDB on Windows If you get the following output: { "_id" : ObjectId("542254b633fc68d796ef1867"), "name" : "Ba Ba Black Sheep" } Then you can go like this:
  • 15. Schema? What Schema? Data in MongoDB is schema less. Data model of a document can be modified as needed. Helps agile developers!  { “_id” : 0, “height”: 480, “width”:640, “tags”: [ “dogs”, “work” ] } Document 1 { “_id” : 1, “name” : “Birthday”, “height”: 450, “width”:640, “tags”: [ “baby”, “happy” ] } Document 2 { “_id” : 2, “name” : “Party”, “height”: 480, “width”:640, “tags”: [ “office”, “party” ], “rating”: 3 } Document 3