An introduction to MongoDB Rácz Gábor ELTE IK, 2013. febr. 10.

Slides:



Advertisements
Similar presentations
Introduction to MongoDB
Advertisements

Data Management in the Cloud Paul Szerlip. The rise of data Think about this o For the past two decades, the largest generator of data was humans -- now.
Map/Reduce in Practice Hadoop, Hbase, MongoDB, Accumulo, and related Map/Reduce- enabled data stores.
CC P ROCESAMIENTO M ASIVO DE D ATOS O TOÑO 2014 Aidan Hogan Lecture X: 2014/05/12.
NoSQL Databases: MongoDB vs Cassandra
In 10 minutes Mohannad El Dafrawy Sara Rodriguez Lino Valdivia Jr.
Reporter: Haiping Wang WAMDM Cloud Group
NoSQL and MongoDB Partner Technical Solutions, MongoDB Inc. Sandeep Parikh #mongodb.
Group 11 Sameera Shah & Fatemah Husain [10/31/13].
Building applications with MongoDB – An introduction Roger
Jeff Lemmerman Matt Chimento Medtronic Confidential 1 9th Annual CodeFreeze Symposium Medtronic Energy and Component Center.
A Social blog using MongoDB ITEC-810 Final Presentation Lucero Soria Supervisor: Dr. Jian Yang.
CC P ROCESAMIENTO M ASIVO DE D ATOS O TOÑO 2015 Lecture 9: NoSQL I Aidan Hogan
Neo4j Sarvesh Nagarajan TODO: Perhaps add a picture here.
Databases with Scalable capabilities Presented by Mike Trischetta.
Software Engineer, #MongoDBDays.
AN INTRODUCTION TO NOSQL DATABASES Karol Rástočný, Eduard Kuric.
MONGODB NOSQL SERIES Karol Rástočný 1. Prominent Users 2  AppScale, bit.ly, Business Insider, CERN LHC, craigslist, diaspora, Disney Interactive Media.
MongoDB An introduction. What is MongoDB? The name Mongo is derived from Humongous To say that MongoDB can handle a humongous amount of data Document.
Introduction à Couchbase Server 2.0 Tugdual Grall
:: Conférence :: NoSQL / Scalabilite Etat de l’art Samuel BERTHE10 Mars 2014Epitech Nantes.
HBase A column-centered database 1. Overview An Apache project Influenced by Google’s BigTable Built on Hadoop ▫A distributed file system ▫Supports Map-Reduce.
Getting Biologists off ACID Ryan Verdon 3/13/12. Outline Thesis Idea Specific database Effects of losing ACID What is a NoSQL database Types of NoSQL.
WTT Workshop de Tendências Tecnológicas 2014
Goodbye rows and tables, hello documents and collections.
Modern Databases NoSQL and NewSQL Willem Visser RW334.
VICTORIA UNIVERSITY OF WELLINGTON Te Whare Wananga o te Upoko o te Ika a Maui SWEN 432 Advanced Database Design and Implementation Trade-offs in Cloud.
© Copyright 2013 STI INNSBRUCK
CPT-S Topics in Computer Science Big Data 1 1 Yinghui Wu EME 49.
Introduction to MongoDB
MongoDB Jer-Shuan Lin.
MongoDB First Light. Mongo DB Basics Mongo is a document based NoSQL. –A document is just a JSON object. –A collection is just a (large) set of documents.
NoSQL Or Peles. What is NoSQL A collection of various technologies meant to work around RDBMS limitations (mostly performance) Not much of a definition...
Nov 2006 Google released the paper on BigTable.
NOSQL DATABASE Not Only SQL DATABASE
Some notes on NoSQL, in particular MongoDB Bettina Berendt (with thanks to Matthijs van Leeuwen for some of the slides) 8 December 2015.
Senior Solutions Architect, MongoDB Inc. Massimo Brignoli #MongoDB Introduction to Sharding.
Introduction to MongoDB. Database compared.
Data and Information Systems Laboratory University of Illinois Urbana-Champaign Data Mining Meeting Mar, From SQL to NoSQL Xiao Yu Mar 2012.
CPT-S Advanced Databases 11 Yinghui Wu EME 49.
An Introduction to Super-Scalability But first…
CMPE 226 Database Systems May 3 Class Meeting Department of Computer Engineering San Jose State University Spring 2016 Instructor: Ron Mak
Distributed databases A brief introduction with emphasis on NoSQL databases Distributed databases1.
Seminar: Deep Dive into Oracle NoSQL Technologies and Solutions Presenter: Zohar Elkayam, CTO, Brillix.
1 Analysis on the performance of graph query languages: Comparative study of Cypher, Gremlin and native access in Neo4j Athiq Ahamed, ITIS, TU-Braunschweig.
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.
NoSql An alternative option in the DevEvenings ORM Smackdown Tarn Barford
Why NO-SQL ?  Three interrelated megatrends  Big Data  Big Users  Cloud Computing are driving the adoption of NoSQL technology.
1 Gaurav Kohli Xebia Breaking with DBMS and Dating with Relational Hbase.
CSE-291 (Distributed Systems) Winter 2017 Gregory Kesden
NO SQL for SQL DBA Dilip Nayak & Dan Hess.
and Big Data Storage Systems
Cloud Computing and Architecuture
CPT-S 415 Big Data Yinghui Wu EME B45 1.
Introduction In the computing system (web and business applications), there are enormous data that comes out every day from the web. A large section of.
MongoDB Er. Shiva K. Shrestha ME Computer, NCIT
Modern Databases NoSQL and NewSQL
NOSQL.
CMPE 280 Web UI Design and Development October 17 Class Meeting
Christian Stark and Odbayar Badamjav
javascript for your data
NOSQL databases and Big Data Storage Systems
CSE-291 (Cloud Computing) Fall 2016 Gregory Kesden
CSE 482 Lecture 5: NoSQL.
CS5220 Advanced Topics in Web Programming Introduction to MongoDB
Building applications with MongoDB – An introduction
CMPE 280 Web UI Design and Development March 14 Class Meeting
NoSQL & Document Stores
NoSQL databases An introduction and comparison between Mongodb and Mysql document store.
Presentation transcript:

An introduction to MongoDB Rácz Gábor ELTE IK, febr. 10.

2 In Production

3 NoSQL Key-value Graph database Document-oriented Column family

4 Document store RDBMSMongoDB Database Table, ViewCollection RowDocument (JSON, BSON) ColumnField Index JoinEmbedded Document Foreign KeyReference PartitionShard

5 Document store RDBMSMongoDB Database Table, ViewCollection RowDocument (JSON, BSON) ColumnField Index JoinEmbedded Document Foreign KeyReference PartitionShard > db.user.findOne({age:39}) { "_id" : ObjectId("5114e0bd42…"), "first" : "John", "last" : "Doe", "age" : 39, "interests" : [ "Reading", "Mountain Biking ] "favorites": { "color": "Blue", "sport": "Soccer"} }

6 CRUD Create db.collection.insert( ) db.collection.save( ) db.collection.update(,, { upsert: true } ) Read db.collection.find(, ) db.collection.findOne(, ) Update db.collection.update(,, ) Delete db.collection.remove(, )

7 CRUD example > db.user. insert ({ first: "John", last : "Doe", age: 39 }) > db.user.find () { "_id" : ObjectId("51…"), "first" : "John", "last" : "Doe", "age" : 39 } > db.user.update( {"_id" : ObjectId("51…")}, { $set: { age: 40, salary: 7000} } ) > db.user.remove({ "first": /^J/ })

8 Features Document-Oriented storege Full Index Support Replication & High Availability Auto-Sharding Querying Fast In-Place Updates Map/Reduce Agile Scalable

9 Memory Mapped Files „A memory-mapped file is a segment of virtual memory which has been assigned a direct byte-for-byte correlation with some portion of a file or file-like resource.” 1 mmap() 1 :

10 Replica Sets Redundancy and Failover Zero downtime for upgrades and maintaince Master-slave replication Strong Consistency Delayed Consistency Geospatial features Host1:10000 Host2:10001 Host3:10002 replica 1 Client

11 Sharding Partition your data Scale write throughput Increase capacity Auto-balancing Host1:10000Host2:10010 Host3:20000 shard 1 shard 2 Host4:30000 configdb Client

12 Mixed Host4:10010 Host5:20000 shard 1 shard n Host6:30000 configdb Client Host1:10000 Host2:10001 Host3:10002 replica 1 Host7:

13 Map/Reduce db.collection.mapReduce(, { out:, query: <>, sort: <>, limit:, finalize:, scope: <>, jsMode:, verbose: } ) var mapFunction1 = function() { emit(this.cust_id, this.price); }; var reduceFunction1 = function(keyCustId, valuesPrices) { return sum(valuesPrices); };

14 Other features Easy to install and use Detailed documentation Various APIs JavaScript, Python, Ruby, Perl, Java, Java, Scala, C#, C++, Haskell, Erlang Community Open source

15 Theory of noSQL: CAP CAP Theorem: satisfying all three at the same time is impossible AP Many nodes Nodes contain replicas of partitions of data Consistency all replicas contain the same version of data Availability system remains operational on failing nodes Partition tolarence multiple entry points system remains operational on system split C

16 Theory of noSQL: CAP CAP Theorem: satisfying all three at the same time is impossible AP Many nodes Nodes contain replicas of partitions of data Consistency all replicas contain the same version of data Availability system remains operational on failing nodes Partition tolarence multiple entry points system remains operational on system split C

17 ACID - BASE Pritchett, D.: BASE: An Acid Alternative (queue.acm.org/detail.cfm?id= ) Atomicity Consistency Isolation Durability Basically Available (CP) Soft-state Eventually consistent (AP)

18 Thank you for your attention!