+ All Categories
Home > Documents > Adam Marcus MIT CSAIL [email protected] / · PDF filecomponents Monolithic System System...

Adam Marcus MIT CSAIL [email protected] / · PDF filecomponents Monolithic System System...

Date post: 15-Mar-2018
Category:
Upload: phamnhan
View: 214 times
Download: 0 times
Share this document with a friend
69
The NoSQL Ecosystem Adam Marcus MIT CSAIL [email protected] / @marcua
Transcript
Page 1: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

The NoSQL Ecosystem

Adam MarcusMIT CSAIL

[email protected] / @marcua

Page 2: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

About Me

● Social Computing + Database Systems● Easily Distracted: Wrote The NoSQL Ecosystem in

The Architecture of Open Source Applications 1

1 http://www.aosabook.org/en/nosql.html

Page 3: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

History, Compressed

Late 1990s Today

Page 4: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

History, Compressed

Late 1990s Today

Buy RAM

Page 5: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

History, Compressed

Late 1990s

Wrap RDBMSs

Today

Buy RAM

Page 6: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

History, Compressed

NoSQL

Late 1990s

Wrap RDBMSs

Today

Buy RAM

Page 7: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

History, Compressed

NoSQL

Late 1990s

Wrap RDBMSs

Today

Buy RAM

Not Only SQL

Page 8: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

History, Compressed

NoSQL

Late 1990s

Wrap RDBMSs

Today

Buy RAM Commercialize

Page 9: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

History, Compressed

NoSQL

Late 1990s

Wrap RDBMSs

Today

Buy RAM Commercialize

Page 10: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

The List, So You Don't Yell at Me

Cassandra

HBase

Voldemort

Riak

RedisMongoDB

HyperTable

Neo4j

HyperGraphDBDEX

InfoGrid

VertexDB

Sones

CouchDB

AllegroGraph

BerkeleyDB

Oracle NoSQLMemcacheDBTokyo Cabinet

FlockDB

Page 11: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

The List, So You Don't Yell at Me

Cassandra

HBase

Voldemort

Riak

RedisMongoDB

HyperTable

Neo4j

HyperGraphDBDEX

InfoGrid

VertexDB

Sones

CouchDB

AllegroGraph

BerkeleyDB

Oracle NoSQLMemcacheDBTokyo Cabinet

FlockDB

Marcus' Law of Databases:

The number of persistence options doubles every 1.5 years

Page 12: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

The List, So You Don't Yell at Me

Cassandra

HBase

Voldemort

Riak

RedisMongoDB

HyperTable

Neo4j

HyperGraphDBDEX

InfoGrid

VertexDB

Sones

CouchDB

AllegroGraph

BerkeleyDB

Oracle NoSQLMemcacheDBTokyo Cabinet

FlockDB

Marcus' Law of Databases:

The number of persistence options doubles every 1.5 years

Corollary:I'm sorry I missed your

persistence option

Page 13: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

interesting properties

real-world usage

takeaways

questions

Page 14: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

interesting properties

real-world usage

takeaways

questions

Page 15: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

Conventional Wisdom on NoSQL

● Key-based data model● Sloppy schema● Single-key transactions● In-app joins● Eventually consistent

Page 16: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

Exceptions are More Interesting

● Data Model● Query Model● Transactions● Consistency

Page 17: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

Data Model

● Usually key-based...● Column-families● Documents● Data structures

Page 18: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

Data Model

● Usually key-based...● Column-families● Documents● Data structures

● ...but not always● Graph stores

Page 19: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

Query Model

● Redis: data structure-specific operations● CouchDB, Riak: MapReduce● Cassandra, MongoDB: SQL-like languages, no

joins or transactions

Page 20: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

Query Model

● Redis: data structure-specific operations● CouchDB, Riak: MapReduce● Cassandra, MongoDB: SQL-like languages, no

joins or transactions● Third-party

● High-level: PigLatin, HiveQL● Library: Cascading, Crunch● Streaming: Flume, Kafka, S4, Scribe

Page 21: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

Transactions

● Full ACID for single key● Redis: multi-key single-node transactions

Page 22: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

Consistency

● Strong: Appears that all replicas see all writes● Eventual: Replicas may have different, divergent versions

Page 23: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

Consistency

● Strong: Appears that all replicas see all writes● Eventual: Replicas may have different, divergent versions

● Dynamo: strong or eventual (quorum size)

Page 24: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

Consistency

● Strong: Appears that all replicas see all writes● Eventual: Replicas may have different, divergent versions

● Dynamo: strong or eventual (quorum size)

● PNUTs: Timeline consistency● ...many consistency models!

See: http://www.allthingsdistributed.com/2007/12/eventually_consistent.html

Page 25: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

interesting properties

real-world usage

takeaways

questions

Page 26: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

NoSQL Use-cases

● Cassandra● HBase● MongoDB

Page 27: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

Cassandra

● BigTable data model: key column family● Dynamo sharding model: consistent hashing● Eventual or strong consistency

Page 28: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

Cassandra at Netflix

● Transitioned from Oracle● Store customer profiles, customer:movie watch

log, and detailed usage logging

Note: no multi-record locking (e.g., bank transfer)

In-datacenter: 3 replicas, per-app consistency

read/write quorum = 1, ~1ms latency

read/write quorum = 2, ~3ms latency

“Replicating Datacenter Oracle with Global Apache Cassandra on AWS” by Adrian Cockcroft http://www.slideshare.net/adrianco/migrating-netflix-from-oracle-to-global-cassandra

Page 29: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

Cassandra at Netflix

● Transitioned from Oracle● Store customer profiles, customer:movie watch

log, and detailed usage logging ● Note: no multi-record locking (e.g., bank transfer)

In-datacenter: 3 replicas, per-app consistency

read/write quorum = 1, ~1ms latency

read/write quorum = 2, ~3ms latency

“Replicating Datacenter Oracle with Global Apache Cassandra on AWS” by Adrian Cockcroft http://www.slideshare.net/adrianco/migrating-netflix-from-oracle-to-global-cassandra

Page 30: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

Cassandra at Netflix

● Transitioned from Oracle● Store customer profiles, customer:movie watch

log, and detailed usage logging ● Note: no multi-record locking (e.g., bank transfer)

● In-datacenter: 3 replicas, per-app consistency

“Replicating Datacenter Oracle with Global Apache Cassandra on AWS” by Adrian Cockcroft http://www.slideshare.net/adrianco/migrating-netflix-from-oracle-to-global-cassandra

Page 31: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

Cassandra at Netflix (cont'd)

● Benefit: async inter-datacenter replication● Benefit: no downtime for schema changes● Benefit: hooks for live backups

Page 32: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

HBase

● Data model: key column family● Sharding model: range partitioning● Strong consistency

Applications

Logging events/crawls, storing analytics

Twitter: replicate data from MySQL, Hadoop analytics

Facebook Messages

Page 33: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

HBase

● Data model: key column family● Sharding model: range partitioning● Strong consistency

● Applications● Logging events/crawls, storing analytics● Twitter: replicate data from MySQL, Hadoop analytics● Facebook Messages

Page 34: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

HBase for Facebook Messages

● Cassandra/Dynamo eventual consistency was difficult to program against

Benefit: simple consistency model

Benefit: flexible data model

Benefit: simple sharding, load balancing, replication

Page 35: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

HBase for Facebook Messages

● Cassandra/Dynamo eventual consistency was difficult to program against

● Benefit: simple consistency model● Benefit: flexible data model● Benefit: simple sharding, load balancing,

replication

Page 36: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

MongoDB

● Document-based data model● Range-based partitioning● Consistency depends on how you use it

Page 37: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

MongoDB: Two use-cases

● Archiving at Craigslist● 2.2B historical posts, semi-structured● Relatively large blobs: avg 2KB, max > 4 MB

Page 38: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

MongoDB: Two use-cases

● Archiving at Craigslist● 2.2B historical posts, semi-structured● Relatively large blobs: avg 2KB, max > 4 MB

● Checkins at Foursquare● Geospatial indexing● Small location-based updates, sharded on user

Page 39: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

interesting properties

real-world usage

takeaways

questions

Page 40: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

Takeaways

● Developer accessibility● Ecosystem of reuse● Soft spot

Page 41: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

Developer Accessibility

Page 42: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

Developer Accessibilitydevops

@DEVOPS_BORAT

Page 43: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

Developer Accessibilitydevops

@DEVOPS_BORAT

self-taught dev

Page 44: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

A Different Five-Minute Rule

What does a first-time user of your system experience in their first five minutes? (idea credit: Justin Sheehy, Basho)

Page 45: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

Redis

http://simonwillison.net/2009/Oct/22/redis/

Page 46: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

PostgreSQL

http://www.postgresql.org/docs/9.1/interactive/sql-createtable.html

Page 47: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

Cassandra

http://www.datastax.com/docs/0.7/getting_started/using_cli

Page 48: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

Accessibility is Forever

Beyond five minutes: ● changing schemas● scaling up● modifying topology

Page 49: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

Accessibility is Forever

Beyond five minutes: ● changing schemas● scaling up● modifying topology

An accessible data store will ease first-time users in, and support

experienced users as they expand

Page 50: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

Ecosystem of Reuse

Page 51: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

Spectrum of Reusability

Monolithic System System Kernel

Page 52: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

Spectrum of Reusability

MongoDBRedis

Use as provided

Monolithic System System Kernel

Page 53: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

Spectrum of Reusability

MongoDBRedis

CassandraVoldemort

Use as provided

Pick between components

Monolithic System System Kernel

Page 54: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

Spectrum of Reusability

MongoDBRedis

CassandraVoldemort

Use as provided

Pick between components

ZooKeeperLevelDB

Reusablecomponents

Monolithic System System Kernel

Page 55: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

Spectrum of Reusability

MongoDBRedis

CassandraVoldemort

Use as provided

Pick between components

riak_coreZooKeeperLevelDB

Reusablecomponents

Build yourown system

Monolithic System System Kernel

Page 56: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

And finally, a soft spot

Page 57: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

polyglot persistence=

right tool for right task

Page 58: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

Polyglot persistence: Where's the data?

“HBase at Mendeley,” Dan Harvey http://www.slideshare.net/danharvey/hbase-at-mendeley

Page 59: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

Polyglot persistence: Where's the data?

“HBase at Mendeley,” Dan Harvey http://www.slideshare.net/danharvey/hbase-at-mendeley

Page 60: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

Polyglot persistence: Where's the data?

“HBase at Mendeley,” Dan Harvey http://www.slideshare.net/danharvey/hbase-at-mendeley

Aid developers in reasoning about data consistency across multiple storage engines

Page 61: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

interesting properties

real-world usage

takeaways

questions

Page 62: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

● Systems: Polyglot persistence + data consistency?

Page 63: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

● Systems: Polyglot persistence + data consistency?● Operations: Availability/consistency/latency tradeoffs in

datacenters?

Page 64: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

● Systems: Polyglot persistence + data consistency?● Operations: Availability/consistency/latency tradeoffs in

datacenters?● Accessibility: RDBMS five-minute usability?

Page 65: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

● Systems: Polyglot persistence + data consistency?● Operations: Availability/consistency/latency tradeoffs in

datacenters?● Accessibility: RDBMS five-minute usability?● Accessibility: Scale-up wizard for storage systems?

Page 66: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

● Systems: Polyglot persistence + data consistency?● Operations: Availability/consistency/latency tradeoffs in

datacenters?● Accessibility: RDBMS five-minute usability?● Accessibility: Scale-up wizard for storage systems?● Comparisons: Design or implementation?

Page 67: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

● Systems: Polyglot persistence + data consistency?● Operations: Availability/consistency/latency tradeoffs in

datacenters?● Accessibility: RDBMS five-minute usability?● Accessibility: Scale-up wizard for storage systems?● Comparisons: Design or implementation?● Future: Next-generation NoSQL stores?

Page 68: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

Thank You!

Adam [email protected] / @marcua

● Systems: Polyglot persistence + data consistency?● Operations: Availability/consistency/latency tradeoffs in

datacenters?● Accessibility: RDBMS five-minute usability?● Accessibility: Scale-up wizard for storage systems?● Comparisons: Design or implementation?● Future: Next-generation NoSQL stores?

Page 69: Adam Marcus MIT CSAIL marcua@csail.mit.edu / · PDF filecomponents Monolithic System System Kernel. Spectrum of Reusability MongoDB Redis Cassandra Voldemort Use as provided ... Accessibility:

Photo Credits

http://www.flickr.com/photos/dhannah/4577657955/

http://www.flickr.com/photos/27316226@N02/3000888100/sizes/m/in/photostream/

http://www.texample.net/tikz/examples/valentine-heart/

http://voltdb.com/sites/default/files/VCE_button.png


Recommended