Building a RESTful service with MongoDB and Spring MVC
|
|
- Daniel Ross
- 8 years ago
- Views:
Transcription
1 Building a RESTful service with MongoDB and Spring MVC p e n t a l o g. f r
2 O v i d i u S t a n c i u o s t a n c i p e n t a l o g. f r M a r c h p e n t a l o g. f r 2
3 Action plan What is NoSQL? What is MongoDB? Mongo operations using the JavaScript client Scaling MongoDB Spring Data MongoDB features Cloud Catalog demo Afterthoughts M a r c h p e n t a l o g. f r 3
4 What is NoSQL? 1998 Carlo Strozzi creates an open source database without a SQL interface, which he names NoSQL 2009 last.fm conference NoSQL used to describe all distributed databases which don't adhere to ACID principles NoSQL characteristics : Schema-free : normal RDBMS constraints do not apply No SQL No full ACID guarantees eventual consistency Limited transactions Distributed (horizontally scalable) and fault-tolerant M a r c h p e n t a l o g. f r 4
5 What is NoSQL? (continued) Types of NoSQL databases : Document oriented information encapsulated in text encoded documents (XML, YAML, JSON / BSON etc) or binary (PDF, MS Office formats etc) MongoDB, CouchDB, Jackrabbit, BaseX, SimpleDB, Oracle NoSQL Database, Couchbase Graph database nodes (contain the information) and edges (relationship between nodes) Neo4j, IBM DB2 (>=10), InfiniteGraph, DEX, FlockDB Key-Value store Cassandra, Riak, Redis, memcached, Google Appengine Datastore, Amazon DynamoDB M a r c h p e n t a l o g. f r 5
6 What is MongoDB? Document oriented, schema-less storage solution Developed by 10gen, first release in 2009 Open Source, AGPL and commercial licenses Written in C++ Windows, Linux, OS X, Solaris BSON (Binary JSON) { } "_id": ObjectId("4efa8d2b7d284dad101e4bc7"), "lastname": "PELLERIN", "firstname": "Franck", "dateofbirth": " ", "phonenumbers": [{ "type": "home", "number": " " },{ "type": "fax", "number": " ", "verified": false }], "address": {"street": "1 chemin des Loges", "city": "VERSAILLES"}, M a r c h p e n t a l o g. f r 6
7 What is MongoDB? (continued) Storage data files mapped in RAM (swapping managed by the operating system) Features : High Availability Journaling Replication Sharding (partitioning) Indexing Geoindexing (how close am I to?) Aggregation MapReduce Capped collections GridFS Drivers for : C, C++, C#, Erlang, Java, Javascript, Perl, PHP, Python, Ruby (official) Many other languages community supported M a r c h p e n t a l o g. f r 7
8 What is MongoDB? (continued) HTTP interfaces REST DrowsyDromedary (Ruby) MongoDB Rest (Node.js) alpha Mongodb Java REST server (Jetty) HTTP Sleepy Mongoose (Python) HTTP console HTTP interface which offers information / statistics about the server instance (installed by default and accessible on the server port ) M a r c h p e n t a l o g. f r 8
9 What is MongoDB? (continued) Tools : mongo interactive shell JavaScript mongostat server statistics mongotop similar to the Linux/UNIX top tool statistical information about actions performed on document collections mongosniff package sniffer for incoming / outgoing server data, similar to Wireshark (which also supports the MongoDB protocol) Unix-like OS only! mongoimport, mongoexport import / export tools (JSON, CSV, TSV) mongodump, mongorestore importing / exporting binary dumps M a r c h p e n t a l o g. f r 9
10 What is MongoDB? (continued) Glossary of terms : SQL / MySQL / Oracle term DB server / mysqld / oracle DB client / mysql / sqlplus database table row column table joins primary key group by MongoDB term mongod mongo database collection BSON document field embedded documents or linking _id field aggregation M a r c h p e n t a l o g. f r 10
11 What is MongoDB? (continued) Popularity Compared with other NoSQL solutions M a r c h p e n t a l o g. f r 11
12 What is MongoDB? (continued) Used with server-side languages : M a r c h p e n t a l o g. f r 12
13 MongoDB installation Windows : Linux : OS X : 32bit, 64bit, optimized 2008R2 or Windows 7 or higher Latest version (2.2) dropped support for XP No official installer 32bit, 64bit Debian and Red Hat packages available Homebrew or MacPorts packages 10gen binaries compiled for OS X Can be installed in under 5 minutes (without taking into account package download time) M a r c h p e n t a l o g. f r 13
14 The JavaScript shell (mongo) Synopsis : mongo [OPTIONS] [DB_ADDRESS] [FILE+] Very similar to mysql (JavaScript vs SQL) Commands : Command / function Description help Help me! db.help() db.<collection>.help() show dbs use <db> show collections show users show profile Lists all db object functions (singleton representing the current database) Collection functions (<collection> may not even exist) List all existing databases on this server Switches to the <db> database. From now on, the db object will represent the new database Lists the existing collections on the current database Lists the existing users on the current database Lists information about the last 5 operations which took more than 1 millisecond to execute M a r c h p e n t a l o g. f r 14
15 CRUD Insert / Update Insert : db.<collection>.insert(<document>) db.languages.insert({ name: 'JavaScript', release_year: 1994, designer: 'Brendan Eich', developers : ['Netscape', 'Mozilla Foundation'] }); Document identification Unique in the collection May have any type Automatically indexed the _id field Auto-generated if omitted at document insertion Mandatory for top level documents (optional for embedded) { "_id" : ObjectId("511f8e771f67a8d45558afa3"), "name" : "JavaScript", "release_year" : 1994, "designer" : "Brendan Eich", "developers" : [ "Netscape", "Mozilla Foundation" ] } M a r c h p e n t a l o g. f r 15
16 CRUD Insert / Update (continued) db.<collection>.save(<document>) Insert unspecified or missing _id Update, otherwise db.<collection>.update(<query>, <update> [, upsert[, multi]]) <query> equivalent to the SQL <update> Simple document field : value Document with $set field upsert default false WHERE clause multi default false only one document matched by <query> will be updated M a r c h p e n t a l o g. f r 16
17 CRUD Delete and referencing db.collection.remove([<query>] [, <justone>]) With no <query> it will empty the collections <justone> accepts both boolean or 0 / 1 Default false Referencing documents in other collections No joins Recommended construct : my_reference: {$ref: '<collection_name>', $id: <document_id>} db.companies.insert({_id: 'P5', name: 'Pentalog'}); db.employees.insert({_id: 1, name: 'Ovidiu Stanciu', company: {$ref: 'companies', $id: 'P5'}}); var ovidiu = db.employees.find({_id: 1}); db[ovidiu.company.$ref].find({_id: ovidiu.company.$id}); M a r c h p e n t a l o g. f r 17
18 CRUD Querying db.collection.find([<query>] [, <fields>]) <fields> mappings of the fields to be returned db.collection.findone([<query>]) <query> optional? it will return the first document in the collection (by default the oldest) Conditionals expressed as JSON objects Selectors : Comparison : $all, $gt, $gte, $in, $lt, $lte, $ne, $nin Logical : $and, $or, $not, $nor Element : $exists, $mod, $type JavaScript : $regex, $where Geospatial : $near, $within etc Array : $elemmatch, $size M a r c h p e n t a l o g. f r 18
19 CRUD Querying (continued) Controlling the result set - the cursor object batchsize() count() explain() foreach() hint() limit() map() max(), min() size() skip() sort() M a r c h p e n t a l o g. f r 19
20 Indexing At the collection level (maximum of 64 per collection) On one or more document fields (including embedded documents) B-tree Each query (including update) uses at most one index Exception queries with $or ensureindex(keys [, options]) Limitations in index usage : Negations : $ne, $not Arithmetic operations : $mod Some regular expressions : Yes : /^Brasov/, /^Bra.*/, /^bra.*/i No : /Brasov/ $where M a r c h p e n t a l o g. f r 20
21 Aggregation distinct(<field> [, <query>]) group({key, reduce, initial [, keyf] [, cond] [, finalize]}) key fields to group reduce(document, partialresult) aggregate function initial initializer code for the aggregate function keyf optional, function for creating a custom key object for grouping cond optional, filtering condition for the documents to be grouped finalize optional, function that will be executed for each item in the result set before returning the final value extra processing of the result set M a r c h p e n t a l o g. f r 21
22 Aggregation (continued) SQL term / function MongoDB aggregation operator WHERE GROUP BY HAVING SELECT ORDER BY LIMIT SUM() COUNT() $match $group $match $project $sort $limit $sum $sum M a r c h p e n t a l o g. f r 22
23 MapReduce Term inspired from the names of two functions commonly used in functional programming (their purpose in MapReduce is slightly different than the original functions) Map : transforming the dataset in key-value pairs Dividing the big problem into smaller, equivalent problems Reduce (aka fold, accumulate, compress, inject) : takes the mapping result and assembles it to construct the final Collecting and aggregating partial results obtained from solving sub-problems Example files containing pairs City recorded temperature M a r c h p e n t a l o g. f r 23
24 MapReduce (continued) db.collection.mapreduce(<map>, <reduce>, { out: <collection>, query: <document>, sort: <document>, limit: <number>, finalize: <function>, scope: <document>, jsmode: <boolean>, verbose: <boolean> }) map = function() {... emit(key, value); } reduce = function(key, values) {... return result; } M a r c h p e n t a l o g. f r 24
25 Scaling MongoDB High Availability : system design approach which aims to provide operational performance Target : 99.99% (four nines) That means 1 hour of downtime per year Perspective : 90% = 36 days of downtime per year Before scaling MongoDB : Optimize queries (that includes indexing) Know your working set data Tune your filesystem (ext3 vs ext4) Use performance disks (seek time matters), RAID matters, SSD is awesome M a r c h p e n t a l o g. f r 25
26 Scaling MongoDB Replication Performed via Replica Sets Purpose : read scalability, data backup and automatic failover Transparent to the client application Master Slave replication Writes performed on Master, then replicated between slaves To avoid confusion with older versions of MongoDB Master = Primary Slave = Secondary Each member of the replica set is a mongod instance Recommended replica set configuration : 3 instances = Primary + 2 x Secondaries Minimum : 3 instances = Primary + Secondary + Arbiter Maximum : 12 instances, but only 7 voting Replica set should have an odd number of data instances M a r c h p e n t a l o g. f r 26
27 Scaling MongoDB Replication (continued) M a r c h p e n t a l o g. f r 27
28 Scaling MongoDB Replication (continued) Automatic replica set failover : master election Rigging the election the priority property of a mongod Between 0 and 100, default is 1 Types of replica set members : Secondary-only cannot become primary (priority = 0) Hidden priority = 0 and hidden = true Hidden from client applications Delayed slavedelay > 0. Changes on primary replicate after the specified delay. Should also be hidden Arbiters hold no data. Exist only to participate in elections (break ties) Non-Voting votes = 0 (default is 1). Data instances in replica sets with more than 7 nodes M a r c h p e n t a l o g. f r 28
29 Scaling MongoDB Replication (continued) Write Concern and replica sets Write Concern = level of guarantee that the server will provide in response to a write operation It's the client's responsibility and configurable on every operation Issue the getlasterror command after a write operation Values : Errors ignored = connection and server exceptions (e.g. duplicate key) are ignored Unacknowledged = client receives only connection errors Receipt acknowledged = client receives connection + server exceptions Journaled = server confirms write operation once it has been committed to the journal (if enabled) Default write concern : < November 2012 (Java < v2.10.0) Unaknowledged ( Fire and Forget ) >= November 2012 (Java >= v2.10.0) Receipt acknowledged M a r c h p e n t a l o g. f r 29
30 Scaling MongoDB Replication (continued) Write Concern and replica sets Specify replica set default write concern using getlasterrordefaults getlasterror parameters : j (boolean) : true to specify journaled write concern. Default false w : number of servers to replicate the write before returning Default 1 (only the primary) majority = replicate the write to half + 1 servers Can specify a number greater than the number of existing servers the write will never return Use together with wtimeout wtimeout : milliseconds to wait for write propagation If the write doesn't complete in the specified timeframe, getlasterror will return an error status fsync (boolean) : wait for the server to write data to disk before returning Default false Prefer j to ensure durability (performance hit) M a r c h p e n t a l o g. f r 30
31 Scaling MongoDB Partitioning Autosharding Kristina Chodorow Scaling MongoDB (feb. 2011, O'Reilly) At the collection level big collections split over several mongod instances MongoDB sharding goals : Make the cluster invisible to the client Cluster always available for reads and writes Cluster should be easy to expand Actors : Router mongos service Configuration service mongod --configsrv instance Data node mongod instance Client connects to the router Most important aspect choosing an appropriate shard key Future versions of MongoDB may provide support to generate shard keys M a r c h p e n t a l o g. f r 31
32 Scaling MongoDB Partitioning (continued) M a r c h p e n t a l o g. f r 32
33 Scaling MongoDB Partitioning (continued) Ultimate sharding goal have similar load on all partitions If you have most of the load on one partition, then you're doing it wrong mongos router Entry point for interacting with the cluster Dispatches queries to partitions based on the shard key No shard key used in the query it's dispatched to all partitions Doesn't hold any data Config server Lightweight instance that stores data used by mongos Stores the relationship between chunks and where they reside One instance for testing purposes Cluster of 3 config servers for production If one config server goes down sharding cluster becomes read-only If all config servers go down cluster read-only and until restarted mongos perform M a r c h p e n t a l o g. f r 33
34 Scaling MongoDB (continued) Large production deployment schema M a r c h p e n t a l o g. f r 34
35 Scaling MongoDB Afterthoughts Scaling involves losing the ability to examine the data as a single snapshot Consistency and durability versus performance Reflect on operation write concerns Flexible deployment mongod instances performing different roles Audit instances Reporting instances Snapshot instances Easy setup and administration (compared to other solutions) Partitioning should be planned ahead, don't wait until it's too late Adding shards involves initial performance loss as data is re-partitioned and moved between shards MongoDB autosharding : Good it's automatic Bad it's automatic Scaling is where MongoDB really shines M a r c h p e n t a l o g. f r 35
36 Spring Data - MongoDB Vendor : VMWare / SpringSource Licence : Apache Licence, Version 2.0 Current version : GA M a r c h p e n t a l o g. f r 36
37 Spring Data MongoDB (continued) Features : Templating Resource abstraction Configure connections to mongod / mongos instances Collection lifecycle (create / drop) MapReduce / Aggregation Object Mapping @Indexed etc. Classes mapped to collections, objects to documents Repository support Queries derived from method signatures Geospatial queries M a r c h p e n t a l o g. f r 37
38 Spring Data MongoDB (continued) Configuration : Usage : M a r c h p e n t a l o g. f r 38
39 Spring Data MongoDB (continued) Object Document Mapping (ODM) : M a r c h p e n t a l o g. f r 39
40 Spring Data MongoDB (continued) Repositories : Declare an interface extending MongoRepository<T, ID> Built-in methods for CRUD : save, findone, findall, delete Built-in pagination support Derive queries at runtime using the method signature M a r c h p e n t a l o g. f r 40
41 Cloud Catalog Demo Demo application using : MongoDB server Maven 3 Eclipse + m2e + m2e-wtp Spring (Core, Context, WebMVC and AOP) REST via Spring MVC controllers JSON views via Jackson Mapper Spring Data MongoDB Mongo Java Driver Deployed on Tomcat 7 E n j o y! M a r c h p e n t a l o g. f r 41
42 Downsides of MongoDB No absolute guarantees about data integrity Default consistency model eventual consistency Write concern < 2.2 unacknowledged >= 2.2 receipt acknowledged Don't store valuable data in MongoDB! No full transactional support atomic operations on a document level No joins could lead to a lot of document duplication Pay attention to spelling (using the driver in a strongly typed language reduces the risk) Data size on 32 bit machines approx. 2GB of data MapReduce is quite slow Slower reads / writes compared to RDBMS solutions and even other NoSQL storages Depends on the actual context, schema design M a r c h p e n t a l o g. f r 42
43 Strengths DevOps : Schema migrations become much easier Applications are inconsistency aware Self-healing data layer Batches which verify and fix data inconsistency Background index generation Dumping / restoring collections or databases is trivial Empowers the developers Free Replication and sharding very easy to set up and administer Horizontal scaling Hardware maintenance RAM mapped data files OS in charge of swapping Can be combined with other solutions (Solr, Hadoop etc) M a r c h p e n t a l o g. f r 43
44 Q u e s t i o n s? M a r c h p e n t a l o g. f r 44
45 References / Additional resources MongoDB documentation : MongoDB in Action : MongoDB downloads : Hadoop and MongoDB : Source code for this presentation : Repo BitBucket (Mercurial) Direct download: M a r c h p e n t a l o g. f r 45
46 T h ank you! p e n t a l o g. f r
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
More informationMONGODB - 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
More informationGetting 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.
More informationOn- Prem MongoDB- as- a- Service Powered by the CumuLogic DBaaS Platform
On- Prem MongoDB- as- a- Service Powered by the CumuLogic DBaaS Platform Page 1 of 16 Table of Contents Table of Contents... 2 Introduction... 3 NoSQL Databases... 3 CumuLogic NoSQL Database Service...
More informationNOSQL INTRODUCTION WITH MONGODB AND RUBY GEOFF LANE <GEOFF@ZORCHED.NET> @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
More informationMongoDB in the NoSQL and SQL world. Horst Rechner horst.rechner@fokus.fraunhofer.de Berlin, 2012-05-15
MongoDB in the NoSQL and SQL world. Horst Rechner horst.rechner@fokus.fraunhofer.de Berlin, 2012-05-15 1 MongoDB in the NoSQL and SQL world. NoSQL What? Why? - How? Say goodbye to ACID, hello BASE You
More informationScaling 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
More informationHumongous MongoDB. Sean Corfield World Singles llc
Humongous MongoDB Sean Corfield World Singles llc 1 Agenda Scaling MongoDB - Concepts Replica Sets & Sharding Read Preference, Write Concern, Etc Map/Reduce Aggregation 2 You Might Prefer... Queries and
More informationThe 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
More informationIntroduction 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
More informationMongoDB. 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
More informationNoSQL 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!
More informationNoSQL: 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
More informationCloud 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
More informationL7_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
More informationSURVEY 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
More informationOverview 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
More informationWhy 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
More informationMongoDB: 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
More informationBuilding Your First MongoDB Application
Building Your First MongoDB Application Ross Lawley Python Engineer @ 10gen Web developer since 1999 Passionate about open source Agile methodology email: ross@10gen.com twitter: RossC0 Today's Talk Quick
More informationScaling 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
More informationIntegrating 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
More information.NET User Group Bern
.NET User Group Bern Roger Rudin bbv Software Services AG roger.rudin@bbv.ch Agenda What is NoSQL Understanding the Motivation behind NoSQL MongoDB: A Document Oriented Database NoSQL Use Cases What is
More informationBig 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
More informationCan 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
More informationDocument 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
More informationAn 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
More informationBig 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
More informationBenchmarking 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
More informationMongoDB 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
More informationAnalytics 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
More informationIn 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
More informationAn 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
More informationDepartment of Software Systems. Presenter: Saira Shaheen, 227233 saira.shaheen@tut.fi 0417016438 Dated: 02-10-2012
1 MongoDB Department of Software Systems Presenter: Saira Shaheen, 227233 saira.shaheen@tut.fi 0417016438 Dated: 02-10-2012 2 Contents Motivation : Why nosql? Introduction : What does NoSQL means?? Applications
More informationNoSQL 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
More informationData Management in the Cloud
With thanks to Michael Grossniklaus! Data Management in the Cloud Lecture 8 Data Models Document: MongoDB I ve failed over and over and over again in my life. And that is why I succeed. Michael Jordan
More informationDr. 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
More informationStructured 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
More informationComparison of the Frontier Distributed Database Caching System with NoSQL Databases
Comparison of the Frontier Distributed Database Caching System with NoSQL Databases Dave Dykstra dwd@fnal.gov Fermilab is operated by the Fermi Research Alliance, LLC under contract No. DE-AC02-07CH11359
More informationPlease 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)
More informationBig Data Management. Big Data Management. (BDM) Autumn 2013. Povl Koch September 30, 2013 29-09-2013 1
Big Data Management Big Data Management (BDM) Autumn 2013 Povl Koch September 30, 2013 29-09-2013 1 Overview Today s program 1. Little more practical details about this course 2. Recap from last time 3.
More informationOpen Source Technologies on Microsoft Azure
Open Source Technologies on Microsoft Azure A Survey @DChappellAssoc Copyright 2014 Chappell & Associates The Main Idea i Open source technologies are a fundamental part of Microsoft Azure The Big Questions
More informationNoSQL 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
More informationAdvanced 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
More informationPractical Cassandra. Vitalii Tymchyshyn tivv00@gmail.com @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
More informationPerl & NoSQL Focus on MongoDB. Jean-Marie Gouarné http://jean.marie.gouarne.online.fr jmgdoc@cpan.org
Perl & NoSQL Focus on MongoDB Jean-Marie Gouarné http://jean.marie.gouarne.online.fr jmgdoc@cpan.org AGENDA A NoIntroduction to NoSQL The document store data model MongoDB at a glance MongoDB Perl API
More informationNoSQL - What we ve learned with mongodb. Paul Pedersen, Deputy CTO paul@10gen.com DAMA SF December 15, 2011
NoSQL - What we ve learned with mongodb Paul Pedersen, Deputy CTO paul@10gen.com DAMA SF December 15, 2011 DW2.0 and NoSQL management decision support intgrated access - local v. global - structured v.
More informationLecture 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
More informationDatabase Management System Choices. Introduction To Database Systems CSE 373 Spring 2013
Database Management System Choices Introduction To Database Systems CSE 373 Spring 2013 Outline Introduction PostgreSQL MySQL Microsoft SQL Server Choosing A DBMS NoSQL Introduction There a lot of options
More informationMongoDB. 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
More informationNoSQL Database Options
NoSQL Database Options Introduction For this report, I chose to look at MongoDB, Cassandra, and Riak. I chose MongoDB because it is quite commonly used in the industry. I chose Cassandra because it has
More informationIntroduction to Big Data Training
Introduction to Big Data Training The quickest way to be introduce with NOSQL/BIG DATA offerings Learn and experience Big Data Solutions including Hadoop HDFS, Map Reduce, NoSQL DBs: Document Based DB
More informationPHP 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
More informationBrad 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
More informationADVANCED 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
More informationA 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
More informationHBase A Comprehensive Introduction. James Chin, Zikai Wang Monday, March 14, 2011 CS 227 (Topics in Database Management) CIT 367
HBase A Comprehensive Introduction James Chin, Zikai Wang Monday, March 14, 2011 CS 227 (Topics in Database Management) CIT 367 Overview Overview: History Began as project by Powerset to process massive
More informationNot Relational Models For The Management of Large Amount of Astronomical Data. Bruno Martino (IASI/CNR), Memmo Federici (IAPS/INAF)
Not Relational Models For The Management of Large Amount of Astronomical Data Bruno Martino (IASI/CNR), Memmo Federici (IAPS/INAF) What is a DBMS A Data Base Management System is a software infrastructure
More informationMongoDB. 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
More informationextensible 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
More informationUsing MySQL for Big Data Advantage Integrate for Insight Sastry Vedantam sastry.vedantam@oracle.com
Using MySQL for Big Data Advantage Integrate for Insight Sastry Vedantam sastry.vedantam@oracle.com Agenda The rise of Big Data & Hadoop MySQL in the Big Data Lifecycle MySQL Solutions for Big Data Q&A
More information3 Case Studies of NoSQL and Java Apps in the Real World
Eugene Ciurana geecon@ciurana.eu - 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...
More informationMySQL é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. erno@component.hu www.component.hu 2013 (c) Component Soft Ltd Leading Hadoop Vendor Copyright 2013,
More informationNoSQL Databases. Polyglot Persistence
The future is: NoSQL Databases Polyglot Persistence a note on the future of data storage in the enterprise, written primarily for those involved in the management of application development. Martin Fowler
More informationIntroduction to Polyglot Persistence. Antonios Giannopoulos Database Administrator at ObjectRocket by Rackspace
Introduction to Polyglot Persistence Antonios Giannopoulos Database Administrator at ObjectRocket by Rackspace FOSSCOMM 2016 Background - 14 years in databases and system engineering - NoSQL DBA @ ObjectRocket
More informationJAVA IN THE CLOUD PAAS PLATFORM IN COMPARISON
JAVA IN THE CLOUD PAAS PLATFORM IN COMPARISON Eberhard Wolff Architecture and Technology Manager adesso AG, Germany 12.10. Agenda A Few Words About Cloud Java and IaaS PaaS Platform as a Service Google
More informationHDB++: HIGH AVAILABILITY WITH. l TANGO Meeting l 20 May 2015 l Reynald Bourtembourg
HDB++: HIGH AVAILABILITY WITH Page 1 OVERVIEW What is Cassandra (C*)? Who is using C*? CQL C* architecture Request Coordination Consistency Monitoring tool HDB++ Page 2 OVERVIEW What is Cassandra (C*)?
More informationComparing 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
More informationNoSQL and Hadoop Technologies On Oracle Cloud
NoSQL and Hadoop Technologies On Oracle Cloud Vatika Sharma 1, Meenu Dave 2 1 M.Tech. Scholar, Department of CSE, Jagan Nath University, Jaipur, India 2 Assistant Professor, Department of CSE, Jagan Nath
More informationThe evolution of database technology (II) Huibert Aalbers Senior Certified Executive IT Architect
The evolution of database technology (II) Huibert Aalbers Senior Certified Executive IT Architect IT Insight podcast This podcast belongs to the IT Insight series You can subscribe to the podcast through
More informationSpring Data, Jongo & Co. Java Persistenz-Frameworks für MongoDB
Spring Data, Jongo & Co. Java Persistenz-Frameworks für MongoDB Tobias.Trelle@codecentric.de @tobiastrelle codecentric AG 1 Tobias Trelle - Senior IT Consultant @ codecentric AG (Düsseldorf) - Organisator
More informationa year with a talk by Armin '@mitsuhiko' Ronacher for PyGrunn 2013
a year with mongodb a talk by Armin '@mitsuhiko' Ronacher for PyGrunn 2013 That's me. I do Computers. Currently at Fireteam / Splash Damage. We do Internet for Pointy Shooty Games. let's not beat around
More informationthese 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
More informationIntroduction to MongoDB. Kristina Chodorow kristina@mongodb.org
Introduction to MongoDB Kristina Chodorow kristina@mongodb.org Application PHP Apache Database Linux Application PHP IIS Windows Application PHP Apache Linux Application PHP Apache Linux Application PHP
More informationCertified 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
More informationHybrid Solutions Combining In-Memory & SSD
Hybrid Solutions Combining In-Memory & SSD Author: christos@gigaspaces.com Agenda 1 2 3 4 Overview of the big data technology landscape Building a high-speed SSD-backed data store Complex & compound queries
More informationConfiguration 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
More informationCSCC09F 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
More informationThe NoSQL Ecosystem, Relaxed Consistency, and Snoop Dogg. Adam Marcus MIT CSAIL marcua@csail.mit.edu / @marcua
The NoSQL Ecosystem, Relaxed Consistency, and Snoop Dogg Adam Marcus MIT CSAIL marcua@csail.mit.edu / @marcua About Me Social Computing + Database Systems Easily Distracted: Wrote The NoSQL Ecosystem in
More informationScalable Architecture on Amazon AWS Cloud
Scalable Architecture on Amazon AWS Cloud Kalpak Shah Founder & CEO, Clogeny Technologies kalpak@clogeny.com 1 * http://www.rightscale.com/products/cloud-computing-uses/scalable-website.php 2 Architect
More informationHow 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
More informationNoSQL Performance Test In-Memory Performance Comparison of SequoiaDB, Cassandra, and MongoDB
bankmark UG (haftungsbeschränkt) Bahnhofstraße 1 9432 Passau Germany www.bankmark.de info@bankmark.de T +49 851 25 49 49 F +49 851 25 49 499 NoSQL Performance Test In-Memory Performance Comparison of SequoiaDB,
More informationMyISAM Default Storage Engine before MySQL 5.5 Table level locking Small footprint on disk Read Only during backups GIS and FTS indexing Copyright 2014, Oracle and/or its affiliates. All rights reserved.
More informationUnderstanding NoSQL Technologies on Windows Azure
David Chappell Understanding NoSQL Technologies on Windows Azure Sponsored by Microsoft Corporation Copyright 2013 Chappell & Associates Contents Data on Windows Azure: The Big Picture... 3 Windows Azure
More informationnosql and Non Relational Databases
nosql and Non Relational Databases Image src: http://www.pentaho.com/big-data/nosql/ Matthias Lee Johns Hopkins University What NoSQL? Yes no SQL.. Atleast not only SQL Large class of Non Relaltional Databases
More informationBig 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
More informationPreparing Your Data For Cloud
Preparing Your Data For Cloud Narinder Kumar Inphina Technologies 1 Agenda Relational DBMS's : Pros & Cons Non-Relational DBMS's : Pros & Cons Types of Non-Relational DBMS's Current Market State Applicability
More informationNoSQL 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,
More informationNoSQL 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
More informationIntroduction 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
More informationOpen source, high performance database
Open source, high performance database Anti-social Databases: NoSQL and MongoDB Will LaForest Senior Director of 10gen Federal will@10gen.com @WLaForest 1 SQL invented Dynamic Web Content released IBM
More informationDatabase Scalability and Oracle 12c
Database Scalability and Oracle 12c Marcelle Kratochvil CTO Piction ACE Director All Data/Any Data marcelle@piction.com Warning I will be covering topics and saying things that will cause a rethink in
More informationCloudant Querying Options
Cloudant Querying Options Agenda Indexing Options Primary Views/MapReduce Search Geospatial Cloudant Query Review What s New Live Tutorial 5/20/15 2 Reading & Writing Basics POST / /_bulk_docs
More informationThis guide specifies the required and supported system elements for the application.
System Requirements Contents System Requirements... 2 Supported Operating Systems and Databases...2 Features with Additional Software Requirements... 2 Hardware Requirements... 4 Database Prerequisites...
More informationHadoop and Map-Reduce. Swati Gore
Hadoop and Map-Reduce Swati Gore Contents Why Hadoop? Hadoop Overview Hadoop Architecture Working Description Fault Tolerance Limitations Why Map-Reduce not MPI Distributed sort Why Hadoop? Existing Data
More information6 CURRENT JOB OPENINGS:
TO ALL GRADUATING STUDENTS: Looking for an opportunity to enter the exciting Mobile App Development industry? We have the right place for you and we want you! We are Singapore s pioneering mobile app development
More informationBig 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
More informationSQL VS. NO-SQL. Adapted Slides from Dr. Jennifer Widom from Stanford
SQL VS. NO-SQL Adapted Slides from Dr. Jennifer Widom from Stanford 55 Traditional Databases SQL = Traditional relational DBMS Hugely popular among data analysts Widely adopted for transaction systems
More informationProgramming Hadoop 5-day, instructor-led BD-106. MapReduce Overview. Hadoop Overview
Programming Hadoop 5-day, instructor-led BD-106 MapReduce Overview The Client Server Processing Pattern Distributed Computing Challenges MapReduce Defined Google's MapReduce The Map Phase of MapReduce
More informationHacettepe 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
More information