NoSQL
Re-thinK the world
NoSQL
        Not Only SQL


next-generation databases
modern web-scale databases
RDBMs Problem
     Design for ACID

Hard to scale

Availability?

Flexibility
Possible Solutions


Oracle/Sybase

Mysql/PostgreSQL Cluster/Replica

Super-powered Computer
Unnecessarily Complex but just better
Characteristics

Non-Relational

Distributed

Horizontal Scalability

Schema-less/Schema-free

Eventual Consistency
Category


Key-Value stores

Document stores

Column-oriented stores

Graph Databases
Key-Value Store
            hash
Memcached

Dynamo

Redis

Riak

Tokyo Cabinet
Document Stores
    semi-structure

IBM Lotus

MongoDB

CouchDB
Column-Oriented Stores
    semi-structure

 BigTable (inspiration source)

 HBase

 Cassandra

 Hypertable
Graph Database



InfoGrid

Neo4j
Ruby/Rails Integration
NoSQL Database         Ruby               Rails
     Redis           redis-rb              ohm
    ...
Brewer’s CAP Theorem

             Consistency          Availability




                   Partitions Tolerance



You ca...
Decision?

Consistency            Availability
    ?                          ?



        Partitions Tolerance
BigTable        Cassandra
        HBase         SimpleDB
Consistency               Availability
      MongoDB         Couc...
Activities

Google

Facebook

Yahoo

Twitter

GitHub
Services

Google App Engine

Amazon SimpleDB

MongoHQ

CouchIO

VMWare?
Example
http://gemsday.org by Intridea, Inc

Powered by MongoDB, Sinatra, TweetStream
Thanks for your patience!
    Email: yedingding@gmail.com
       Twitter: @yedingding
  GitHub: http://github.com/sishen
No Sql Introduction
Upcoming SlideShare
Loading in...5
×

No Sql Introduction

8,470

Published on

Published in: Technology

No Sql Introduction

  1. 1. NoSQL Re-thinK the world
  2. 2. NoSQL Not Only SQL next-generation databases modern web-scale databases
  3. 3. RDBMs Problem Design for ACID Hard to scale Availability? Flexibility
  4. 4. Possible Solutions Oracle/Sybase Mysql/PostgreSQL Cluster/Replica Super-powered Computer
  5. 5. Unnecessarily Complex but just better
  6. 6. Characteristics Non-Relational Distributed Horizontal Scalability Schema-less/Schema-free Eventual Consistency
  7. 7. Category Key-Value stores Document stores Column-oriented stores Graph Databases
  8. 8. Key-Value Store hash Memcached Dynamo Redis Riak Tokyo Cabinet
  9. 9. Document Stores semi-structure IBM Lotus MongoDB CouchDB
  10. 10. Column-Oriented Stores semi-structure BigTable (inspiration source) HBase Cassandra Hypertable
  11. 11. Graph Database InfoGrid Neo4j
  12. 12. Ruby/Rails Integration NoSQL Database Ruby Rails Redis redis-rb ohm Riak riak Tokyo Cabinet tokyo-cabinet MongoDB mongo-ruby-driver MongoMapper CouchDB CouchRest CouchRest-Rails HBase hbase-ruby rhino Cassandra cassandra cassandra_object Neo4j neo4j (jruby)
  13. 13. Brewer’s CAP Theorem Consistency Availability Partitions Tolerance You can have at most two of the properties for any shared-data system
  14. 14. Decision? Consistency Availability ? ? Partitions Tolerance
  15. 15. BigTable Cassandra HBase SimpleDB Consistency Availability MongoDB CouchDB Redis Riak Partitions Tolerance
  16. 16. Activities Google Facebook Yahoo Twitter GitHub
  17. 17. Services Google App Engine Amazon SimpleDB MongoHQ CouchIO VMWare?
  18. 18. Example http://gemsday.org by Intridea, Inc Powered by MongoDB, Sinatra, TweetStream
  19. 19. Thanks for your patience! Email: yedingding@gmail.com Twitter: @yedingding GitHub: http://github.com/sishen
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×