+ All Categories
Home > Software > To SQL or NoSQL, That is the Question

To SQL or NoSQL, That is the Question

Date post: 12-Aug-2015
Category:
Upload: sirketchup
View: 273 times
Download: 0 times
Share this document with a friend
19
TO SQL OR NOSQL? That is the question Senior Solutions Architect, Couchba DAVID OSTROVSKY
Transcript

TO SQL OR NOSQL?That is the question

Senior Solutions Architect, Couchbase

DAVID OSTROVSKY

New != Better (Sometimes)

SQLRelational

KnownMature

NoSQLFlexible

NewSexy

Taxonomy

APEHairySmart

Lovable

NoAPEHairy

FeatheryEdible

Documents and objects and graphs, oh my!Key-Value

Memcached

Couchbase

Neo4j

Google BigTable

RavenDB

GraphBase

Key-Value Storesvar someString = “Hello, I’m a string!”;var someObject = new User { … };var aSet = new Set { “a”, “b”, “c” };

“someString” 010101010101…

“someObject” 010101010101….

“aSet” 0101, 1010, 111….

“aMap” “a” : 101, “b” : 1010 Get

Set

Documents and objects and graphs, oh my!Key-Value

Memcached

Document

Couchbase

Neo4j

Google BigTable

RavenDB

GraphBase

Document StoresUserId Name Age CityId

01 John 35 002

02 Dave 18 003{ "name": "John", "age": 35, "address": {

"city": "New York","street": "…"

}}

Documents and objects and graphs, oh my!Key-Value

Memcached

Document

Couchbase

Neo4j

Google BigTable

RavenDB

GraphBase

Row

Partitioned Row StoresRow Key Personal Address

User Id Name Age City Zip

01 John 41 New York 10001

02 Dave 36 Seattle 98101

Version 1 34

Version 2 35

Version 3 36

Documents and objects and graphs, oh my!Key-Value

Memcached

Document

Column

Couchbase

Neo4j

Google BigTable

RavenDB

GraphBase

Row

Column Oriented DatabasesUserId Name Age City

01 John 35 New York

02 Dave 18 Seattle

03 Mary 29 New York

04 Bob 47 London

… New York:001,003 ; Seattle:002 ; London: 004 …

… UserId:01 ; Name: John ; Age: 35 ; City: New York …

Documents and objects and graphs, oh my!Key-Value

Memcached

Document

Column

Graph

Couchbase

Neo4j

Google BigTable

RavenDB

GraphBase

Row

Graph DatabasesName Type From To Relationship TypeAmada Emory Female 1 11 MOTHER_OFRana Seely Female 1 12 MOTHER_OF

A BMOTHER

(A) – [:MOTHER] -> (B)

NoSQL-ing the SQL

???

vailability

The CAP Theorem

A

C PPick Two

artition Tolerance

onsistency

The Futility of Benchmarks

Y U NO HELP?

Search, a different beast altogether

SELECT * FROM pictures WHERE animal = “Cat”;

Migrations are Hard

????

Summing it all up

• New != Better• Performance is in the eye of the beholder• You are not Facebook*• One database to rule them all works for hobbits, not so

much for giants

* Unless you are. @DavidOstrovsky


Recommended