www.coba.unr.edu
Download
Report
Transcript www.coba.unr.edu
Introduction to
MongoDB
{ "name": "Devyani Tanna"}
slides.com/chinu/mongodb
Overview
•
•
•
NoSQL
Why use NoSQL database?
Categories
MongoDB
Installation
Concept Mapping
Database level commands
Collection level commands
Schema at application level
Questions?
NoSQL
No, SQL!
Categories of NoSQL
Document Store
MongoDB
CouchDB
Graph
Neo4j
Key-Value Store
Amazon - DynamoDB
LinkedIn - Voldemort Project
Riak
Tabular
Google - BigTable
Facebook - Cassandra (now Apache Project)
Why use NoSQL Database?
Missing:
No Joins
o They are too expensive!
No Complex Transactions
No Constraint Support
o Not at database level. Added at application level.
Extra:
Query Language
Fast Performance
Horizontal Scalability
Horizontal Scalability
MongoDB (from "humongous") is a
scalable, high-performance, open
source, schema-free, documentoriented database.
-mongodb.org
Installation
•
•
Takes less than 5 minutes
try.mongodb.org
Concept Mapping
_id
(Like Primary Key in RDBMS)
•
•
•
•
•
Special Key
Present in all documents (Rows)
Unique across a collection (Table)
Any type you want
24 byte hex string, 12 byte binary string, or a number
Document
(Like Row in RDBMS)
Note: Fields ("Key": "Value") have Primitive types +
arrays, documents
Collection
(Like Table in RDBMS)
Index
B- Tree
Commands
Database Level
•
•
•
•
mongod (Starts the server)
mongo (Connects to server)
show dbs
use <db>
Commands
Collection Level
1. Show Collections - Lists collections in a current
database
Commands
Collection Level
2. db.collections.findOne() - Displays first document in a
collection
3.db.collection.find() - Displays all documents in a
collection
Commands
Collection Level
4.
db.collection.someFunction.forEach(printjson) - Prints
information in a easy to read format.
Commands
Collection Level
5. db.collection.count() - Number of documents in a
collection
6. db.collection.update(object) - Used to update a specific
document
7. db.collection.insert(object) - Used to insert a specific
document into a collection
Commands
Collection Level
8. db.collection.save(object) - Save a new document in a
collection
Commands
Collection Level
9. db.collection.find( { }, { field: 0 or 1}) - Specify
which fields to display.
Commands
Collection Level
10. Example of two queries.
Commands
Collection Level - Last One!!!!
11. Example of querying sub-document with dot notation.
Schema at Application Level
Resources
•
MongoDB Commands
o http://docs.mongodb.org/manual/reference/comman
•
•
d/
MongoDB Tutorials (Part 1 thru 14) Best Videos
o https://www.youtube.com/watch?v=UA8q6kS8uaE
NoSQL Style (Gangnam Style Parody for Geeks)
o https://www.youtube.com/watch?v=qpK0WAuyOl4
Questions?