No Sql Introduction

8,863 views
8,713 views

Published on

Published in: Technology
0 Comments
13 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
8,863
On SlideShare
0
From Embeds
0
Number of Embeds
39
Actions
Shares
0
Downloads
527
Comments
0
Likes
13
Embeds 0
No embeds

No notes for slide



















  • 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

    ×