MongoDB Er. Shiva K. Shrestha ME Computer, NCIT

Slides:



Advertisements
Similar presentations
Introduction to MongoDB
Advertisements

Organisation Of Data (1) Database Theory
Relational Database Alternatives NoSQL. Choosing A Data Model Relational database underpin legacy applications and meet business needs However, companies.
In 10 minutes Mohannad El Dafrawy Sara Rodriguez Lino Valdivia Jr.
A Social blog using MongoDB ITEC-810 Final Presentation Lucero Soria Supervisor: Dr. Jian Yang.
A Study in NoSQL & Distributed Database Systems John Hawkins.
Introduction –All information systems create, read, update and delete data. This data is stored in files and databases. Files are collections of similar.
Systems analysis and design, 6th edition Dennis, wixom, and roth
1 © Prentice Hall, 2002 Physical Database Design Dr. Bijoy Bordoloi.
NoSQL continued CMSC 461 Michael Wilson. MongoDB  MongoDB is another NoSQL solution  Provides a bit more structure than a solution like Accumulo  Data.
WTT Workshop de Tendências Tecnológicas 2014
Goodbye rows and tables, hello documents and collections.
Modern Databases NoSQL and NewSQL Willem Visser RW334.
Chapter 6 1 © Prentice Hall, 2002 The Physical Design Stage of SDLC (figures 2.4, 2.5 revisited) Project Identification and Selection Project Initiation.
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 4th Edition Copyright © 2009 John Wiley & Sons, Inc. All rights.
Methodological Foundations of Biomedical Informatics (BMSC-GA 4449) Himanshu Grover.
© Copyright 2013 STI INNSBRUCK
VICTORIA UNIVERSITY OF WELLINGTON Te Whare Wananga o te Upoko o te Ika a Maui SWEN 432 Advanced Database Design and Implementation Exam and Lecture Overview.
Component 4: Introduction to Information and Computer Science Unit 6a Databases and SQL.
CSE 3330 Database Concepts MongoDB. Big Data Surge in “big data” Larger datasets frequently need to be stored in dbs Traditional relational db were not.
Introduction to MongoDB
Physical Database Design Purpose- translate the logical description of data into the technical specifications for storing and retrieving data Goal - create.
NOSQL DATABASE Not Only SQL DATABASE
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 5th Edition Copyright © 2015 John Wiley & Sons, Inc. All rights.
Introduction to MongoDB. Database compared.
Group members: Phạm Hoàng Long Nguyễn Huy Hùng Lê Minh Hiếu Phan Thị Thanh Thảo Nguyễn Đức Trí 1 BIG DATA & NoSQL Topic 1:
Abstract MarkLogic Database – Only Enterprise NoSQL DB Aashi Rastogi, Sanket V. Patel Department of Computer Science University of Bridgeport, Bridgeport,
COMP 430 Intro. to Database Systems MongoDB. What is MongoDB? “Humongous” DB NoSQL, no schemas DB Lots of similarities with SQL RDBMs, but with more flexibility.
SQL IMPLEMENTATION & ADMINISTRATION Indexing & Views.
Introduction to Mongo DB(NO SQL data Base)
Neo4j: GRAPH DATABASE 27 March, 2017
Introduction to Entity framework
Mongo Database (Intermediate)
NO SQL for SQL DBA Dilip Nayak & Dan Hess.
DBSI Teaser Presentation
and Big Data Storage Systems
Introduction to Entity Framework
CSE 775 – Distributed Objects Bekir Turkkan & Habib Kaya
Special Topics in CCIT: Databases
CS122B: Projects in Databases and Web Applications Winter 2017
Learning MongoDB ZhangGang
Modern Databases NoSQL and NewSQL
NOSQL.
CMPE 280 Web UI Design and Development October 17 Class Meeting
Dineesha Suraweera.
javascript for your data
Data Modeling and Database Design INF1343, Winter 2012 Yuri Takhteyev
Database Design and Implementation
NOSQL databases and Big Data Storage Systems
1 Demand of your DB is changing Presented By: Ashwani Kumar
What is database? Types and Examples
Chapter 6 System and Application Software
MIT GSL 2018 week 3 | thursday Meteor and App Ideation.
Physical Database Design
NoSQL Databases Antonino Virgillito.
Primary key Introduction Introduction: A primary key, also called a primary keyword, is a key in a relational database that is unique for each record.
Overview of big data tools
The Physical Design Stage of SDLC (figures 2.4, 2.5 revisited)
Database Systems Summary and Overview
One Language. One Enterprise.™
Contents Preface I Introduction Lesson Objectives I-2
Building applications with MongoDB – An introduction
INTRODUCTION TO MONgodb
Introduction to NoSQL Database Systems
Chapter 3 Database Management
Chapter 6 System and Application Software
Chapter 6 System and Application Software
NoSQL & Document Stores
NoSQL databases An introduction and comparison between Mongodb and Mysql document store.
Chapter 6 System and Application Software
Presentation transcript:

MongoDB Er. Shiva K. Shrestha ME Computer, NCIT 6/20/2016 Er. Shiva K. Shrestha ME Computer, NCIT Distributed Operating System

Introduction MongoDB = “Humongous DB” Open-source & Cross-platform 6/20/2016 MongoDB = “Humongous DB” Open-source & Cross-platform Document-based “High Performance, High Availability” Automatic Scaling 10gen => MongoDB Inc. 2009 Stable Release: 8th March, 2016 High Performance: JSON Format, Less CPU Overhead, Data assessable from any Node Scaling: -> Cluster Scale -> Performance Scale -> Data Scale

Database Evolution Flat Files RDBMS NoSQL MongoDB 1970s: data stored in flat file system 1979: a standard way of query the data - what do we want to query, how to process that query but 1998: 1. Key-value Store 2. Tabular 3. Document oriented (MongoDB, CouchDB, etc.) 2009: Free & Open Source, Cross-Platform, Document Oriented Problem: no standard implementation Problem: with the big n huge amount data Problem: Less support for Complex Queries Solution: Relational Database Solution: NoSQL Solution: Use Third-Party GUIs 6/20/2016

Features Expressive Query Language & Secondary Indexes Strong Consistency Flexibility Scalability & Performance 6/20/2016 Easy Assess Provide up-to-date copy of data Easily added extra column without affecting others Secured Monitored, automated & integrated with our existing infrastructure Millions ops/sec, 100 Billions Documents, Peta Bytes of Data

MongoDB is: General Purpose Easy to Use Fast & Scalable Rich data model Full featured indexes Sophisticated query language Easy to Use Easy mapping to object oriented code Native language drivers in all popular languages Simple to setup and manage Rich Data Model: Any type of data can be stored Fast & Scalable Operates at in-memory speed wherever possible Auto-sharding built in Dynamically add / remove capacity with no downtime

Comparisons RDBMS MongoDB Relational database Document-oriented database, non relational Schema based database, follow joins Schema-less database, references and $lookup Data stored in tables (tables contain collection of rows) Data stored in form of collection (collection contain group of object document) No horizontal scaling Eg. 1st row has 5 column then 2nd row must have 5 column for the given table Horizontal scaling Eg. 1st row has 5 column then 2nd row can have any no of column for the given table SQL queries are used JSON, BSON format 6/20/2016

Data Format JSON XML {"employees“ :[ {"firstName":“Anju", "lastName":“Shah"}, {"firstName":“Sumit Kumar", "lastName":“Shah"}, {"firstName":“Shiva K.", "lastName":“Shrestha"} ]} <employees> <employee> <firstName>Anju</firstName> <lastName>Shah</lastName> </employee> <employee> <firstName>Sumit Kumar</firstName> <lastName>Shah</lastName> </employee> <employee> <firstName>Shiva K.</firstName> <lastName>Shrestha</lastName> </employee> </employees> 6/20/2016

Advantages Schema less Structure of single object is clear No complex joins Document-based Query language Conversion/Mapping is not needed Use internal memory, hence faster 6/20/2016

Why and Where to use Object oriented storage style (JSON) Index on any attributes Replication and Availability Auto-sharding Big data Content management system Mobile and social infrastructure Data Hub 6/20/2016

Terminology Translation SQL Terms/Concepts MongoDB Terms/Concepts Database Table Collection Row Document or BSON document Column Field Index Table joins Embedded documents & linking Unique column or column combination as primary key. Primary key is automatically set to the _id field. Aggregation (e.g. group by) Aggregation pipeline 6/20/2016

CRUD Operations Insertion: Update: Delete: SQL MongoDB Command INSERT INTO t (fn, ln) VALUES (‘Saroj', ‘Shakya') db.t.insert({fn:‘Saroj', ln: ‘Shakya'}) 6/20/2016 SQL MongoDB Command UPDATE t SET ln='Nepal' WHERE ln='Shakya' db.t.update({ln:‘Shakya'},{$set:{ln:‘Nepal'}}) SQL MongoDB Command DELETE FROM t WHERE fn=‘Saroj' db.t.remove({fn:‘Saroj'})

Retrieving Data SQL Statement MongoDB Commands SELECT * FROM table db.collection.find() WHERE artist = ‘Rekha’ db.collection.find({Artist:”Rekha”}) SELECT* ORDER BY Title db.collection.find().sort(Title:1) DISTINCT .distinct() GROUP BY .group() >=, < $gte, $lt 6/20/2016

Replication 6/20/2016

Knee Curve 6/20/2016

Drivers & Frameworks 6/20/2016 MEAN Stack Morphia

Conclusions MongoDB is fast Very little CPU overhead Implemented in C++ for best performance Free & Open Source, Cross-Platform, Document Oriented Easier and faster integration of data Very rapid development 6/20/2016

Q/A Session: 6/20/2016 Thank You!