Nosql and newsql
Upcoming SlideShare
Loading in...5
×
 

Nosql and newsql

on

  • 2,032 views

Introduction to NoSQL and NewSQL

Introduction to NoSQL and NewSQL

Statistics

Views

Total Views
2,032
Views on SlideShare
2,032
Embed Views
0

Actions

Likes
3
Downloads
134
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n

Nosql and newsql Nosql and newsql Presentation Transcript

  • NoSQL and NewSQL Zhongke Chen May 28, 2012Sunday, June 3, 12
  • Agenda What’s NoSQL Typical NoSQL Models What’s NewSQL Popular NoSQL and NewSQL DBMSes DiscussionSunday, June 3, 12
  • Problems with SQL Scale out Performance & SizeSunday, June 3, 12
  • What’s NoSQL NoSQL is a term used to designate databases which differ from classic relational databases in some way. It does not use SQL as its query language (no relational model, no JOIN) It may not give full ACID guaranteesSunday, June 3, 12
  • Pros It may have a distributed, fault- tolerant architecture significant gains in performance for certain data models It deals with huge quantities of data Schema-less DesignSunday, June 3, 12
  • CAP TheoremSunday, June 3, 12
  • NoSQL Models Key-Value Column Family Document GraphSunday, June 3, 12
  • NoSQL Models: Key-Value key -> value Examples: memcached, redis, Berkeley DB, DynamoSunday, June 3, 12
  • NoSQL Model: Column Family Row key, Column key -> Value Examples: BigTable, Cassandra, HBaseSunday, June 3, 12
  • NoSQL Model: Document Key -> Document (JSON, XML) Examples: MongoDB, CouchDBSunday, June 3, 12
  • NoSQL Model: Graph Examples: Neo4j, OrientDBSunday, June 3, 12
  • What’s NewSQL NewSQL preserves SQL and offer high performance and scalability, while preserving the traditional ACID notion for transactions. Examples: VoltDB, NimbusDB, Clustrix, DrizzleSunday, June 3, 12
  • Redis Key-Value In-Memory Cache Rich Data Types and Operations Optional Persistence Master-Slave Replication Transaction Use cases: weibo.com dianping.comSunday, June 3, 12
  • MongoDB JSON like (BSON) Document Store Auto Sharding Global Lock, Only one node writable Replica Sets Replication Eventual Consistency Mongo Query Language (Friendly to SQL users) Use cases: dianping.com 盛大 Cloud FoundrySunday, June 3, 12
  • CouchDB JSON Document Store Written in Erlang Master-Master Replication MVCC Eventual Consistency Compaction Offline HTTP/REST API View (query tool) Use cases: Ubuntu One Meebo Some Facebook AppsSunday, June 3, 12
  • Cassandra Column family model Decentralized Tunable Consistency Use cases: Facebook Twitter NetflixSunday, June 3, 12
  • Neo4J Graph database Small Footprint Scalability A powerful traversal framework Cypher Query Language Gremlin Traversal Language Use cases: Multi-level Marketing EngineSunday, June 3, 12
  • VoltDB Speak SQL Stored Procedures Partitioning Table and Replication Table Lock free design In-Memory Snapshots and command logging K-safety Linear Scalability Use cases: http://voltdb.com/customersSunday, June 3, 12
  • How To Choose MongoDB: If you need dynamic queries. If you prefer to define indexes, not map/reduce functions. If you need good performance on a big DB. If you wanted CouchDB, but your data changes too much, filling up disks. CouchDB: For accumulating, occasionally changing data, on which pre- defined queries are to be run. Places where versioning is important. Redis: For rapidly changing data with a foreseeable database size (should fit mostly in memory). Neo4J: For graph-style, rich or complex, interconnected data. Neo4j is quite different from the others in this sense. Cassandra: When you write more than you read (logging). If every component of the system must be in Java. ("No one gets fired for choosing Apaches stuff.") VoltDB: If you want to speak SQL and use JOINSunday, June 3, 12
  • Q&A The End! Thank you!Sunday, June 3, 12