Nosql
Nosql
Submitted By:
Shikha Singla
M.Tech(1st Sem)
Information technology
NEED OF NOSQL
Modern RDBMS simply don’t scale to internet traffic. So,
the main solutions are-
Scaling Up(Vertical Scaling)- Adding resources to a
single node in a system.
Scaling Out(Horizontal Scaling)- Adding more nodes to a
single system, multi-node database solution. Different
approaches are-
• Master Slave
• Sharding
• Multi Master Replication
• In Memory database
• No Joins
Need of NOSQL(cont.)
These days Sites like Digg, Facebook and EBay have data
sets 10s or 100s of TB large.
Distributed in nature.
ARCHITECTURE of NOSQL
Several NOSQL systems use a Distributed architecture
like Master/Slave, Master/Master,Masterless.
Key-Value-stores
Document-stores
Graph Databases
Big Table-Column
Implementation
KEY VALUE STORE
Simplest form of NoSQL store- Each key is mapped to a
value containing arbitrary data.
This store has no knowledge of the contents of its
payload and simply delivers the data to the application.
Mainly used to encapsulate the information .
Key-value stores is a very simple query model, usually
consisting of set, get, and delete primitives.
Main applications based on this store:
Redis
Level DB
Memcache DB
DOCUMENT STORE
Key-document stores map a key to some document that
contains structured information.
They store lists and dictionaries, which can be
embedded recursively inside one-another.
Freedom and complexity of document stores are two
key points:
o Developers have a lot of freedom in modeling their
documents
o Application-based query logic can become complex.
Main applications based on this store:
Mongo DB
Couch DB
GRAPH DATABASE
To avoid JOIN operation in RDBMS, Graph Databases are
used.
Graph Database is modeled using three basic building
blocks:
Node as vertex
Relationship as edge
Property as attribute
Graph theory has seen a great usefulness and relevance in
many problems across various domains.
Main applications based on this store:
Neo4J
InfoGrid
HyperGraphDB
BIG TABLE-COLUMN
IMPLEMENTATION
In this Model, a key identifies a row, which contains data
stored in one or more Column Families.
Within a Column Family, each row can contain multiple
columns.
The values within each column are timestamped, so that
several versions of a row-column mapping can live within a
Column Family.
The model naturally supports sparse column placement.
It is particularly good at modeling historical data with
timestamps.
Main applications based on this store:
Cassandra
HBase
Hyper Table
COMPLEXITY
ADVANTAGES OF NOSQL
Cheap & easy to implement due to open source.
Easy to distribute
Scale to available memory
Have individual query language rather than using
a standard query language
Flexible data model
ACID support is not required for product listing,
status update etc
Developer friendly-More developer centric
interface
APPLICATIONS OF NOSQL
Cassandra-: It is developed at Facebook & written in
java. It uses Column Oriented & Eventual
Consistency model.
MongoDB-: It is an open source , high-performance,
schema-free, document-oriented database written in
the C++ programming language. It manages
collections of JSON-like documents.
In Yahoo ,Google or Amazon, you have had your data
served via a NoSQL solution.
In eBay or Twitter, you have indirectly used NOSQL
datastores.
REFERENCES
http://www.julianbrowne.com
http://www.odbms.org
http://nosql.mypopescu.com
http://nosql-database.org
http://www.infoq.com
http:// www.nosqldatabases.com
http://highscalability.com
THANK YOU
QUERIES?