why nosql makes sense

13
Why NoSQL Makes Sense Why NoSQL Makes Sense NoSQL Now Dwight Merriman / 10gen Dwight Merriman / 10gen

Upload: dataversity

Post on 27-May-2015

1.290 views

Category:

Technology


1 download

DESCRIPTION

Former DoubleClick Founder and CTO Dwight Merriman wrote the first lines of MongoDB code in 2007. He drew upon his experiences building large scale, high availability, robust systems to create a new kind of database. This session will introduce some of the background to how and why MongoDB came about to address the need for a more scalable database, and provide some key use cases and rationale for a new product category in the database marketplace.

TRANSCRIPT

Page 1: Why NoSQL Makes Sense

Why NoSQL Makes SenseWhy NoSQL Makes Sense

NoSQL NowDwight Merriman / 10genDwight Merriman / 10gen

Page 2: Why NoSQL Makes Sense

signs we needed something differentsigns we needed something different

• doubleclick ‐ 400,000 ads/second• people writing their own stores• people writing their own stores• caching is de rigueur• complex ORM frameworks• computer architecture trendsp• cloud computing

Page 3: Why NoSQL Makes Sense

the db space 2000 ‐ 2010the db space 2000  2010

+ great for complex d h i transactions

+ great for tabular data+ ad hoc queries easy‐ O<‐>R mapping hard

+ ad hoc queries easy+ SQL gives us a standard protocol for the interface between clients and 

OLTP / i l

BI / i

‐ speed/scale challenges‐ not super agile

servers+ scales horizontally better than operational dbs. some scale limits at 

i l operationalreportingmassive scale‐ schemas are rigid‐ real time is hard; very good at bulk nightly data loadsloads

Page 4: Why NoSQL Makes Sense

the db space 2000 ‐ 2010the db space 2000  2010

+ great for complex d h i transactions

+ great for tabular data+ ad hoc queries easy‐ O<‐>R mapping hard

+ ad hoc queries easy+ SQL gives us a standard protocol for the interface between clients and 

OLTP / i l

BI / i

‐ speed/scale challenges‐ not super agile

servers+ scales horizontally better than operational dbs. some scale limits at 

i l operationalreportingmassive scale‐ schemas are rigid‐ real time is hard; very good at bulk nightly data loadsloads

less issues here

Page 5: Why NoSQL Makes Sense

the db space 2000 ‐ 2010the db space 2000  2010

+ great for complex d h i transactions

+ great for tabular data+ ad hoc queries easy‐ O<‐>R mapping hard

+ ad hoc queries easy+ SQL gives us a standard protocol for the interface between clients and 

OLTP / i l

BI / i

‐ speed/scale challenges‐ not super agile

servers+ scales horizontally better than operational dbs. some scale limits at 

i l operationalreportingmassive scale‐ schemas are rigid‐ real time is hard; very good at bulk nightly data loads

caching

loads

flat filesmap/reduce

app layer partitioning

Page 6: Why NoSQL Makes Sense

the db spacethe db space+ fits OO programming 

ll

l bl

well+ agile+ speed/scale‐ querying a little less dd hscalable 

nonrelational(“nosql”)BI / reporting

add hoc‐ not super transactional‐ not sql

OLTP /OLTP / operational

Page 7: Why NoSQL Makes Sense

data models

Page 8: Why NoSQL Makes Sense

as simple as possible b lbut no simpler

Page 9: Why NoSQL Makes Sense

as simple as possible b lbut no simpler

• need a good degree of functionality to handle a large set of use cases– sometimes need strong consistency / atomicity– secondary indexes– ad hoc queries

Page 10: Why NoSQL Makes Sense

as simple as possible b lbut no simpler

• but, leave out a few things so we can scale– no choice but to leave out relational– distributed transactions are hard to scale

Page 11: Why NoSQL Makes Sense

as simple as possible b lbut no simpler

• to scale, need a new data model.  some options:– key/value– columnar / tabular– document oriented (JSON inspired)

• opportunity to innovate ‐> agilitypp y g y

Page 12: Why NoSQL Makes Sense

mongodb philosphymongodb philosphy

N l i fit ll b t t 12 t l ith• No longer one‐size‐fits all.  but not 12 tools either.• By reducing transactional semantics the db provides, one can still solve an 

interesting set of problems where performance is very important, and hori ontal scaling then becomes easierhorizontal scaling then becomes easier.

• Non‐relational (no joins) makes scaling horizontally practical• Document data models are good• Keep functionality when we can (key/value stores are great, but we nee 

more)• Database technology should run anywhere, being available both for 

running on your own servers or VMs, and also as a cloud pay‐for‐what‐you‐use service.  And ideally open source...

Page 13: Why NoSQL Makes Sense

Questions?

http://blog.mongodb.org/@mongodbme ‐@dmerrme  @dmerr

www.mongodb.orghtt // l / / dbhttp://groups.google.com/group/mongodb‐user

irc://irc.freenode.net/#mongodb

thanks