MongoDB : What, why, when.

41
MongoDB: What, why, when. Solutions Architect, MongoDB Inc. Massimo Brignoli #mongodb

description

MongoDB : What, why, when. Massimo Brignoli. # mongodb. Solutions Architect, MongoDB Inc. Who Am I?. Solutions Architect/Evangelist in MongoDB Inc. 24 years of experience in databases and software development Former MySQL employee Previous life: web, web, web. Innovation. - PowerPoint PPT Presentation

Transcript of MongoDB : What, why, when.

Page 1: MongoDB : What, why, when.

MongoDB: What, why, when.

Solutions Architect, MongoDB Inc.Massimo Brignoli

#mongodb

Page 2: MongoDB : What, why, when.

Who Am I?

• Solutions Architect/Evangelist in MongoDB Inc.

• 24 years of experience in databases and software development

• Former MySQL employee• Previous life: web, web, web

Page 3: MongoDB : What, why, when.

Innovation

Page 4: MongoDB : What, why, when.

Understanding Big Data – It’s Not Very “Big”

from Big Data Executive Summary – 50+ top executives from Government and F500 firms

64% - Ingest diverse, new data in real-time

15% - More than 100TB of data20% - Less than 100TB (average of all? <20TB)

Page 5: MongoDB : What, why, when.

“I have not failed. I've just found 10,000 ways that won't work.” ― Thomas A. Edison

Page 6: MongoDB : What, why, when.

Back in 1970…Cars Were Great!

Page 7: MongoDB : What, why, when.

Lots of Great Innovations Since 1970

Page 8: MongoDB : What, why, when.

Would you use these technologies for your business today?

Page 9: MongoDB : What, why, when.

Including the Relational Database

Page 10: MongoDB : What, why, when.

For which computers the relational model has been designed for?

Page 11: MongoDB : What, why, when.

So Were Computers!

Page 12: MongoDB : What, why, when.

And Storage!

Page 13: MongoDB : What, why, when.

RDBMS Makes Development Hard

Relational Database

Object Relational MappingApplication

Code XML Config DB Schema

Page 14: MongoDB : What, why, when.

And Even Harder To IterateNew Table

New Table

New Colum

n

Name Pet Phone Email

New Colum

n

3 months later…

Page 15: MongoDB : What, why, when.

RDBMS

From Complexity to SimplicityMongoDB

{ _id : ObjectId("4c4ba5e5e8aabf3"), employee_name: "Dunham, Justin", department : "Marketing", title : "Product Manager, Web", report_up: "Neray, Graham", pay_band: “C", benefits : [ { type :  "Health", plan : "PPO Plus" }, { type :   "Dental", plan : "Standard" }

] }

Page 16: MongoDB : What, why, when.

MongoDBThe leading NoSQL database

Document Database

Open-Source

General Purpose

Page 17: MongoDB : What, why, when.

7,000,000+ MongoDB Downloads

150,000+ Online Education Registrants

25,000+ MongoDB User Group Members

25,000+ MongoDB Days Attendees

20,000+ MongoDB Management Service (MMS) Users

Global Community

Page 18: MongoDB : What, why, when.

To provide the best database for how we build and run apps today

MongoDB Vision

Build– New and complex

data– Flexible– New languages– Faster development

Run– Big Data scalability– Real-time– Commodity hardware– Cloud

Page 19: MongoDB : What, why, when.

Enterprise Big Data Stack

EDWHadoop

Man

agem

ent &

Mon

itorin

gSecurity &

Auditing

RDBMS

CRM, ERP, Collaboration, Mobile, BI

OS & Virtualization, Compute, Storage, Network

RDBMS

Applications

Infrastructure

Data Management

Online Data Offline Data

Page 20: MongoDB : What, why, when.

Agile

MongoDB Overview

Scalable

Page 21: MongoDB : What, why, when.

Operational Database Landscape

Page 22: MongoDB : What, why, when.

Document Data Model

Relational MongoDB{ first_name: ‘Paul’, surname: ‘Miller’, city: ‘London’, location: [45.123,47.232], cars: [ { model: ‘Bentley’, year: 1973, value: 100000, … }, { model: ‘Rolls Royce’, year: 1965, value: 330000, … } ]}

Page 23: MongoDB : What, why, when.

Document Model Benefits

• Agility and flexibility– Data models can evolve easily– Companies can adapt to changes quickly

• Intuitive, natural data representation– Developers are more productive– Many types of applications are a good fit

• Reduces the need for joins, disk seeks– Programming is more simple– Performance can be delivered at scale

Page 24: MongoDB : What, why, when.

Developers are more productive

Page 25: MongoDB : What, why, when.

Developers are more productive

Page 26: MongoDB : What, why, when.

Automatic Sharding

• Three types of sharding: hash-based, range-based, tag-aware

• Increase or decrease capacity as you go

• Automatic balancing

Page 27: MongoDB : What, why, when.

Query Routing

• Multiple query optimization models

• Each sharding option appropriate for different apps

Page 28: MongoDB : What, why, when.

High Availability – Ensure application availability during many types of failures

Disaster Recovery – Address the RTO and RPO goals for business continuity

Maintenance – Perform upgrades and other maintenance operations with no application downtime

Availability Considerations

Page 29: MongoDB : What, why, when.

Replica Sets

• Replica Set – two or more copies

• “Self-healing” shard

• Addresses many concerns:

- High Availability

- Disaster Recovery

- Maintenance

Page 30: MongoDB : What, why, when.

Single Data Center

• Automated failover

• Tolerates server failures

• Tolerates rack failures

• Number of replicas defines failure tolerance

Primary – A Primary – B Primary – C

Secondary – A

Secondary – A

Secondary – B

Secondary – B

Secondary – C

Secondary – C

Page 31: MongoDB : What, why, when.

Active/Standby Data Center

• Tolerates server and rack failure

• Standby data center

Data Center - West

Primary – A Primary – B Primary – C

Secondary – A

Secondary – B

Secondary – C

Data Center - East

Secondary – A

Secondary – B

Secondary – C

Page 32: MongoDB : What, why, when.

Active/Active Data Center

• Tolerates server, rack, data center failures, network partitions

Data Center - West

Primary – A Primary – B Primary – C

Secondary – A

Secondary – B

Secondary – C

Data Center - East

Secondary – A

Secondary – B

Secondary – C

Secondary – B

Secondary – C

Secondary – A

Data Center - Central

Arbiter – A Arbiter – B Arbiter – C

Page 33: MongoDB : What, why, when.

Global Data Distribution

Real-time

Real-time Real-time

Real-time

Real-time

Real-time

Real-time

Primary

Secondary

Secondary

Secondary

Secondary

Secondary

Secondary

Secondary

Page 34: MongoDB : What, why, when.

Read Global/Write Local

Primary:NYC

Secondary:NYC

Primary:LON

Primary:SYD

Secondary:LON

Secondary:NYC

Secondary:SYD

Secondary:LON

Secondary:SYD

Page 35: MongoDB : What, why, when.

Common Use Cases

Page 36: MongoDB : What, why, when.

High Volume Data Feeds

• More machine forms, sensors & data

• Variably structured

Machine Generated

Data

• High frequency trading• Daily closing price

Securities Data

• Multiple data sources• Each changes their format

consistently• Student Scores, ISP logs

Social Media /General Public

Page 37: MongoDB : What, why, when.

Operational Intelligence

• Large volume of users• Very strict latency requirements• Sentiment Analysis

Ad Targeting

• Expose data to millions of customers

• Reports on large volumes of data• Reports that update in real time

Real time dashboards

• Join the conversation• Catered Games • Customized Surveys

Social Media Monitoring

Page 38: MongoDB : What, why, when.

Metadata

• Diverse product portfolio• Complex querying and filtering• Multi-faceted product attributes

Product Catalogue

• Data mining• Call records• Insurance Claims

Data analysis

• Retina Scans• FingerprintsBiometric

Page 39: MongoDB : What, why, when.

Content Management• Comments and user generated

content• Personalization of content and

layoutNews Site

• Generate layout on the fly• No need to cache static pages

Multi-device rendering

• Store large objects• Simpler modeling of metadataSharing

Page 40: MongoDB : What, why, when.

Questions?

Page 41: MongoDB : What, why, when.

Thanks!

@massimobrignoli

Massimo Brignoli

#MongoDB

Solutions Architect, MongoDB Inc.

[email protected]