SlideShare ist ein Scribd-Unternehmen logo
1 von 26
Downloaden Sie, um offline zu lesen
What is NoSQL Database Management System
Various Data Models
Type of NoSQL DBMS
Why NoSQL DBMS?
Beyond NoSQL
Bibliography
NoSQL Database
Sparsa Roychowdhury
IIEST,Shibpur
March 19, 2014
Sparsa Roychowdhury NoSQL Database
What is NoSQL Database Management System
Various Data Models
Type of NoSQL DBMS
Why NoSQL DBMS?
Beyond NoSQL
Bibliography
Outline
1 What is NoSQL Database Management System
2 Various Data Models
3 Type of NoSQL DBMS
4 Why NoSQL DBMS?
5 Beyond NoSQL
6 Bibliography
Sparsa Roychowdhury NoSQL Database
What is NoSQL Database Management System
Various Data Models
Type of NoSQL DBMS
Why NoSQL DBMS?
Beyond NoSQL
Bibliography
What is NoSQL?
NoSQL
NoSQL encompasses a wide variety of different database
technologies and were developed in response to a rise in the volume
of data stored about users, objects and products, the frequency in
which this data is accessed, and performance and processing needs.
Next Generation Databases mostly addressing some of the points:
1 non-relational
2 distributed
3 open-source
4 horizontally scalable
Sparsa Roychowdhury NoSQL Database
What is NoSQL Database Management System
Various Data Models
Type of NoSQL DBMS
Why NoSQL DBMS?
Beyond NoSQL
Bibliography
Various Data Models I
Data Model
A data model is the model through which we perceive and
manipulate our data. For people using a database, the data model
describes how we interact with the data in the database.
Relational Data Model
The relational model takes the information that we want to store
and divides it into tuples.
Tuple being a limited Data Structure it captures a set of values
and can’t be nested. This gives Relational Model a space of
development.
Sparsa Roychowdhury NoSQL Database
What is NoSQL Database Management System
Various Data Models
Type of NoSQL DBMS
Why NoSQL DBMS?
Beyond NoSQL
Bibliography
Various Data Models II
Aggregate Model
Aggregate is a term that comes from Domain-Driven Design, an
aggregate is a collection of related objects that we wish to treat as
a unit, it is a unit for data manipulation and management of
consistency.
1 Atomic property holds within an aggregate
2 Communication with data storage happens in unit of
aggregate
3 Dealing with aggregate is much more efficient in clusters
4 It is often easier for application programmers to work with
aggregates
Sparsa Roychowdhury NoSQL Database
What is NoSQL Database Management System
Various Data Models
Type of NoSQL DBMS
Why NoSQL DBMS?
Beyond NoSQL
Bibliography
Key-Value Databases
Document Databases
Column-family stores
Graph Stores
Type of NoSQL DBMS
There are mainly four types of NoSQL Database systems these are:
1 Key-value Stores
2 Document Databases
3 Wide Column Stores
4 Graph Stores
Sparsa Roychowdhury NoSQL Database
What is NoSQL Database Management System
Various Data Models
Type of NoSQL DBMS
Why NoSQL DBMS?
Beyond NoSQL
Bibliography
Key-Value Databases
Document Databases
Column-family stores
Graph Stores
Key-Value Databases
Key-value store
A key-value store is a simple hash table, primary used when all
access to the database is via primary key.
1 Key-value stores are the simplest NoSQL data stores to use
from an API perspective
2 The client can either get the value, put the value or delete a
key from the data store.
3 The value is just a blob that the data just stores
4 Application has the responsibility to understand what is stored
5 Have great performance and easily scaled
Sparsa Roychowdhury NoSQL Database
What is NoSQL Database Management System
Various Data Models
Type of NoSQL DBMS
Why NoSQL DBMS?
Beyond NoSQL
Bibliography
Key-Value Databases
Document Databases
Column-family stores
Graph Stores
Example: I
There are many available key-value stores available in the market
some of them are:
1 Riak
2 Redis
3 Memcached DB
4 Berkeley DB
5 Hamster DB (especially suited for embedded use)
6 Amazon Dynamo DB (not open source)
7 Project Voldemort (Open Source Implementation of Dynamo
DB)
Sparsa Roychowdhury NoSQL Database
What is NoSQL Database Management System
Various Data Models
Type of NoSQL DBMS
Why NoSQL DBMS?
Beyond NoSQL
Bibliography
Key-Value Databases
Document Databases
Column-family stores
Graph Stores
Example: II
The basic comparison between the terminology between Oracle
and Riak is given below.
Difference between the terminology of Oracle and Riak
Oracle Riak
Database instance Riak cluster
table bucket
row key-value
rowid key
Sparsa Roychowdhury NoSQL Database
What is NoSQL Database Management System
Various Data Models
Type of NoSQL DBMS
Why NoSQL DBMS?
Beyond NoSQL
Bibliography
Key-Value Databases
Document Databases
Column-family stores
Graph Stores
Document Databases
Document Stores
Documents are the main concept in document databases. The
database stores and retrieves documents, which can be XML,
JSON, BSON, and so on.
The documents stored are similar to each other but do not
have to be exactly the same.
Document databases store documents in the value parts of
the key
Document stores can be thought as key-value stores where
the value is examinable
Sparsa Roychowdhury NoSQL Database
What is NoSQL Database Management System
Various Data Models
Type of NoSQL DBMS
Why NoSQL DBMS?
Beyond NoSQL
Bibliography
Key-Value Databases
Document Databases
Column-family stores
Graph Stores
Example: I
There are many available Document Databases available in the
market some of them are:
1 MongoDB
2 CouchDB
3 Terrastore
4 OrientDB
5 RavenDB
Sparsa Roychowdhury NoSQL Database
What is NoSQL Database Management System
Various Data Models
Type of NoSQL DBMS
Why NoSQL DBMS?
Beyond NoSQL
Bibliography
Key-Value Databases
Document Databases
Column-family stores
Graph Stores
Example: II
The basic comparison between the terminology between Oracle
and MongoDB is given below.
Difference between the terminology of Oracle and MongoDB
Oracle MongoDB
Database instance MongoDB instance
Schema Database
table Collection
row Document
rowid id
Join DBref
Sparsa Roychowdhury NoSQL Database
What is NoSQL Database Management System
Various Data Models
Type of NoSQL DBMS
Why NoSQL DBMS?
Beyond NoSQL
Bibliography
Key-Value Databases
Document Databases
Column-family stores
Graph Stores
Column-family stores
Column-family stores
Column-family stores allow you to store data with keys mapped to
values and the values grouped into multiple column families, where
each column family being a map of data.
Column-family databases store data in column families as rows
They have many columns associated with a row key
Column families are groups of related data that is often
accessed together
The basic unit of storage in Column-family databases is a
column
Sparsa Roychowdhury NoSQL Database
What is NoSQL Database Management System
Various Data Models
Type of NoSQL DBMS
Why NoSQL DBMS?
Beyond NoSQL
Bibliography
Key-Value Databases
Document Databases
Column-family stores
Graph Stores
Example: I
There are many available Column-family Databases available in the
market some of them are:
1 Cassandra
2 HBase
3 Hypertable
4 Amazon Simple DB
Sparsa Roychowdhury NoSQL Database
What is NoSQL Database Management System
Various Data Models
Type of NoSQL DBMS
Why NoSQL DBMS?
Beyond NoSQL
Bibliography
Key-Value Databases
Document Databases
Column-family stores
Graph Stores
Example: II
The basic comparison between the terminology between RDBMS
and Cassandra is given below.
Difference between the terminology of RDBMS and Cassandra
RDBMS Cassandra
Database instance cluster
Database Keyspace
table Column Family
row row
Column (same for all rows) Column (can be different per row)
Sparsa Roychowdhury NoSQL Database
What is NoSQL Database Management System
Various Data Models
Type of NoSQL DBMS
Why NoSQL DBMS?
Beyond NoSQL
Bibliography
Key-Value Databases
Document Databases
Column-family stores
Graph Stores
Graph Stores
Graph Store Database
Graph databases are one style of NoSQL databases that uses a
distribution model similar to relational databases but offers a
different data model that makes it better at handling data with
complex relationships.
Entities are also known as nodes, which have properties
Nodes are organized by relationships which allows to find
interesting patterns between the nodes
The organization of the graph lets the data to be stored once
and then interpreted in different ways based on relationships
Sparsa Roychowdhury NoSQL Database
What is NoSQL Database Management System
Various Data Models
Type of NoSQL DBMS
Why NoSQL DBMS?
Beyond NoSQL
Bibliography
Key-Value Databases
Document Databases
Column-family stores
Graph Stores
Example: I
Sparsa Roychowdhury NoSQL Database
What is NoSQL Database Management System
Various Data Models
Type of NoSQL DBMS
Why NoSQL DBMS?
Beyond NoSQL
Bibliography
Key-Value Databases
Document Databases
Column-family stores
Graph Stores
Example: II
There are many available graph Databases available in the market
some of them are:
1 Neo4J
2 Infinite Graph
3 OrientDB
4 FlockDB
Sparsa Roychowdhury NoSQL Database
What is NoSQL Database Management System
Various Data Models
Type of NoSQL DBMS
Why NoSQL DBMS?
Beyond NoSQL
Bibliography
Schema Migrations
Polyglot Persistence
Impedance Mismatch
Auto Sharding
Why NoSQL DBMS?
Why NoSQL
When compared to relational databases, NoSQL databases are
more scalable and provide superior performance, and their data
model addresses several issues that the relational model is not
designed to address:
1 Schema Migrations
2 Polyglot Persistence
3 Impedance Mismatch
4 Auto Sharding architecture
Sparsa Roychowdhury NoSQL Database
What is NoSQL Database Management System
Various Data Models
Type of NoSQL DBMS
Why NoSQL DBMS?
Beyond NoSQL
Bibliography
Schema Migrations
Polyglot Persistence
Impedance Mismatch
Auto Sharding
Schema Migration
Schemaless nature
The recent trend in discussing NoSQL databases is to highlight
their schemaless nature, it is a popular feature that allows
developers to concentrate on the domain design without worrying
about schema changes.
with NoSQL databases, in some cases the schema does not
have to be thought about beforehand
The claim that NoSQL databases are entirely schemaless is
misleading
they store the data without regard to the schema the data
adheres to, that schema has to be defined by the application
Sparsa Roychowdhury NoSQL Database
What is NoSQL Database Management System
Various Data Models
Type of NoSQL DBMS
Why NoSQL DBMS?
Beyond NoSQL
Bibliography
Schema Migrations
Polyglot Persistence
Impedance Mismatch
Auto Sharding
Polyglot Persistence
The point of view of using different data stores in different
circumstances is known as Polyglot Persistence
Most organization has mix of storage technologies for different
circumstances
Using a single database engine for all of the requirements
usually leads to non- performant solutions
Storing transactional data, caching session information,
traversing graph of customers and the products their friends
bought are essentially different problems
Sparsa Roychowdhury NoSQL Database
What is NoSQL Database Management System
Various Data Models
Type of NoSQL DBMS
Why NoSQL DBMS?
Beyond NoSQL
Bibliography
Schema Migrations
Polyglot Persistence
Impedance Mismatch
Auto Sharding
Impedance Mismatch
Impedance Mismatch
Impedance Mismatch means the difference between data model
and in memory data structures.
The impedance mismatch is a major source of frustration to
application developers
Many people believed that it would lead to relational
databases being replaced with databases that replicate the
in-memory data structures to disk
Object-Oriented Database failed to show the potential to
reduce the gap
Sparsa Roychowdhury NoSQL Database
What is NoSQL Database Management System
Various Data Models
Type of NoSQL DBMS
Why NoSQL DBMS?
Beyond NoSQL
Bibliography
Schema Migrations
Polyglot Persistence
Impedance Mismatch
Auto Sharding
Auto Sharding
Auto Sharding
NoSQL databases usually support auto-sharding, meaning that
they natively and automatically spread data across an arbitrary
number of servers, without requiring the application to even be
aware of the composition of the server pool
Because of the way they are structured, relational databases
usually scale vertically
This gets expensive quickly, places limits on scale, and creates
a relatively small number of failure points for database
infrastructure
The solution is to scale horizontally, by adding servers instead
of concentrating more capacity in a single server.
Sparsa Roychowdhury NoSQL Database
What is NoSQL Database Management System
Various Data Models
Type of NoSQL DBMS
Why NoSQL DBMS?
Beyond NoSQL
Bibliography
Beyond NoSQL
NoSQL databases we have discussed here is only part of the
picture of polyglot persistence.
Recent attention to clustered environments has seen a rise of
distributed file systems. Technologies like the Google File
System and Hadoop
We think of XML databases as document databases where the
documents are stored in a data model compatible with XML
NoSQL is just one set of data storage technologies, we should
consider other data storage technologies whether or not they
bear the NoSQL label.
Sparsa Roychowdhury NoSQL Database
What is NoSQL Database Management System
Various Data Models
Type of NoSQL DBMS
Why NoSQL DBMS?
Beyond NoSQL
Bibliography
Bibliography
Pramod J. Sadalage, Martin Fowler NoSQL Distilled: A Brief
Guide to the Emerging World of Polyglot Persistence Addison
Wesley, Massachusetts, 2013
http://www.mongodb.com/learn/nosql
http://www.wikipedia.org
Sparsa Roychowdhury NoSQL Database
What is NoSQL Database Management System
Various Data Models
Type of NoSQL DBMS
Why NoSQL DBMS?
Beyond NoSQL
Bibliography
Thank You!
Sparsa Roychowdhury NoSQL Database

Weitere ähnliche Inhalte

Was ist angesagt?

Hadoop Overview & Architecture
Hadoop Overview & Architecture  Hadoop Overview & Architecture
Hadoop Overview & Architecture EMC
 
Introduction to Hadoop and Hadoop component
Introduction to Hadoop and Hadoop component Introduction to Hadoop and Hadoop component
Introduction to Hadoop and Hadoop component rebeccatho
 
Hadoop Ecosystem | Hadoop Ecosystem Tutorial | Hadoop Tutorial For Beginners ...
Hadoop Ecosystem | Hadoop Ecosystem Tutorial | Hadoop Tutorial For Beginners ...Hadoop Ecosystem | Hadoop Ecosystem Tutorial | Hadoop Tutorial For Beginners ...
Hadoop Ecosystem | Hadoop Ecosystem Tutorial | Hadoop Tutorial For Beginners ...Simplilearn
 
Hive Tutorial | Hive Architecture | Hive Tutorial For Beginners | Hive In Had...
Hive Tutorial | Hive Architecture | Hive Tutorial For Beginners | Hive In Had...Hive Tutorial | Hive Architecture | Hive Tutorial For Beginners | Hive In Had...
Hive Tutorial | Hive Architecture | Hive Tutorial For Beginners | Hive In Had...Simplilearn
 
Hadoop File system (HDFS)
Hadoop File system (HDFS)Hadoop File system (HDFS)
Hadoop File system (HDFS)Prashant Gupta
 
Transformations and actions a visual guide training
Transformations and actions a visual guide trainingTransformations and actions a visual guide training
Transformations and actions a visual guide trainingSpark Summit
 
Non relational databases-no sql
Non relational databases-no sqlNon relational databases-no sql
Non relational databases-no sqlRam kumar
 
introduction to NOSQL Database
introduction to NOSQL Databaseintroduction to NOSQL Database
introduction to NOSQL Databasenehabsairam
 
Mining Data Streams
Mining Data StreamsMining Data Streams
Mining Data StreamsSujaAldrin
 
Apache Spark in Depth: Core Concepts, Architecture & Internals
Apache Spark in Depth: Core Concepts, Architecture & InternalsApache Spark in Depth: Core Concepts, Architecture & Internals
Apache Spark in Depth: Core Concepts, Architecture & InternalsAnton Kirillov
 
Introduction to Apache Hive(Big Data, Final Seminar)
Introduction to Apache Hive(Big Data, Final Seminar)Introduction to Apache Hive(Big Data, Final Seminar)
Introduction to Apache Hive(Big Data, Final Seminar)Takrim Ul Islam Laskar
 
NoSQL databases - An introduction
NoSQL databases - An introductionNoSQL databases - An introduction
NoSQL databases - An introductionPooyan Mehrparvar
 

Was ist angesagt? (20)

Spark
SparkSpark
Spark
 
Hadoop Overview & Architecture
Hadoop Overview & Architecture  Hadoop Overview & Architecture
Hadoop Overview & Architecture
 
Introduction to Hadoop and Hadoop component
Introduction to Hadoop and Hadoop component Introduction to Hadoop and Hadoop component
Introduction to Hadoop and Hadoop component
 
Hadoop Ecosystem | Hadoop Ecosystem Tutorial | Hadoop Tutorial For Beginners ...
Hadoop Ecosystem | Hadoop Ecosystem Tutorial | Hadoop Tutorial For Beginners ...Hadoop Ecosystem | Hadoop Ecosystem Tutorial | Hadoop Tutorial For Beginners ...
Hadoop Ecosystem | Hadoop Ecosystem Tutorial | Hadoop Tutorial For Beginners ...
 
Hive Tutorial | Hive Architecture | Hive Tutorial For Beginners | Hive In Had...
Hive Tutorial | Hive Architecture | Hive Tutorial For Beginners | Hive In Had...Hive Tutorial | Hive Architecture | Hive Tutorial For Beginners | Hive In Had...
Hive Tutorial | Hive Architecture | Hive Tutorial For Beginners | Hive In Had...
 
NoSQL databases
NoSQL databasesNoSQL databases
NoSQL databases
 
Hadoop technology
Hadoop technologyHadoop technology
Hadoop technology
 
Hadoop File system (HDFS)
Hadoop File system (HDFS)Hadoop File system (HDFS)
Hadoop File system (HDFS)
 
Transformations and actions a visual guide training
Transformations and actions a visual guide trainingTransformations and actions a visual guide training
Transformations and actions a visual guide training
 
Spark SQL
Spark SQLSpark SQL
Spark SQL
 
Big data architecture
Big data architectureBig data architecture
Big data architecture
 
Non relational databases-no sql
Non relational databases-no sqlNon relational databases-no sql
Non relational databases-no sql
 
introduction to NOSQL Database
introduction to NOSQL Databaseintroduction to NOSQL Database
introduction to NOSQL Database
 
Apache Hive - Introduction
Apache Hive - IntroductionApache Hive - Introduction
Apache Hive - Introduction
 
Mining Data Streams
Mining Data StreamsMining Data Streams
Mining Data Streams
 
Apache Spark in Depth: Core Concepts, Architecture & Internals
Apache Spark in Depth: Core Concepts, Architecture & InternalsApache Spark in Depth: Core Concepts, Architecture & Internals
Apache Spark in Depth: Core Concepts, Architecture & Internals
 
Apache HBase™
Apache HBase™Apache HBase™
Apache HBase™
 
Introduction to Apache Hive(Big Data, Final Seminar)
Introduction to Apache Hive(Big Data, Final Seminar)Introduction to Apache Hive(Big Data, Final Seminar)
Introduction to Apache Hive(Big Data, Final Seminar)
 
Introduction to Hadoop
Introduction to HadoopIntroduction to Hadoop
Introduction to Hadoop
 
NoSQL databases - An introduction
NoSQL databases - An introductionNoSQL databases - An introduction
NoSQL databases - An introduction
 

Andere mochten auch

MongoDB Pros and Cons
MongoDB Pros and ConsMongoDB Pros and Cons
MongoDB Pros and Consjohnrjenson
 
Strengths and Weaknesses of MongoDB
Strengths and Weaknesses of MongoDBStrengths and Weaknesses of MongoDB
Strengths and Weaknesses of MongoDBlehresman
 
NoSQL databases pros and cons
NoSQL databases pros and consNoSQL databases pros and cons
NoSQL databases pros and consFabio Fumarola
 
Benchmarking Top NoSQL Databases: Apache Cassandra, Apache HBase and MongoDB
Benchmarking Top NoSQL Databases: Apache Cassandra, Apache HBase and MongoDBBenchmarking Top NoSQL Databases: Apache Cassandra, Apache HBase and MongoDB
Benchmarking Top NoSQL Databases: Apache Cassandra, Apache HBase and MongoDBAthiq Ahamed
 
High Performance Applications with MongoDB
High Performance Applications with MongoDBHigh Performance Applications with MongoDB
High Performance Applications with MongoDBMongoDB
 
Introduction To HBase
Introduction To HBaseIntroduction To HBase
Introduction To HBaseAnil Gupta
 
APA bibliography ppt
APA bibliography pptAPA bibliography ppt
APA bibliography pptmrs-oc
 
HBase Vs Cassandra Vs MongoDB - Choosing the right NoSQL database
HBase Vs Cassandra Vs MongoDB - Choosing the right NoSQL databaseHBase Vs Cassandra Vs MongoDB - Choosing the right NoSQL database
HBase Vs Cassandra Vs MongoDB - Choosing the right NoSQL databaseEdureka!
 
NOSQL Databases types and Uses
NOSQL Databases types and UsesNOSQL Databases types and Uses
NOSQL Databases types and UsesSuvradeep Rudra
 
[DSC 2016] 系列活動:李宏毅 / 一天搞懂深度學習
[DSC 2016] 系列活動:李宏毅 / 一天搞懂深度學習[DSC 2016] 系列活動:李宏毅 / 一天搞懂深度學習
[DSC 2016] 系列活動:李宏毅 / 一天搞懂深度學習台灣資料科學年會
 
Big Data Analytics with Hadoop
Big Data Analytics with HadoopBig Data Analytics with Hadoop
Big Data Analytics with HadoopPhilippe Julio
 
Library mangement system project srs documentation.doc
Library mangement system project srs documentation.docLibrary mangement system project srs documentation.doc
Library mangement system project srs documentation.docjimmykhan
 
2015 Upload Campaigns Calendar - SlideShare
2015 Upload Campaigns Calendar - SlideShare2015 Upload Campaigns Calendar - SlideShare
2015 Upload Campaigns Calendar - SlideShareSlideShare
 
What to Upload to SlideShare
What to Upload to SlideShareWhat to Upload to SlideShare
What to Upload to SlideShareSlideShare
 
Getting Started With SlideShare
Getting Started With SlideShareGetting Started With SlideShare
Getting Started With SlideShareSlideShare
 

Andere mochten auch (15)

MongoDB Pros and Cons
MongoDB Pros and ConsMongoDB Pros and Cons
MongoDB Pros and Cons
 
Strengths and Weaknesses of MongoDB
Strengths and Weaknesses of MongoDBStrengths and Weaknesses of MongoDB
Strengths and Weaknesses of MongoDB
 
NoSQL databases pros and cons
NoSQL databases pros and consNoSQL databases pros and cons
NoSQL databases pros and cons
 
Benchmarking Top NoSQL Databases: Apache Cassandra, Apache HBase and MongoDB
Benchmarking Top NoSQL Databases: Apache Cassandra, Apache HBase and MongoDBBenchmarking Top NoSQL Databases: Apache Cassandra, Apache HBase and MongoDB
Benchmarking Top NoSQL Databases: Apache Cassandra, Apache HBase and MongoDB
 
High Performance Applications with MongoDB
High Performance Applications with MongoDBHigh Performance Applications with MongoDB
High Performance Applications with MongoDB
 
Introduction To HBase
Introduction To HBaseIntroduction To HBase
Introduction To HBase
 
APA bibliography ppt
APA bibliography pptAPA bibliography ppt
APA bibliography ppt
 
HBase Vs Cassandra Vs MongoDB - Choosing the right NoSQL database
HBase Vs Cassandra Vs MongoDB - Choosing the right NoSQL databaseHBase Vs Cassandra Vs MongoDB - Choosing the right NoSQL database
HBase Vs Cassandra Vs MongoDB - Choosing the right NoSQL database
 
NOSQL Databases types and Uses
NOSQL Databases types and UsesNOSQL Databases types and Uses
NOSQL Databases types and Uses
 
[DSC 2016] 系列活動:李宏毅 / 一天搞懂深度學習
[DSC 2016] 系列活動:李宏毅 / 一天搞懂深度學習[DSC 2016] 系列活動:李宏毅 / 一天搞懂深度學習
[DSC 2016] 系列活動:李宏毅 / 一天搞懂深度學習
 
Big Data Analytics with Hadoop
Big Data Analytics with HadoopBig Data Analytics with Hadoop
Big Data Analytics with Hadoop
 
Library mangement system project srs documentation.doc
Library mangement system project srs documentation.docLibrary mangement system project srs documentation.doc
Library mangement system project srs documentation.doc
 
2015 Upload Campaigns Calendar - SlideShare
2015 Upload Campaigns Calendar - SlideShare2015 Upload Campaigns Calendar - SlideShare
2015 Upload Campaigns Calendar - SlideShare
 
What to Upload to SlideShare
What to Upload to SlideShareWhat to Upload to SlideShare
What to Upload to SlideShare
 
Getting Started With SlideShare
Getting Started With SlideShareGetting Started With SlideShare
Getting Started With SlideShare
 

Ähnlich wie No sql

Ähnlich wie No sql (20)

Unit II -BIG DATA ANALYTICS.docx
Unit II -BIG DATA ANALYTICS.docxUnit II -BIG DATA ANALYTICS.docx
Unit II -BIG DATA ANALYTICS.docx
 
unit2-ppt1.pptx
unit2-ppt1.pptxunit2-ppt1.pptx
unit2-ppt1.pptx
 
Vskills Apache Cassandra sample material
Vskills Apache Cassandra sample materialVskills Apache Cassandra sample material
Vskills Apache Cassandra sample material
 
Unit 3 MongDB
Unit 3 MongDBUnit 3 MongDB
Unit 3 MongDB
 
NoSQL_Databases
NoSQL_DatabasesNoSQL_Databases
NoSQL_Databases
 
the rising no sql technology
the rising no sql technologythe rising no sql technology
the rising no sql technology
 
NoSQL Databases
NoSQL DatabasesNoSQL Databases
NoSQL Databases
 
NoSQL
NoSQLNoSQL
NoSQL
 
NoSQL Basics and MongDB
NoSQL Basics and  MongDBNoSQL Basics and  MongDB
NoSQL Basics and MongDB
 
Mongodb - NoSql Database
Mongodb - NoSql DatabaseMongodb - NoSql Database
Mongodb - NoSql Database
 
2018 05 08_biological_databases_no_sql
2018 05 08_biological_databases_no_sql2018 05 08_biological_databases_no_sql
2018 05 08_biological_databases_no_sql
 
NOsql Presentation.pdf
NOsql Presentation.pdfNOsql Presentation.pdf
NOsql Presentation.pdf
 
Assignment_4
Assignment_4Assignment_4
Assignment_4
 
SQL VS NoSQL
SQL VS NoSQLSQL VS NoSQL
SQL VS NoSQL
 
TYPES OF NO SQL DATABASES.pptx
TYPES OF NO SQL DATABASES.pptxTYPES OF NO SQL DATABASES.pptx
TYPES OF NO SQL DATABASES.pptx
 
2.Introduction to NOSQL (Core concepts).pptx
2.Introduction to NOSQL (Core concepts).pptx2.Introduction to NOSQL (Core concepts).pptx
2.Introduction to NOSQL (Core concepts).pptx
 
Big Data technology Landscape
Big Data technology LandscapeBig Data technology Landscape
Big Data technology Landscape
 
Mongo Bb - NoSQL tutorial
Mongo Bb - NoSQL tutorialMongo Bb - NoSQL tutorial
Mongo Bb - NoSQL tutorial
 
Presentation On NoSQL Databases
Presentation On NoSQL DatabasesPresentation On NoSQL Databases
Presentation On NoSQL Databases
 
1. introduction to no sql
1. introduction to no sql1. introduction to no sql
1. introduction to no sql
 

No sql

  • 1. What is NoSQL Database Management System Various Data Models Type of NoSQL DBMS Why NoSQL DBMS? Beyond NoSQL Bibliography NoSQL Database Sparsa Roychowdhury IIEST,Shibpur March 19, 2014 Sparsa Roychowdhury NoSQL Database
  • 2. What is NoSQL Database Management System Various Data Models Type of NoSQL DBMS Why NoSQL DBMS? Beyond NoSQL Bibliography Outline 1 What is NoSQL Database Management System 2 Various Data Models 3 Type of NoSQL DBMS 4 Why NoSQL DBMS? 5 Beyond NoSQL 6 Bibliography Sparsa Roychowdhury NoSQL Database
  • 3. What is NoSQL Database Management System Various Data Models Type of NoSQL DBMS Why NoSQL DBMS? Beyond NoSQL Bibliography What is NoSQL? NoSQL NoSQL encompasses a wide variety of different database technologies and were developed in response to a rise in the volume of data stored about users, objects and products, the frequency in which this data is accessed, and performance and processing needs. Next Generation Databases mostly addressing some of the points: 1 non-relational 2 distributed 3 open-source 4 horizontally scalable Sparsa Roychowdhury NoSQL Database
  • 4. What is NoSQL Database Management System Various Data Models Type of NoSQL DBMS Why NoSQL DBMS? Beyond NoSQL Bibliography Various Data Models I Data Model A data model is the model through which we perceive and manipulate our data. For people using a database, the data model describes how we interact with the data in the database. Relational Data Model The relational model takes the information that we want to store and divides it into tuples. Tuple being a limited Data Structure it captures a set of values and can’t be nested. This gives Relational Model a space of development. Sparsa Roychowdhury NoSQL Database
  • 5. What is NoSQL Database Management System Various Data Models Type of NoSQL DBMS Why NoSQL DBMS? Beyond NoSQL Bibliography Various Data Models II Aggregate Model Aggregate is a term that comes from Domain-Driven Design, an aggregate is a collection of related objects that we wish to treat as a unit, it is a unit for data manipulation and management of consistency. 1 Atomic property holds within an aggregate 2 Communication with data storage happens in unit of aggregate 3 Dealing with aggregate is much more efficient in clusters 4 It is often easier for application programmers to work with aggregates Sparsa Roychowdhury NoSQL Database
  • 6. What is NoSQL Database Management System Various Data Models Type of NoSQL DBMS Why NoSQL DBMS? Beyond NoSQL Bibliography Key-Value Databases Document Databases Column-family stores Graph Stores Type of NoSQL DBMS There are mainly four types of NoSQL Database systems these are: 1 Key-value Stores 2 Document Databases 3 Wide Column Stores 4 Graph Stores Sparsa Roychowdhury NoSQL Database
  • 7. What is NoSQL Database Management System Various Data Models Type of NoSQL DBMS Why NoSQL DBMS? Beyond NoSQL Bibliography Key-Value Databases Document Databases Column-family stores Graph Stores Key-Value Databases Key-value store A key-value store is a simple hash table, primary used when all access to the database is via primary key. 1 Key-value stores are the simplest NoSQL data stores to use from an API perspective 2 The client can either get the value, put the value or delete a key from the data store. 3 The value is just a blob that the data just stores 4 Application has the responsibility to understand what is stored 5 Have great performance and easily scaled Sparsa Roychowdhury NoSQL Database
  • 8. What is NoSQL Database Management System Various Data Models Type of NoSQL DBMS Why NoSQL DBMS? Beyond NoSQL Bibliography Key-Value Databases Document Databases Column-family stores Graph Stores Example: I There are many available key-value stores available in the market some of them are: 1 Riak 2 Redis 3 Memcached DB 4 Berkeley DB 5 Hamster DB (especially suited for embedded use) 6 Amazon Dynamo DB (not open source) 7 Project Voldemort (Open Source Implementation of Dynamo DB) Sparsa Roychowdhury NoSQL Database
  • 9. What is NoSQL Database Management System Various Data Models Type of NoSQL DBMS Why NoSQL DBMS? Beyond NoSQL Bibliography Key-Value Databases Document Databases Column-family stores Graph Stores Example: II The basic comparison between the terminology between Oracle and Riak is given below. Difference between the terminology of Oracle and Riak Oracle Riak Database instance Riak cluster table bucket row key-value rowid key Sparsa Roychowdhury NoSQL Database
  • 10. What is NoSQL Database Management System Various Data Models Type of NoSQL DBMS Why NoSQL DBMS? Beyond NoSQL Bibliography Key-Value Databases Document Databases Column-family stores Graph Stores Document Databases Document Stores Documents are the main concept in document databases. The database stores and retrieves documents, which can be XML, JSON, BSON, and so on. The documents stored are similar to each other but do not have to be exactly the same. Document databases store documents in the value parts of the key Document stores can be thought as key-value stores where the value is examinable Sparsa Roychowdhury NoSQL Database
  • 11. What is NoSQL Database Management System Various Data Models Type of NoSQL DBMS Why NoSQL DBMS? Beyond NoSQL Bibliography Key-Value Databases Document Databases Column-family stores Graph Stores Example: I There are many available Document Databases available in the market some of them are: 1 MongoDB 2 CouchDB 3 Terrastore 4 OrientDB 5 RavenDB Sparsa Roychowdhury NoSQL Database
  • 12. What is NoSQL Database Management System Various Data Models Type of NoSQL DBMS Why NoSQL DBMS? Beyond NoSQL Bibliography Key-Value Databases Document Databases Column-family stores Graph Stores Example: II The basic comparison between the terminology between Oracle and MongoDB is given below. Difference between the terminology of Oracle and MongoDB Oracle MongoDB Database instance MongoDB instance Schema Database table Collection row Document rowid id Join DBref Sparsa Roychowdhury NoSQL Database
  • 13. What is NoSQL Database Management System Various Data Models Type of NoSQL DBMS Why NoSQL DBMS? Beyond NoSQL Bibliography Key-Value Databases Document Databases Column-family stores Graph Stores Column-family stores Column-family stores Column-family stores allow you to store data with keys mapped to values and the values grouped into multiple column families, where each column family being a map of data. Column-family databases store data in column families as rows They have many columns associated with a row key Column families are groups of related data that is often accessed together The basic unit of storage in Column-family databases is a column Sparsa Roychowdhury NoSQL Database
  • 14. What is NoSQL Database Management System Various Data Models Type of NoSQL DBMS Why NoSQL DBMS? Beyond NoSQL Bibliography Key-Value Databases Document Databases Column-family stores Graph Stores Example: I There are many available Column-family Databases available in the market some of them are: 1 Cassandra 2 HBase 3 Hypertable 4 Amazon Simple DB Sparsa Roychowdhury NoSQL Database
  • 15. What is NoSQL Database Management System Various Data Models Type of NoSQL DBMS Why NoSQL DBMS? Beyond NoSQL Bibliography Key-Value Databases Document Databases Column-family stores Graph Stores Example: II The basic comparison between the terminology between RDBMS and Cassandra is given below. Difference between the terminology of RDBMS and Cassandra RDBMS Cassandra Database instance cluster Database Keyspace table Column Family row row Column (same for all rows) Column (can be different per row) Sparsa Roychowdhury NoSQL Database
  • 16. What is NoSQL Database Management System Various Data Models Type of NoSQL DBMS Why NoSQL DBMS? Beyond NoSQL Bibliography Key-Value Databases Document Databases Column-family stores Graph Stores Graph Stores Graph Store Database Graph databases are one style of NoSQL databases that uses a distribution model similar to relational databases but offers a different data model that makes it better at handling data with complex relationships. Entities are also known as nodes, which have properties Nodes are organized by relationships which allows to find interesting patterns between the nodes The organization of the graph lets the data to be stored once and then interpreted in different ways based on relationships Sparsa Roychowdhury NoSQL Database
  • 17. What is NoSQL Database Management System Various Data Models Type of NoSQL DBMS Why NoSQL DBMS? Beyond NoSQL Bibliography Key-Value Databases Document Databases Column-family stores Graph Stores Example: I Sparsa Roychowdhury NoSQL Database
  • 18. What is NoSQL Database Management System Various Data Models Type of NoSQL DBMS Why NoSQL DBMS? Beyond NoSQL Bibliography Key-Value Databases Document Databases Column-family stores Graph Stores Example: II There are many available graph Databases available in the market some of them are: 1 Neo4J 2 Infinite Graph 3 OrientDB 4 FlockDB Sparsa Roychowdhury NoSQL Database
  • 19. What is NoSQL Database Management System Various Data Models Type of NoSQL DBMS Why NoSQL DBMS? Beyond NoSQL Bibliography Schema Migrations Polyglot Persistence Impedance Mismatch Auto Sharding Why NoSQL DBMS? Why NoSQL When compared to relational databases, NoSQL databases are more scalable and provide superior performance, and their data model addresses several issues that the relational model is not designed to address: 1 Schema Migrations 2 Polyglot Persistence 3 Impedance Mismatch 4 Auto Sharding architecture Sparsa Roychowdhury NoSQL Database
  • 20. What is NoSQL Database Management System Various Data Models Type of NoSQL DBMS Why NoSQL DBMS? Beyond NoSQL Bibliography Schema Migrations Polyglot Persistence Impedance Mismatch Auto Sharding Schema Migration Schemaless nature The recent trend in discussing NoSQL databases is to highlight their schemaless nature, it is a popular feature that allows developers to concentrate on the domain design without worrying about schema changes. with NoSQL databases, in some cases the schema does not have to be thought about beforehand The claim that NoSQL databases are entirely schemaless is misleading they store the data without regard to the schema the data adheres to, that schema has to be defined by the application Sparsa Roychowdhury NoSQL Database
  • 21. What is NoSQL Database Management System Various Data Models Type of NoSQL DBMS Why NoSQL DBMS? Beyond NoSQL Bibliography Schema Migrations Polyglot Persistence Impedance Mismatch Auto Sharding Polyglot Persistence The point of view of using different data stores in different circumstances is known as Polyglot Persistence Most organization has mix of storage technologies for different circumstances Using a single database engine for all of the requirements usually leads to non- performant solutions Storing transactional data, caching session information, traversing graph of customers and the products their friends bought are essentially different problems Sparsa Roychowdhury NoSQL Database
  • 22. What is NoSQL Database Management System Various Data Models Type of NoSQL DBMS Why NoSQL DBMS? Beyond NoSQL Bibliography Schema Migrations Polyglot Persistence Impedance Mismatch Auto Sharding Impedance Mismatch Impedance Mismatch Impedance Mismatch means the difference between data model and in memory data structures. The impedance mismatch is a major source of frustration to application developers Many people believed that it would lead to relational databases being replaced with databases that replicate the in-memory data structures to disk Object-Oriented Database failed to show the potential to reduce the gap Sparsa Roychowdhury NoSQL Database
  • 23. What is NoSQL Database Management System Various Data Models Type of NoSQL DBMS Why NoSQL DBMS? Beyond NoSQL Bibliography Schema Migrations Polyglot Persistence Impedance Mismatch Auto Sharding Auto Sharding Auto Sharding NoSQL databases usually support auto-sharding, meaning that they natively and automatically spread data across an arbitrary number of servers, without requiring the application to even be aware of the composition of the server pool Because of the way they are structured, relational databases usually scale vertically This gets expensive quickly, places limits on scale, and creates a relatively small number of failure points for database infrastructure The solution is to scale horizontally, by adding servers instead of concentrating more capacity in a single server. Sparsa Roychowdhury NoSQL Database
  • 24. What is NoSQL Database Management System Various Data Models Type of NoSQL DBMS Why NoSQL DBMS? Beyond NoSQL Bibliography Beyond NoSQL NoSQL databases we have discussed here is only part of the picture of polyglot persistence. Recent attention to clustered environments has seen a rise of distributed file systems. Technologies like the Google File System and Hadoop We think of XML databases as document databases where the documents are stored in a data model compatible with XML NoSQL is just one set of data storage technologies, we should consider other data storage technologies whether or not they bear the NoSQL label. Sparsa Roychowdhury NoSQL Database
  • 25. What is NoSQL Database Management System Various Data Models Type of NoSQL DBMS Why NoSQL DBMS? Beyond NoSQL Bibliography Bibliography Pramod J. Sadalage, Martin Fowler NoSQL Distilled: A Brief Guide to the Emerging World of Polyglot Persistence Addison Wesley, Massachusetts, 2013 http://www.mongodb.com/learn/nosql http://www.wikipedia.org Sparsa Roychowdhury NoSQL Database
  • 26. What is NoSQL Database Management System Various Data Models Type of NoSQL DBMS Why NoSQL DBMS? Beyond NoSQL Bibliography Thank You! Sparsa Roychowdhury NoSQL Database