Online Mind Mapping and Brainstorming

Create your own awesome maps

Online Mind Mapping and Brainstorming

Even on the go

with our free apps for iPhone, iPad and Android

Get Started

Already have an account? Log In

Intro to NoSQL & Cassandra, Ran Tavori by Mind Map: Intro to NoSQL & Cassandra, Ran Tavori
5.0 stars - 1 reviews range from 0 to 5

Intro to NoSQL & Cassandra, Ran Tavori

About

@rantav

@outbrain

http://prettyprint.me

NoSQL

Not Only not No

SQL is Good

Problem

In Internet Scale

Social Apps - not banks

Usage

Scaling solutions

Replication

Sharding

Brewer's CAP theorem

Berkley proffessor & CTO of Akamai

needed to deal with

& found that

as apps gets larger, partition toelrance is a must

so you need to choose between consistency & availability

A+C (no partition tolerance)

C + P

A + P

Consistency levels

Strong

Weak

Eventual

NoSQL examples

BigTable

Dynamo

Cassandra

MongoDB

CouchDB

Hbase

Cassandra

Developed at FaceBook

Data model of BigTable

Network mgmt modelled on Dynamo

2 developers that worked on Amazon's Dynamo, & didn't like it there

Implemented in Java

distributed

"Down to earth" Consistency

N/R/W

typical values

N defined on server

different R/W setups on different column-families, API calls, clients &c

Data model

Forget SQL

Column-Based

scales really well

denormalization is a must

Vocabulary

API

programmatic not declarative

support many languauges

API

also meta-api

not convenient

written in Thrift

Map/Reduce also supported, in an extension, not part of the API

You usually

If Key-Value works, use it

Else, if Column-based works, use it

Else, if Document-oriented works, use it

Else, use SQL

Your main consideration

How much Data will you have

Unfortunately, it's hard to know in advance..

SQL over NoSQL

e.g.

also SQL vendors offering scaling similar to NoSQL

Eventually data-store solutions will merge

RDBMS will offer NoSQL features

NoSQL will feature RDBMS features