Building Your First MongoDB Application
|
|
|
- Terence Richard
- 10 years ago
- Views:
Transcription
1 Building Your First MongoDB Application
2 Ross Lawley Python 10gen Web developer since 1999 Passionate about open source Agile methodology [email protected] twitter: RossC0
3 Today's Talk Quick introduction to NoSQL Some Background about mongodb Using mongodb, general querying and usage Building your first app, creating a location-based app Data modelling in mongodb, queries, geospatial, updates and map reduce (examples work in mongodb JS shell)
4 What is NoSQL? Key / Value Column Graph Document
5 Key-Value Stores A mapping from a key to a value The store doesn't know anything about the the key or value The store doesn't know anything about the insides of the value Operations Set, get, or delete a key-value pair
6 Column-Oriented Stores Like a relational store, but flipped around: all data for a column is kept together An index provides a means to get a column value for a record Operations: Get, insert, delete records; updating fields Streaming column data in and out of Hadoop
7 Graph Databases Stores vertex-to-vertex edges Operations: Getting and setting edges Sometimes possible to annotate vertices or edges Query languages support finding paths between vertices, subject to various constraints
8 Document Stores The store is a container for documents Documents are made up of named fields Fields may or may not have type definitions e.g. XSDs for XML stores, vs. schema-less JSON stores Can create "secondary indexes" These provide the ability to query on any document field(s) Operations: Insert and delete documents Update fields within documents
9 What is? MongoDB is a scalable, high-performance, open source NoSQL database. Document-oriented storage Full Index Support Querying Fast In-Place Updates Replication & High Availability Auto-Sharding Map/Reduce GridFS
10 Database Landscape scalability & performance memcached key/value RDBMS depth of functionality
11 History First release February 2009 v1.0 - August 2009 v1.2 - December 2009 MapReduce, ++ v1.4 - March 2010 Concurrency, Geo V1.6 - August 2010 Sharding, Replica Sets V1.8 March 2011 Journaling, Geosphere V2.0 - Sep 2011 V1 Indexes, Concurrency V2.2 - Soon - Aggregation, Concurrency
12 Company behind mongodb (A)GPL license, own copyrights, engineering team support, consulting, commercial license Management Google/DoubleClick, Oracle, Apple, NetApp Funding: Sequoia, Union Square, Flybridge Offices in NYC, Palo Alto, London, Dublin 100+ employees
13 Where can you use it? MongoDB is Implemented in C++ Platforms 32/64 bit Windows, Linux, Mac OS-X, FreeBSD, Solaris Drivers are available in many languages 10gen supported C, C# (.Net), C++, Erlang, Haskell, Java, JavaScript, Perl, PHP, Python, Ruby, Scala Community supported Clojure, ColdFusion, F#, Go, Groovy, Lua, R...
14 Why use mongodb? Intrinsic support for agile development Super low latency access to your data Very little CPU overhead No additional caching layer required Built in replication and horizontal scaling support
15 Terminology RDBMS Table Row(s) Index Join Partition Partition Key MongoDB Collection JSON Document Index Embedding & Linking Shard Shard Key
16 Documents Blog Post Document > p = { author: "Ross", date: new Date(), text: "About MongoDB...", tags: ["tech", "databases"]} > db.posts.save(p)
17 Querying > db.posts.find() { _id : ObjectId("4c4ba5c0672c685e5e8aabf3"), author : "Ross", date : ISODate(" T11:52:27.442Z"), text : "About MongoDB...", tags : [ "tech", "databases" ] } Notes: _id is unique, but can be anything you'd like
18 Introducing BSON JSON has powerful, but limited set of datatypes arrays, objects, strings, numbers and null BSON is a binary representation of JSON Adds extra dataypes with Date, Int types, Id, Optimized for performance and navigational abilities And compression MongoDB sends and stores data in BSON
19 BSON
20 Query Operators Conditional Operators - $all, $exists, $mod, $ne, $in, $nin, $nor, $or, $size, $type - $lt, $lte, $gt, $gte // find posts with any tags > db.posts.find({tags: {$exists: true }}) // find posts matching a regular expression > db.posts.find({author: /^ro*/i }) // count posts by author > db.posts.find({author: 'Ross'}).count()
21 Secondary Indexes Create index on any Field in Document // 1 means ascending, -1 means descending > db.posts.ensureindex({author: 1}) > db.posts.findone({author: 'Ross'}) { _id : ObjectId("4c4ba5c0672c685e5e8aabf3"), author: "Ross",... }
22 Compound Indexes Create index on multiple fields in a Document // 1 means ascending, -1 means descending > db.posts.ensureindex({author: 1, ts: -1}) > db.posts.find({author: 'Ross'}).sort({ts: -1}) [{ _id : ObjectId("4c4ba5c0672c685e5e8aabf3"), author: "Ross",...}, { _id : ObjectId("4f61d325c496820ceba84124"), author: "Ross",...}]
23 Examine the query plan > db.posts.find({"author": 'Ross'}).explain() { "cursor" : "BtreeCursor author_1", "nscanned" : 1, "nscannedobjects" : 1, "n" : 1, "millis" : 0, "indexbounds" : { "author" : [ [ "Ross", "Ross" ] ] } }
24 Atomic Operations $set, $unset, $inc, $push, $pushall, $pull, $pullall, $bit // Create a comment > new_comment = { author: "Fred", date: new Date(), text: "Best Post Ever!"} // Add to post > db.posts.update({ _id: "..." }, {"$push": {comments: new_comment}, "$inc": {comments_count: 1} });
25 Nested Documents { _id : ObjectId("4c4ba5c0672c685e5e8aabf3"), author : "Ross", date : "Thu Feb :50:01", text : "About MongoDB...", tags : [ "tech", "databases" ], comments : [{ author : "Fred", date : "Fri Feb :23:11", text : "Best Post Ever!" }], comment_count : 1 }
26 Nested Documents { _id : ObjectId("4c4ba5c0672c685e5e8aabf3"), author : "Ross", date : "Thu Feb :50:01", text : "About MongoDB...", tags : [ "tech", "databases" ], comments : [{ author : "Fred", date : "Fri Feb :23:11", text : "Best Post Ever!" }], comment_count : 1 }
27 Secondary Indexes // Index nested documents > db.posts.ensureindex("comments.author": 1) > db.posts.find({"comments.author": "Fred"}) // Index on tags (multi-key index) > db.posts.ensureindex( tags: 1) > db.posts.find( { tags: "tech" } )
28 Geo Geo-spatial queries Require a geo index Find points near a given point Find points within a polygon/sphere // geospatial index > db.posts.ensureindex({"author.location": "2d"}) > db.posts.find({ "author.location" : { $near : [22, 42] }})
29 Map Reduce The caller provides map and reduce functions written in JavaScript // Emit each tag > map = "this['tags'].foreach( function(item) {emit(item, 1);} );" // Calculate totals > reduce = "function(key, values) { var total = 0; var valuessize = values.length; for (var i=0; i < valuessize; i++) { total += parseint(values[i], 10); } return total; };
30 Map Reduce // run the map reduce > db.posts.mapreduce(map, reduce, {"out": { inline : 1}}); { "results" : [ {"_id" : "databases", "value" : 1}, {"_id" : "tech", "value" : 1 } ], "timemillis" : 1, "counts" : { "input" : 1, "emit" : 2, "reduce" : 0, "output" : 2 }, "ok" : 1, }
31 Aggregation - coming in 2.2 // Count tags > agg = db.posts.aggregate( {$unwind: "$tags"}, {$group : {_id : "$tags", count : {$sum: 1}}} ) > agg.result [{"_id": "databases", "count": 1}, {"_id": "tech", "count": 1}]
32 GridFS Save files in mongodb Stream data back to the client // (Python) Create a new instance of GridFS >>> fs = gridfs.gridfs(db) // Save file to mongo >>> my_image = open('my_image.jpg', 'r') >>> file_id = fs.put(my_image) // Read file >>> fs.get(file_id).read()
33 Building Your First MongoDB App Want to build an app where users can check in to a location Leave notes or comments about that location Iterative Approach: Decide requirements Design documents Rinse, repeat :-)
34 Requirements "As a user I want to be able to find other locations nearby" Need to store locations (Offices, Restaurants etc) name, address, tags coordinates user generated content e.g. tips / notes
35 Requirements "As a user I want to be able to 'checkin' to a location" Checkins User should be able to 'check in' to a location Want to be able to generate statistics: Recent checkins Popular locations
36 Locations v1 > location_1 = { name: "Holiday Inn", address: "Engelhardsgasse 12", city: "Nürnberg ", post_code: "D-90402" }
37 Locations v1 > location_1 = { name: "Holiday Inn", address: "Engelhardsgasse 12", city: "Nürnberg ", post_code: "D-90402" } > db.locations.save(location_1) > db.locations.find({name: "Holiday Inn"})
38 Locations v2 > location_2 = { name: "Holiday Inn", address: "Engelhardsgasse 12", city: "Nürnberg ", post_code: "D-90402", } tags: ["hotel", "conference", "mongodb"]
39 Locations v2 > location_2 = { name: "Holiday Inn", address: "Engelhardsgasse 12", city: "Nürnberg ", post_code: "D-90402", } tags: ["hotel", "conference", "mongodb"] > db.locations.ensureindex({tags: 1}) > db.locations.find({tags: "hotel"})
40 Locations v3 > location_3 = { name: "Holiday Inn", address: "Engelhardsgasse 12", city: "Nürnberg ", post_code: "D-90402", tags: ["hotel", "conference", "mongodb"], } lat_long: [ , ]
41 Locations v3 > location_3 = { name: "Holiday Inn", address: "Engelhardsgasse 12", city: "Nürnberg ", post_code: "D-90402", tags: ["hotel", "conference", "mongodb"], } lat_long: [ , ] > db.locations.ensureindex({lat_long: "2d"}) > db.locations.find({lat_long: {$near:[52.53, 13.4]}})
42 Finding locations // creating your indexes: > db.locations.ensureindex({name: 1}) > db.locations.ensureindex({tags: 1}) > db.locations.ensureindex({lat_long: "2d"}) // with regular expressions: > db.locations.find({name: /^holid/i}) // by tag: > db.locations.find({tag: "hotel"}) // finding places: > db.locations.find({lat_long: {$near:[52.53, 13.4]}})
43 Inserting locations - adding tips // initial data load: > db.locations.insert(location_3) // adding a tip with update: > db.locations.update( {name: "Holiday Inn"}, {$push: { tips: { user: "Ross", date: ISODate(" "), tip: "Check out my replication talk later!"} }})
44 Tips added > db.locations.findone() { _id : ObjectId("5c4ba5c0672c685e5e8aabf3"), name: "Holiday Inn", address: "Engelhardsgasse 12", city: "Nürnberg ", post_code: "D-90402", tags: ["hotel", "conference", "mongodb"], lat_long: [ , ], } tips:[{ user: "Ross", date: ISODate(" "), tip: "Check out my replication talk later!" }]
45 Requirements "As a user I want to be able to find other locations nearby" Need to store locations (Offices, Restaurants etc) name, address, tags coordinates user generated content e.g. tips / notes "As a user I want to be able to 'checkin' to a location" Checkins User should be able to 'check in' to a location Want to be able to generate statistics: Recent checkins Popular locations
46 Users and Checkins > user_1 = { _id: "[email protected]", name: "Ross", twitter: "RossC0", checkins: [ {location: "Holiday Inn", ts: "25/04/2012"}, {location: "Munich Airport", ts: "24/04/2012"} ] }
47 Simple Stats // find all users who've checked in here: > db.users.find({"checkins.location":"holiday Inn"})
48 Simple Stats // find all users who've checked in here: > db.users.find({"checkins.location":"holiday Inn"}) // Can't find the last 10 checkins easily > db.users.find({"checkins.location":"holiday Inn"}).sort({"checkins.ts": -1}).limit(10) Schema hard to query for stats.
49 User and Checkins v2 > user_2 = { _id: "[email protected]", name: "Ross", twitter: "RossC0", } > checkin_1 = { location: location_id, user: user_id, ts: ISODate(" ") } > db.checkins.find({user: user_id})
50 Simple Stats // find all users who've checked in here: > loc = db.locations.findone({"name":"holiday Inn"}) > checkins = db.checkins.find({location: loc._id}) > u_ids = checkins.map(function(c){return c.user}) > users = db.users.find({_id: {$in: u_ids}}) // find the last 10 checkins here: > db.checkins.find({location: loc._id}).sort({ts: -1}).limit(10) // count how many checked in today: > db.checkins.find({location: loc._id, ts: {$gt: midnight}} ).count()
51 Map Reduce // Find most popular locations > map_func = function() { emit(this.location, 1); } > reduce_func = function(key, values) { return Array.sum(values); } > db.checkins.mapreduce(map_func, reduce_func, {query: {ts: {$gt: now_minus_3_hrs}}, out: "result"}) > db.result.findone() {"_id": "Holiday Inn", "value" : 99}
52 Aggregation // Find most popular locations > agg = db.checkins.aggregate( {$match: {ts: {$gt: now_minus_3_hrs}}}, {$group: {_id: "$location", value: {$sum: 1}}} ) > agg.result [{"_id": "Holiday Inn", "value" : 17}]
53 Deployment Single server - need a strong backup plan P
54 Deployment Single server - need a strong backup plan Replica sets - High availability - Automatic failover P P S S
55 Deployment Single server - need a strong backup plan Replica sets - High availability - Automatic failover P P S S Sharded - Horizontally scale - Auto balancing P S S P S S
56 MongoDB Use Cases Archiving Content Management Ecommerce Finance Gaming Government Metadata Storage News & Media Online Advertising Online Collaboration Real-time stats/analytics Social Networks Telecommunications
57
58 Any Questions?
59 download at mongodb.org conferences, appearances, and meetups Facebook Twitter LinkedIn support, training, and this talk brought to you by
Open source, high performance database
Open source, high performance database Anti-social Databases: NoSQL and MongoDB Will LaForest Senior Director of 10gen Federal [email protected] @WLaForest 1 SQL invented Dynamic Web Content released IBM
MongoDB. Or how I learned to stop worrying and love the database. Mathias Stearn. N*SQL Berlin October 22th, 2009. 10gen
What is? Or how I learned to stop worrying and love the database 10gen N*SQL Berlin October 22th, 2009 What is? 1 What is? Document Oriented JavaScript Enabled Fast, Scalable, Available, and Reliable 2
Getting Started with MongoDB
Getting Started with MongoDB TCF IT Professional Conference March 14, 2014 Michael P. Redlich @mpredli about.me/mpredli/ 1 1 Who s Mike? BS in CS from Petrochemical Research Organization Ai-Logix, Inc.
MongoDB Developer and Administrator Certification Course Agenda
MongoDB Developer and Administrator Certification Course Agenda Lesson 1: NoSQL Database Introduction What is NoSQL? Why NoSQL? Difference Between RDBMS and NoSQL Databases Benefits of NoSQL Types of NoSQL
.NET User Group Bern
.NET User Group Bern Roger Rudin bbv Software Services AG [email protected] Agenda What is NoSQL Understanding the Motivation behind NoSQL MongoDB: A Document Oriented Database NoSQL Use Cases What is
L7_L10. MongoDB. Big Data and Analytics by Seema Acharya and Subhashini Chellappan Copyright 2015, WILEY INDIA PVT. LTD.
L7_L10 MongoDB Agenda What is MongoDB? Why MongoDB? Using JSON Creating or Generating a Unique Key Support for Dynamic Queries Storing Binary Data Replication Sharding Terms used in RDBMS and MongoDB Data
MongoDB: document-oriented database
MongoDB: document-oriented database Software Languages Team University of Koblenz-Landau Ralf Lämmel, Sebastian Jackel and Andrei Varanovich Motivation Need for a flexible schema High availability Scalability
MongoDB in the NoSQL and SQL world. Horst Rechner [email protected] Berlin, 2012-05-15
MongoDB in the NoSQL and SQL world. Horst Rechner [email protected] Berlin, 2012-05-15 1 MongoDB in the NoSQL and SQL world. NoSQL What? Why? - How? Say goodbye to ACID, hello BASE You
NoSQL - What we ve learned with mongodb. Paul Pedersen, Deputy CTO [email protected] DAMA SF December 15, 2011
NoSQL - What we ve learned with mongodb Paul Pedersen, Deputy CTO [email protected] DAMA SF December 15, 2011 DW2.0 and NoSQL management decision support intgrated access - local v. global - structured v.
Big Data & Data Science Course Example using MapReduce. Presented by Juan C. Vega
Big Data & Data Science Course Example using MapReduce Presented by What is Mongo? Why Mongo? Mongo Model Mongo Deployment Mongo Query Language Built-In MapReduce Demo Q & A Agenda Founders Max Schireson
NoSQL: Going Beyond Structured Data and RDBMS
NoSQL: Going Beyond Structured Data and RDBMS Scenario Size of data >> disk or memory space on a single machine Store data across many machines Retrieve data from many machines Machine = Commodity machine
Please ask questions! Have people used non-relational dbs before? MongoDB?
Kristina Chodorow Please ask questions! Have people used non-relational dbs before? MongoDB? Software Engineer at $ whoami Scaling a Pre-WWW DB literally scale literally scale (Courtesy of Ask Bjorn Hansen)
NoSQL in der Cloud Why? Andreas Hartmann
NoSQL in der Cloud Why? Andreas Hartmann 17.04.2013 17.04.2013 2 NoSQL in der Cloud Why? Quelle: http://res.sys-con.com/story/mar12/2188748/cloudbigdata_0_0.jpg Why Cloud??? 17.04.2013 3 NoSQL in der Cloud
NOSQL INTRODUCTION WITH MONGODB AND RUBY GEOFF LANE <[email protected]> @GEOFFLANE
NOSQL INTRODUCTION WITH MONGODB AND RUBY GEOFF LANE @GEOFFLANE WHAT IS NOSQL? NON-RELATIONAL DATA STORAGE USUALLY SCHEMA-FREE ACCESS DATA WITHOUT SQL (THUS... NOSQL) WIDE-COLUMN / TABULAR
Big Data Solutions. Portal Development with MongoDB and Liferay. Solutions
Big Data Solutions Portal Development with MongoDB and Liferay Solutions Introduction Companies have made huge investments in Business Intelligence and analytics to better understand their clients and
Introduction to NoSQL and MongoDB. Kathleen Durant Lesson 20 CS 3200 Northeastern University
Introduction to NoSQL and MongoDB Kathleen Durant Lesson 20 CS 3200 Northeastern University 1 Outline for today Introduction to NoSQL Architecture Sharding Replica sets NoSQL Assumptions and the CAP Theorem
Cloud Scale Distributed Data Storage. Jürmo Mehine
Cloud Scale Distributed Data Storage Jürmo Mehine 2014 Outline Background Relational model Database scaling Keys, values and aggregates The NoSQL landscape Non-relational data models Key-value Document-oriented
MONGODB - THE NOSQL DATABASE
MONGODB - THE NOSQL DATABASE Akhil Latta Software Engineer Z Systems, Mohali, Punjab MongoDB is an open source document-oriented database system developed and supported by 10gen. It is part of the NoSQL
Scaling up = getting a better machine. Scaling out = use another server and add it to your cluster.
MongoDB 1. Introduction MongoDB is a document-oriented database, not a relation one. It replaces the concept of a row with a document. This makes it possible to represent complex hierarchical relationships
Big Data. Facebook Wall Data using Graph API. Presented by: Prashant Patel-2556219 Jaykrushna Patel-2619715
Big Data Facebook Wall Data using Graph API Presented by: Prashant Patel-2556219 Jaykrushna Patel-2619715 Outline Data Source Processing tools for processing our data Big Data Processing System: Mongodb
Document Oriented Database
Document Oriented Database What is Document Oriented Database? What is Document Oriented Database? Not Really What is Document Oriented Database? The central concept of a document-oriented database is
NoSQL Databases. Nikos Parlavantzas
!!!! NoSQL Databases Nikos Parlavantzas Lecture overview 2 Objective! Present the main concepts necessary for understanding NoSQL databases! Provide an overview of current NoSQL technologies Outline 3!
The MongoDB Tutorial Introduction for MySQL Users. Stephane Combaudon April 1st, 2014
The MongoDB Tutorial Introduction for MySQL Users Stephane Combaudon April 1st, 2014 Agenda 2 Introduction Install & First Steps CRUD Aggregation Framework Performance Tuning Replication and High Availability
Brad Dayley. NoSQL with MongoDB
Brad Dayley NoSQL with MongoDB Sams Teach Yourself NoSQL with MongoDB in 24 Hours Copyright 2015 by Pearson Education All rights reserved. No part of this book shall be reproduced, stored in a retrieval
MongoDB. The Definitive Guide to. The NoSQL Database for Cloud and Desktop Computing. Apress8. Eelco Plugge, Peter Membrey and Tim Hawkins
The Definitive Guide to MongoDB The NoSQL Database for Cloud and Desktop Computing 11 111 TECHNISCHE INFORMATIONSBIBLIO 1 HEK UNIVERSITATSBIBLIOTHEK HANNOVER Eelco Plugge, Peter Membrey and Tim Hawkins
Dr. Chuck Cartledge. 15 Oct. 2015
CS-695 NoSQL Database MongoDB (part 2 of 2) Dr. Chuck Cartledge 15 Oct. 2015 1/17 Table of contents I 1 Miscellanea 2 Assignment #4 3 DB comparisons 4 Extensions 6 Midterm 7 Conclusion 8 References 5 Summary
MySQL és Hadoop mint Big Data platform (SQL + NoSQL = MySQL Cluster?!)
MySQL és Hadoop mint Big Data platform (SQL + NoSQL = MySQL Cluster?!) Erdélyi Ernő, Component Soft Kft. [email protected] www.component.hu 2013 (c) Component Soft Ltd Leading Hadoop Vendor Copyright 2013,
SURVEY ON MONGODB: AN OPEN- SOURCE DOCUMENT DATABASE
International Journal of Advanced Research in Engineering and Technology (IJARET) Volume 6, Issue 12, Dec 2015, pp. 01-11, Article ID: IJARET_06_12_001 Available online at http://www.iaeme.com/ijaret/issues.asp?jtype=ijaret&vtype=6&itype=12
Why NoSQL? Your database options in the new non- relational world. 2015 IBM Cloudant 1
Why NoSQL? Your database options in the new non- relational world 2015 IBM Cloudant 1 Table of Contents New types of apps are generating new types of data... 3 A brief history on NoSQL... 3 NoSQL s roots
HO5604 Deploying MongoDB. A Scalable, Distributed Database with SUSE Cloud. Alejandro Bonilla. Sales Engineer [email protected]
HO5604 Deploying MongoDB A Scalable, Distributed Database with SUSE Cloud Alejandro Bonilla Sales Engineer [email protected] Agenda SUSE Cloud Overview What is MongoDB? 2 Getting familiar with the Cloud
NoSQL Database - mongodb
NoSQL Database - mongodb Andreas Hartmann 19.10.11 Agenda NoSQL Basics MongoDB Basics Map/Reduce Binary Data Sets Replication - Scaling Monitoring - Backup Schema Design - Ecosystem 19.10.11 2 NoSQL Database
Analytics March 2015 White paper. Why NoSQL? Your database options in the new non-relational world
Analytics March 2015 White paper Why NoSQL? Your database options in the new non-relational world 2 Why NoSQL? Contents 2 New types of apps are generating new types of data 2 A brief history of NoSQL 3
How graph databases started the multi-model revolution
How graph databases started the multi-model revolution Luca Garulli Author and CEO @OrientDB QCon Sao Paulo - March 26, 2015 Welcome to Big Data 90% of the data in the world today has been created in the
Certified MongoDB Professional VS-1058
VS-1058 Certified MongoDB Professional Certification Code VS-1058 Vskills certification for MongoDB Professional assesses the candidate for MongoDB. The certification tests the candidates on various areas
Application of NoSQL Database in Web Crawling
Application of NoSQL Database in Web Crawling College of Computer and Software, Nanjing University of Information Science and Technology, Nanjing, 210044, China doi:10.4156/jdcta.vol5.issue6.31 Abstract
An Approach to Implement Map Reduce with NoSQL Databases
www.ijecs.in International Journal Of Engineering And Computer Science ISSN: 2319-7242 Volume 4 Issue 8 Aug 2015, Page No. 13635-13639 An Approach to Implement Map Reduce with NoSQL Databases Ashutosh
Scaling with MongoDB. by Michael Schurter 2011 @schmichael. Scaling with MongoDB by Michael Schurter - OS Bridge, 2011.06.22
Scaling with MongoDB by Michael Schurter 2011 @schmichael What is MongoDB? Community Developer by 10gen AGPL Database Apache drivers JIRA issue tracking On GitHub What is MongoDB? Architecture Server Database
NoSQL replacement for SQLite (for Beatstream) Antti-Jussi Kovalainen Seminar OHJ-1860: NoSQL databases
NoSQL replacement for SQLite (for Beatstream) Antti-Jussi Kovalainen Seminar OHJ-1860: NoSQL databases Background Inspiration: postgresapp.com demo.beatstream.fi (modern desktop browsers without
Integrating Big Data into the Computing Curricula
Integrating Big Data into the Computing Curricula Yasin Silva, Suzanne Dietrich, Jason Reed, Lisa Tsosie Arizona State University http://www.public.asu.edu/~ynsilva/ibigdata/ 1 Overview Motivation Big
Comparing SQL and NOSQL databases
COSC 6397 Big Data Analytics Data Formats (II) HBase Edgar Gabriel Spring 2015 Comparing SQL and NOSQL databases Types Development History Data Storage Model SQL One type (SQL database) with minor variations
Comparison of the Frontier Distributed Database Caching System with NoSQL Databases
Comparison of the Frontier Distributed Database Caching System with NoSQL Databases Dave Dykstra [email protected] Fermilab is operated by the Fermi Research Alliance, LLC under contract No. DE-AC02-07CH11359
Frictionless Persistence in.net with MongoDB. Mogens Heller Grabe Trifork [email protected]
Frictionless Persistence in.net with MongoDB Mogens Heller Grabe Trifork [email protected] Agenda Document-oriented databases Introduction to MongoDB JavaScript, baby! How to do it with C# Tiny web app sample
Domain driven design, NoSQL and multi-model databases
Domain driven design, NoSQL and multi-model databases Java Meetup New York, 10 November 2014 Max Neunhöffer www.arangodb.com Max Neunhöffer I am a mathematician Earlier life : Research in Computer Algebra
Can the Elephants Handle the NoSQL Onslaught?
Can the Elephants Handle the NoSQL Onslaught? Avrilia Floratou, Nikhil Teletia David J. DeWitt, Jignesh M. Patel, Donghui Zhang University of Wisconsin-Madison Microsoft Jim Gray Systems Lab Presented
MongoDB. An introduction and performance analysis. Seminar Thesis
MongoDB An introduction and performance analysis Seminar Thesis Master of Science in Engineering Major Software and Systems HSR Hochschule für Technik Rapperswil www.hsr.ch/mse Advisor: Author: Prof. Stefan
MongoDB Aggregation and Data Processing Release 3.0.4
MongoDB Aggregation and Data Processing Release 3.0.4 MongoDB Documentation Project July 08, 2015 Contents 1 Aggregation Introduction 3 1.1 Aggregation Modalities..........................................
MongoDB Aggregation and Data Processing
MongoDB Aggregation and Data Processing Release 3.0.8 MongoDB, Inc. December 30, 2015 2 MongoDB, Inc. 2008-2015 This work is licensed under a Creative Commons Attribution-NonCommercial- ShareAlike 3.0
MongoDB Aggregation and Data Processing
MongoDB Aggregation and Data Processing Release 2.4.14 MongoDB, Inc. December 07, 2015 2 MongoDB, Inc. 2008-2015 This work is licensed under a Creative Commons Attribution-NonCommercial- ShareAlike 3.0
Hacettepe University Department Of Computer Engineering BBM 471 Database Management Systems Experiment
Hacettepe University Department Of Computer Engineering BBM 471 Database Management Systems Experiment Subject NoSQL Databases - MongoDB Submission Date 20.11.2013 Due Date 26.12.2013 Programming Environment
How To Handle Big Data With A Data Scientist
III Big Data Technologies Today, new technologies make it possible to realize value from Big Data. Big data technologies can replace highly customized, expensive legacy systems with a standard solution
X4-2 Exadata announced (well actually around Jan 1) OEM/Grid control 12c R4 just released
General announcements In-Memory is available next month http://www.oracle.com/us/corporate/events/dbim/index.html X4-2 Exadata announced (well actually around Jan 1) OEM/Grid control 12c R4 just released
extensible record stores document stores key-value stores Rick Cattel s clustering from Scalable SQL and NoSQL Data Stores SIGMOD Record, 2010
System/ Scale to Primary Secondary Joins/ Integrity Language/ Data Year Paper 1000s Index Indexes Transactions Analytics Constraints Views Algebra model my label 1971 RDBMS O tables sql-like 2003 memcached
Advanced Data Management Technologies
ADMT 2014/15 Unit 15 J. Gamper 1/44 Advanced Data Management Technologies Unit 15 Introduction to NoSQL J. Gamper Free University of Bozen-Bolzano Faculty of Computer Science IDSE ADMT 2014/15 Unit 15
CSCC09F Programming on the Web. Mongo DB
CSCC09F Programming on the Web Mongo DB A document-oriented Database, mongoose for Node.js, DB operations 52 MongoDB CSCC09 Programming on the Web 1 CSCC09 Programming on the Web 1 What s Different in
Building a RESTful service with MongoDB and Spring MVC
Building a RESTful service with MongoDB and Spring MVC www.pentalog.fr p e n t a l o g. f r O v i d i u S t a n c i u o s t a n c i u @ p e n t a l o g. f r M a r c h 2 0 1 3 p e n t a l o g. f r 2 Action
PHP and MongoDB Web Development Beginners Guide by Rubayeet Islam
PHP and MongoDB Web Development Beginners Guide by Rubayeet Islam Projects-Oriented Book Combine the power of PHP and MongoDB to build dynamic web 2.0 applications Learn to build PHP-powered dynamic web
Sentimental Analysis using Hadoop Phase 2: Week 2
Sentimental Analysis using Hadoop Phase 2: Week 2 MARKET / INDUSTRY, FUTURE SCOPE BY ANKUR UPRIT The key value type basically, uses a hash table in which there exists a unique key and a pointer to a particular
Big data and urban mobility
Big data and urban mobility Antònia Tugores,PereColet Instituto de Física Interdisciplinar y Sistemas Complejos, IFISC(UIB-CSIC) Abstract. Data sources have been evolving the last decades and nowadays
Structured Data Storage
Structured Data Storage Xgen Congress Short Course 2010 Adam Kraut BioTeam Inc. Independent Consulting Shop: Vendor/technology agnostic Staffed by: Scientists forced to learn High Performance IT to conduct
Benchmarking Couchbase Server for Interactive Applications. By Alexey Diomin and Kirill Grigorchuk
Benchmarking Couchbase Server for Interactive Applications By Alexey Diomin and Kirill Grigorchuk Contents 1. Introduction... 3 2. A brief overview of Cassandra, MongoDB, and Couchbase... 3 3. Key criteria
Lecture 21: NoSQL III. Monday, April 20, 2015
Lecture 21: NoSQL III Monday, April 20, 2015 Announcements Issues/questions with Quiz 6 or HW4? This week: MongoDB Next class: Quiz 7 Make-up quiz: 04/29 at 6pm (or after class) Reminders: HW 4 and Project
3 Case Studies of NoSQL and Java Apps in the Real World
Eugene Ciurana [email protected] - pr3d4t0r ##java, irc.freenode.net 3 Case Studies of NoSQL and Java Apps in the Real World This presentation is available from: http://ciurana.eu/geecon-2011 About Eugene...
the missing log collector Treasure Data, Inc. Muga Nishizawa
the missing log collector Treasure Data, Inc. Muga Nishizawa Muga Nishizawa (@muga_nishizawa) Chief Software Architect, Treasure Data Treasure Data Overview Founded to deliver big data analytics in days
ADVANCED DATABASES PROJECT. Juan Manuel Benítez V. - 000425944. Gledys Sulbaran - 000423426
ADVANCED DATABASES PROJECT Juan Manuel Benítez V. - 000425944 Gledys Sulbaran - 000423426 TABLE OF CONTENTS Contents Introduction 1 What is NoSQL? 2 Why NoSQL? 3 NoSQL vs. SQL 4 Mongo DB - Introduction
NoSQL Databases. Institute of Computer Science Databases and Information Systems (DBIS) DB 2, WS 2014/2015
NoSQL Databases Institute of Computer Science Databases and Information Systems (DBIS) DB 2, WS 2014/2015 Database Landscape Source: H. Lim, Y. Han, and S. Babu, How to Fit when No One Size Fits., in CIDR,
An Open Source NoSQL solution for Internet Access Logs Analysis
An Open Source NoSQL solution for Internet Access Logs Analysis A practical case of why, what and how to use a NoSQL Database Management System instead of a relational one José Manuel Ciges Regueiro
these three NoSQL databases because I wanted to see a the two different sides of the CAP
Michael Sharp Big Data CS401r Lab 3 For this paper I decided to do research on MongoDB, Cassandra, and Dynamo. I chose these three NoSQL databases because I wanted to see a the two different sides of the
MongoDB and Couchbase
Benchmarking MongoDB and Couchbase No-SQL Databases Alex Voss Chris Choi University of St Andrews TOP 2 Questions Should a social scientist buy MORE or UPGRADE computers? Which DATABASE(s)? Document Oriented
Evaluator s Guide. McKnight. Consulting Group. McKnight Consulting Group
NoSQL Evaluator s Guide McKnight Consulting Group William McKnight is the former IT VP of a Fortune 50 company and the author of Information Management: Strategies for Gaining a Competitive Advantage with
Spring Data, Jongo & Co. Java Persistenz-Frameworks für MongoDB
Spring Data, Jongo & Co. Java Persistenz-Frameworks für MongoDB [email protected] @tobiastrelle codecentric AG 1 Tobias Trelle - Senior IT Consultant @ codecentric AG (Düsseldorf) - Organisator
Overview of Databases On MacOS. Karl Kuehn Automation Engineer RethinkDB
Overview of Databases On MacOS Karl Kuehn Automation Engineer RethinkDB Session Goals Introduce Database concepts Show example players Not Goals: Cover non-macos systems (Oracle) Teach you SQL Answer what
Lecture Data Warehouse Systems
Lecture Data Warehouse Systems Eva Zangerle SS 2013 PART C: Novel Approaches in DW NoSQL and MapReduce Stonebraker on Data Warehouses Star and snowflake schemas are a good idea in the DW world C-Stores
Perl & NoSQL Focus on MongoDB. Jean-Marie Gouarné http://jean.marie.gouarne.online.fr [email protected]
Perl & NoSQL Focus on MongoDB Jean-Marie Gouarné http://jean.marie.gouarne.online.fr [email protected] AGENDA A NoIntroduction to NoSQL The document store data model MongoDB at a glance MongoDB Perl API
Data Model Design for MongoDB
Data Model Design for MongoDB Release 3.0.7 MongoDB, Inc. October 30, 2015 2 MongoDB, Inc. 2008-2015 This work is licensed under a Creative Commons Attribution-NonCommercial- ShareAlike 3.0 United States
Introduction to Hadoop. New York Oracle User Group Vikas Sawhney
Introduction to Hadoop New York Oracle User Group Vikas Sawhney GENERAL AGENDA Driving Factors behind BIG-DATA NOSQL Database 2014 Database Landscape Hadoop Architecture Map/Reduce Hadoop Eco-system Hadoop
Oracle s Big Data solutions. Roger Wullschleger. <Insert Picture Here>
s Big Data solutions Roger Wullschleger DBTA Workshop on Big Data, Cloud Data Management and NoSQL 10. October 2012, Stade de Suisse, Berne 1 The following is intended to outline
Practical Cassandra. Vitalii Tymchyshyn [email protected] @tivv00
Practical Cassandra NoSQL key-value vs RDBMS why and when Cassandra architecture Cassandra data model Life without joins or HDD space is cheap today Hardware requirements & deployment hints Vitalii Tymchyshyn
Big Systems, Big Data
Big Systems, Big Data When considering Big Distributed Systems, it can be noted that a major concern is dealing with data, and in particular, Big Data Have general data issues (such as latency, availability,
NoSQL systems: introduction and data models. Riccardo Torlone Università Roma Tre
NoSQL systems: introduction and data models Riccardo Torlone Università Roma Tre Why NoSQL? In the last thirty years relational databases have been the default choice for serious data storage. An architect
Spark Application Carousel. Spark Summit East 2015
Spark Application Carousel Spark Summit East 2015 About Today s Talk About Me: Vida Ha - Solutions Engineer at Databricks. Goal: For beginning/early intermediate Spark Developers. Motivate you to start
Using MySQL for Big Data Advantage Integrate for Insight Sastry Vedantam [email protected]
Using MySQL for Big Data Advantage Integrate for Insight Sastry Vedantam [email protected] Agenda The rise of Big Data & Hadoop MySQL in the Big Data Lifecycle MySQL Solutions for Big Data Q&A
BIG DATA Alignment of Supply & Demand Nuria de Lama Representative of Atos Research &
BIG DATA Alignment of Supply & Demand Nuria de Lama Representative of Atos Research & Innovation 04-08-2011 to the EC 8 th February, Luxembourg Your Atos business Research technologists. and Innovation
Lecture 10: HBase! Claudia Hauff (Web Information Systems)! [email protected]
Big Data Processing, 2014/15 Lecture 10: HBase!! Claudia Hauff (Web Information Systems)! [email protected] 1 Course content Introduction Data streams 1 & 2 The MapReduce paradigm Looking behind the
Scalable Architecture on Amazon AWS Cloud
Scalable Architecture on Amazon AWS Cloud Kalpak Shah Founder & CEO, Clogeny Technologies [email protected] 1 * http://www.rightscale.com/products/cloud-computing-uses/scalable-website.php 2 Architect
NoSQL Systems for Big Data Management
NoSQL Systems for Big Data Management Venkat N Gudivada East Carolina University Greenville, North Carolina USA Venkat Gudivada NoSQL Systems for Big Data Management 1/28 Outline 1 An Overview of NoSQL
[email protected] @tobiastrelle. codecentric AG 1
NoSQL Unit & Travis CI Test Automation for NoSQL Databases [email protected] @tobiastrelle codecentric AG 1 Tobias Trelle Senior IT Consultant @ codecentric AG Organizer of MongoDB User Group
Using distributed technologies to analyze Big Data
Using distributed technologies to analyze Big Data Abhijit Sharma Innovation Lab BMC Software 1 Data Explosion in Data Center Performance / Time Series Data Incoming data rates ~Millions of data points/
A COMPARATIVE STUDY OF NOSQL DATA STORAGE MODELS FOR BIG DATA
A COMPARATIVE STUDY OF NOSQL DATA STORAGE MODELS FOR BIG DATA Ompal Singh Assistant Professor, Computer Science & Engineering, Sharda University, (India) ABSTRACT In the new era of distributed system where
How To Compare The Economics Of A Database To A Microsoft Database
A MongoDB White Paper A Total Cost of Ownership Comparison of MongoDB & Oracle March 2013 Contents EXECUTIVE SUMMARY 1 COST CATEGORIES 1 TCO FOR EXAMPLE PROJECTS 3 Upfront Costs 3 Initial Developer Effort
In Memory Accelerator for MongoDB
In Memory Accelerator for MongoDB Yakov Zhdanov, Director R&D GridGain Systems GridGain: In Memory Computing Leader 5 years in production 100s of customers & users Starts every 10 secs worldwide Over 15,000,000
NoSQL web apps. w/ MongoDB, Node.js, AngularJS. Dr. Gerd Jungbluth, NoSQL UG Cologne, 4.9.2013
NoSQL web apps w/ MongoDB, Node.js, AngularJS Dr. Gerd Jungbluth, NoSQL UG Cologne, 4.9.2013 About us Passionate (web) dev. since fallen in love with Sinclair ZX Spectrum Academic background in natural
Configuration and Deployment Guide for the Cassandra NoSQL Data Store on Intel Architecture
Configuration and Deployment Guide for the Cassandra NoSQL Data Store on Intel Architecture About this Guide This Configuration and Deployment Guide explores one of the leading Not Only Structured Query
