Loading presentation...

Present Remotely

Send the link below via email or IM


Present to your audience

Start remote presentation

  • Invited audience members will follow you as you navigate and present
  • People invited to a presentation do not need a Prezi account
  • This link expires 10 minutes after you close the presentation
  • A maximum of 30 users can follow your presentation
  • Learn more about this feature in our knowledge base article

Do you really want to delete this prezi?

Neither you, nor the coeditors you shared it with will be able to recover it again.



No description

Aw Young Qingzhuo

on 19 March 2013

Comments (0)

Please log in to add your comment.

Report abuse

Transcript of NoSQL

What Is NoSQL Not Only Sql Categories Schemaless
Horizontal Scaling
Does not use SQL for querying What It Means Column Family Document store Graph Why Real time analysis of data
Distributed storage
Data size & data complexity
Less time spent in conceptual stage
Reduced need for DBAs
Good for unstructured data
Simpler API (get() & put() for K/V store) Why Not Key-value Based on Amazon's Dynamo paper
Globally distributed hash table
All about performance Based on Google's BigTable paper
Column oriented
Each row can have different schema Inspired by Lotus Notes
Records are stored as documents (typically as JSON, XML or YAML)
Each document can have completely different fields! Based on graph theory
Nodes represent entities
Edges represent relations Applications Relatively new
Lacks support
No ACID guarantees
Application must have high fault tolerance
Most go by BASE standards (eventual consistency)
Can't handle complex/dynamic queries
SQL is a powerful query language
No / very limited transactions
Poor aggregation
SQL vs Map reduce functions
No common model
Difficult to switch between NoSQL DBMSs Horizontal Scaling Vertical Scaling Scaling out
Involves partitioning/sharding
Linear costs
Increased complexity
Allows for more dynamic scaling Scaling up
Adding more computing resources to a single node
Can be expensive
Hardware limit or why RDMS/SQL When to use NoSQL databases:
Data warehousing
Data processing
Graphs (e.g. Social data)
Search Real life applications:
Twitter Search (Lucene)
Twitter (Scribe, FlockDB, HBase, Pig)
Reddit (Cassandra)
Facebook (Hadoop, Cassandra) Why The Need? Web scale
Highly available
Highly scalable
High performance
Big Data
Petabytes & ExaBytes
More data generated now than ever before CAP Theorem Consistency Partition
Tolerance Availability Aw Young Qingzhuo
Full transcript