SlideShare a Scribd company logo
NoSQL data models
Viet-Trung Tran
is.hust.edu.vn/~trungtv/
1	
  
Eras of Databases
•  Why NoSQL?
2	
  
Before NoSQL
3	
  
RDBMS one-size-fits-all-needs
4	
  
ICDE 2005 conference
5	
  
The	
  last	
  25	
  years	
  of	
  commercial	
  DBMS	
  development	
  can	
  be	
  summed	
  up	
  in	
  a	
  single	
  phrase:	
  
"one	
  size	
  fits	
  all".	
  This	
  phrase	
  refers	
  to	
  the	
  fact	
  that	
  the	
  tradi.onal	
  DBMS	
  architecture	
  
(originally	
  designed	
  and	
  op.mized	
  for	
  business	
  data	
  processing)	
  has	
  been	
  used	
  to	
  support	
  
many	
  data-­‐centric	
  applica.ons	
  with	
  widely	
  varying	
  characterisCcs	
  and	
  requirements.	
  In	
  this	
  
paper,	
  we	
  argue	
  that	
  this	
  concept	
  is	
  no	
  longer	
  applicable	
  to	
  the	
  database	
  market,	
  and	
  that	
  the	
  
commercial	
  world	
  will	
  fracture	
  into	
  a	
  collecCon	
  of	
  independent	
  database	
  engines,	
  some	
  of	
  
which	
  may	
  be	
  unified	
  by	
  a	
  common	
  front-­‐end	
  parser.	
  We	
  use	
  examples	
  from	
  the	
  stream-­‐
processing	
  market	
  and	
  the	
  data-­‐warehouse	
  market	
  to	
  bolster	
  our	
  claims.	
  We	
  also	
  briefly	
  
discuss	
  other	
  markets	
  for	
  which	
  the	
  tradiConal	
  architecture	
  is	
  a	
  poor	
  fit	
  and	
  argue	
  for	
  a	
  criCcal	
  
rethinking	
  of	
  the	
  current	
  factoring	
  of	
  systems	
  services	
  into	
  products.	
  
After NoSQL
6	
  
RDBMS vs. others
7	
  
NoSQL landscape
8	
  
NoSQL raising
9	
  
10	
  
Why NoSQL
•  “The whole point of seeking alternatives [to
RDBMS systems] is that you need to solve a
problem that relational databases are a bad
fit for.” Eric Evans - Rackspace 
11	
  
Why NoSQL [cont'd]
•  ACID does not scale
•  Web applications have different needs
–  Scalability 
–  Elasticity
–  Flexible schema/ semi-structured data
–  Geographically distributed
•  Web applications do not always need
–  Transaction
–  Strong consistency
–  Complex queries
12	
  
NoSQL use cases
•  Massive data volume (Big volume)
– Google, Amazon, Yahoo, Facebook – 10-100K
servers 
•  Extreme query workload 
•  Schema evolution 
13	
  
Relational data model revisited
•  Data is usually stored in row by row
manner (row store)
•  Standardized query language (SQL)
•  Data model defined before you add
data
•  Joins merge data from multiple tables
–  Results are tables
•  Pros: Mature ACID transactions with fine-
grain security controls, widely used
•  Cons: Requires up front data modeling,
does not scale well 
14	
  
Oracle,	
  MySQL,	
  PostgreSQL,	
  
MicrosoP	
  SQL	
  Server,	
  IBM	
  
DB/2	
  	
  
Key/value data model
•  Simple key/value interface
– GET, PUT, DELETE
•  Value can contain any kind of
data
•  Pros
•  Cons
•  Berkley DB, Memcache,
DynamoDB, Redis, Riak
15	
  
Key/value vs. table
•  A table with two columns
and a simple interface
– Add a key-value
– For this key, give me the value
– Delete a key
•  Super fast and easy to scale
(no joins) 
16	
  
Key/value vs. locker
17	
  
vs. Relational Model
18	
  
Memcached
•  Open source in-memory key-value caching system
•  Make effective use of RAM on many distributed web servers
•  Designed to speed up dynamic web applications by alleviating
database load
–  Simple interface for highly distributed RAM caches
–  30ms read times typical
•  Designed for quick deployment, ease of development
•  APIs in many languages
19	
  
•  Open source in-memory key-value store with optional
durability
•  Focus on high speed reads and writes of common data
structures to RAM
•  Allows simple lists, sets and hashes to be stored
within the value and manipulated
•  Many features that developers like expiration,
transactions, pub/sub, partitioning 
20	
  
•  Scalable key-value store
•  Fastest growing product in Amazon's history
•  Focus on throughput on storage and predictable read
and write times
•  Strong integration with S3 and Elastic MapReduce
21	
  
•  Open source distributed key-value store with support
and commercial versions by Basho
•  A "Dynamo-inspired" database
•  Focus on availability, fault-tolerance, operational
simplicity and scalability
•  Support for replication and auto-sharding and
rebalancing on failures
•  Support for MapReduce, fulltext search and secondary
indexes of value tags
•  Written in ERLANG 
22	
  
Column family store
•  Dynamic schema, column-oriented data
model
•  Sparse, distributed persistent multi-
dimensional sorted map
(row, column (family), timestamp) -> cell
contents
23	
  
Column families
•  Group columns into "Column
families"
•  Group column families into
"Super-Columns"
•  Be able to query all columns
with a family or super family
•  Similar data grouped together
to improve speed 
24	
  
Column family data model vs.
relational
•  Sparse matrix, preserve table structure
– One row could have millions of columns but can
be very sparse
•  Hybrid row/column stores
•  Number of columns is extendible
– New columns to be inserted without doing an
"alter table"
25	
  
Bigtable
•  ACM TOCS 2008
•  Fault-tolerant, persistent
•  Scalable
–  Thousands of servers
–  Terabytes of in-memory data
–  Petabyte of disk-based data
–  Millions of reads/writes per
second, efficient scans
•  Self-managing
–  Servers can be added/
removed dynamically
–  Servers adjust to load
imbalance
26	
  
•  Open-source Bigtable, written in JAVA
•  Part of Apache Hadoop project
27	
  
Hadoop?
28	
  
•  Apache open source column family database
•  Supported by DataStax
•  Peer-to-peer distribution model
•  Strong reputation for linear scale out (millions of writes/
second)
•  Written in Java and works well with HDFS and
MapReduce 
29	
  
Graph data model
•  Core abstractions: Nodes, Relationships, Properties on both
30	
  
Graph database (store)
•  A database stored data in an explicitly graph structure
•  Each node knows its adjacent nodes
•  Queries are really graph traversals
31	
  
Compared to Relational
Databases
OpCmized	
  for	
  aggregaCon	
   OpCmized	
  for	
  connecCons	
  
Compared to Key Value Stores
OpCmized	
  for	
  simple	
  look-­‐ups	
   OpCmized	
  for	
  traversing	
  connected	
  data	
  
Compared to Document Stores
OpCmized	
  for	
  “trees”	
  of	
  data	
   OpCmized	
  for	
  seeing	
  the	
  forest	
  and	
  the	
  
trees,	
  and	
  the	
  branches,	
  and	
  the	
  trunks	
  
35	
  
36	
  
•  Graph database designed to be easy to use by
Java developers
•  Disk-based (not just RAM)
•  Full ACID 
•  High Availability (with Enterprise Edition)
•  32 Billion Nodes, 32 Billion Relationships, 

64 Billion Properties
•  Embedded java library
•  REST API
37	
  
Document store
•  Documents, not value, not
tables
•  JSON or XML formats
•  Document is identified by
ID
•  Allow indexing on
properties
38	
  
Relational data mapping
•  T1–HTML into Objects
•  T2–Objects into SQL Tables
•  T3–Tables into Objects
•  T4–Objects into HTML
39	
  
Web Service in the middle
•  T1 – HTML into Java Objects
•  T2 – Java Objects into SQL Tables
•  T3 – Tables into Objects
•  T4 – Objects into HTML
•  T5 – Objects to XML
•  T6 – XML to Objects
40	
  
T1	
  
T3	
  
T2	
  
T4	
  
Object	
  Middle	
  
Tier	
  
Relational	
  
Database	
  
Web	
  Browser	
  
T5	
  
Web	
  Service	
  
T6	
  
Discussion
•  Object-relational mapping has become one
of the most complex components of building
applications today
– Java Hibernate Framework
– JPA
•  To avoid complexity is to keep your
architecture very simple
41	
  
Document mapping
•  Documents in the database
•  Documents in the application
•  No object middle tier
•  No "shredding"
•  No reassembly
•  Simple!
42	
  
ApplicaCon	
  Layer	
   Database	
  
Document	
   Document	
  
•  Open Source JSON data store created by 10gen
•  Master-slave scale out model
•  Strong developer community
•  Sharding built-in, automatic
•  Implemented in C++ with many APIs (C++, JavaScript,
Java, Perl, Python etc.)
43	
  
•  Apache project
•  Open source JSON data store
•  Written in ERLANG
•  RESTful JSON API
•  B-Tree based indexing, shadowing b-tree versioning
•  ACID fully supported
•  View model
•  Data compaction
•  Security
44	
  
Ad

More Related Content

What's hot (20)

MongoDB
MongoDBMongoDB
MongoDB
nikhil2807
 
NOSQL- Presentation on NoSQL
NOSQL- Presentation on NoSQLNOSQL- Presentation on NoSQL
NOSQL- Presentation on NoSQL
Ramakant Soni
 
Hadoop File system (HDFS)
Hadoop File system (HDFS)Hadoop File system (HDFS)
Hadoop File system (HDFS)
Prashant Gupta
 
Data models
Data modelsData models
Data models
Anuj Modi
 
Introduction to NoSQL Databases
Introduction to NoSQL DatabasesIntroduction to NoSQL Databases
Introduction to NoSQL Databases
Derek Stainer
 
Basics of MongoDB
Basics of MongoDB Basics of MongoDB
Basics of MongoDB
HabileLabs
 
MongoDB presentation
MongoDB presentationMongoDB presentation
MongoDB presentation
Hyphen Call
 
NOSQL Databases types and Uses
NOSQL Databases types and UsesNOSQL Databases types and Uses
NOSQL Databases types and Uses
Suvradeep Rudra
 
Document Database
Document DatabaseDocument Database
Document Database
Heman Hosainpana
 
9. Document Oriented Databases
9. Document Oriented Databases9. Document Oriented Databases
9. Document Oriented Databases
Fabio Fumarola
 
Map Reduce
Map ReduceMap Reduce
Map Reduce
Prashant Gupta
 
NoSQL databases - An introduction
NoSQL databases - An introductionNoSQL databases - An introduction
NoSQL databases - An introduction
Pooyan Mehrparvar
 
Hadoop Distributed File System
Hadoop Distributed File SystemHadoop Distributed File System
Hadoop Distributed File System
Rutvik Bapat
 
Hadoop Tutorial For Beginners | Apache Hadoop Tutorial For Beginners | Hadoop...
Hadoop Tutorial For Beginners | Apache Hadoop Tutorial For Beginners | Hadoop...Hadoop Tutorial For Beginners | Apache Hadoop Tutorial For Beginners | Hadoop...
Hadoop Tutorial For Beginners | Apache Hadoop Tutorial For Beginners | Hadoop...
Simplilearn
 
Intro to HBase
Intro to HBaseIntro to HBase
Intro to HBase
alexbaranau
 
HBase Tutorial For Beginners | HBase Architecture | HBase Tutorial | Hadoop T...
HBase Tutorial For Beginners | HBase Architecture | HBase Tutorial | Hadoop T...HBase Tutorial For Beginners | HBase Architecture | HBase Tutorial | Hadoop T...
HBase Tutorial For Beginners | HBase Architecture | HBase Tutorial | Hadoop T...
Simplilearn
 
Introduction to MongoDB
Introduction to MongoDBIntroduction to MongoDB
Introduction to MongoDB
Mike Dirolf
 
Introduction to Apache ZooKeeper
Introduction to Apache ZooKeeperIntroduction to Apache ZooKeeper
Introduction to Apache ZooKeeper
Saurav Haloi
 
What Is Apache Spark? | Introduction To Apache Spark | Apache Spark Tutorial ...
What Is Apache Spark? | Introduction To Apache Spark | Apache Spark Tutorial ...What Is Apache Spark? | Introduction To Apache Spark | Apache Spark Tutorial ...
What Is Apache Spark? | Introduction To Apache Spark | Apache Spark Tutorial ...
Simplilearn
 
The Basics of MongoDB
The Basics of MongoDBThe Basics of MongoDB
The Basics of MongoDB
valuebound
 
NOSQL- Presentation on NoSQL
NOSQL- Presentation on NoSQLNOSQL- Presentation on NoSQL
NOSQL- Presentation on NoSQL
Ramakant Soni
 
Hadoop File system (HDFS)
Hadoop File system (HDFS)Hadoop File system (HDFS)
Hadoop File system (HDFS)
Prashant Gupta
 
Introduction to NoSQL Databases
Introduction to NoSQL DatabasesIntroduction to NoSQL Databases
Introduction to NoSQL Databases
Derek Stainer
 
Basics of MongoDB
Basics of MongoDB Basics of MongoDB
Basics of MongoDB
HabileLabs
 
MongoDB presentation
MongoDB presentationMongoDB presentation
MongoDB presentation
Hyphen Call
 
NOSQL Databases types and Uses
NOSQL Databases types and UsesNOSQL Databases types and Uses
NOSQL Databases types and Uses
Suvradeep Rudra
 
9. Document Oriented Databases
9. Document Oriented Databases9. Document Oriented Databases
9. Document Oriented Databases
Fabio Fumarola
 
NoSQL databases - An introduction
NoSQL databases - An introductionNoSQL databases - An introduction
NoSQL databases - An introduction
Pooyan Mehrparvar
 
Hadoop Distributed File System
Hadoop Distributed File SystemHadoop Distributed File System
Hadoop Distributed File System
Rutvik Bapat
 
Hadoop Tutorial For Beginners | Apache Hadoop Tutorial For Beginners | Hadoop...
Hadoop Tutorial For Beginners | Apache Hadoop Tutorial For Beginners | Hadoop...Hadoop Tutorial For Beginners | Apache Hadoop Tutorial For Beginners | Hadoop...
Hadoop Tutorial For Beginners | Apache Hadoop Tutorial For Beginners | Hadoop...
Simplilearn
 
HBase Tutorial For Beginners | HBase Architecture | HBase Tutorial | Hadoop T...
HBase Tutorial For Beginners | HBase Architecture | HBase Tutorial | Hadoop T...HBase Tutorial For Beginners | HBase Architecture | HBase Tutorial | Hadoop T...
HBase Tutorial For Beginners | HBase Architecture | HBase Tutorial | Hadoop T...
Simplilearn
 
Introduction to MongoDB
Introduction to MongoDBIntroduction to MongoDB
Introduction to MongoDB
Mike Dirolf
 
Introduction to Apache ZooKeeper
Introduction to Apache ZooKeeperIntroduction to Apache ZooKeeper
Introduction to Apache ZooKeeper
Saurav Haloi
 
What Is Apache Spark? | Introduction To Apache Spark | Apache Spark Tutorial ...
What Is Apache Spark? | Introduction To Apache Spark | Apache Spark Tutorial ...What Is Apache Spark? | Introduction To Apache Spark | Apache Spark Tutorial ...
What Is Apache Spark? | Introduction To Apache Spark | Apache Spark Tutorial ...
Simplilearn
 
The Basics of MongoDB
The Basics of MongoDBThe Basics of MongoDB
The Basics of MongoDB
valuebound
 

Viewers also liked (20)

5 Data Modeling for NoSQL 1/2
5 Data Modeling for NoSQL 1/25 Data Modeling for NoSQL 1/2
5 Data Modeling for NoSQL 1/2
Fabio Fumarola
 
Data Modeling for NoSQL
Data Modeling for NoSQLData Modeling for NoSQL
Data Modeling for NoSQL
Tony Tam
 
Big Challenges in Data Modeling: NoSQL and Data Modeling
Big Challenges in Data Modeling: NoSQL and Data ModelingBig Challenges in Data Modeling: NoSQL and Data Modeling
Big Challenges in Data Modeling: NoSQL and Data Modeling
DATAVERSITY
 
SQL, NoSQL, BigData in Data Architecture
SQL, NoSQL, BigData in Data ArchitectureSQL, NoSQL, BigData in Data Architecture
SQL, NoSQL, BigData in Data Architecture
Venu Anuganti
 
NoSQL Consepts
NoSQL ConseptsNoSQL Consepts
NoSQL Consepts
Maynooth University
 
BigData, NoSQL & ElasticSearch
BigData, NoSQL & ElasticSearchBigData, NoSQL & ElasticSearch
BigData, NoSQL & ElasticSearch
Sanura Hettiarachchi
 
Redis vs Memcached
Redis vs MemcachedRedis vs Memcached
Redis vs Memcached
Gaurav Agrawal
 
Solr cloud the 'search first' nosql database extended deep dive
Solr cloud the 'search first' nosql database   extended deep diveSolr cloud the 'search first' nosql database   extended deep dive
Solr cloud the 'search first' nosql database extended deep dive
lucenerevolution
 
آموزش مدیریت بانک اطلاعاتی اوراکل - بخش سوم
آموزش مدیریت بانک اطلاعاتی اوراکل - بخش سومآموزش مدیریت بانک اطلاعاتی اوراکل - بخش سوم
آموزش مدیریت بانک اطلاعاتی اوراکل - بخش سوم
faradars
 
MongoDB Schema Design (Richard Kreuter's Mongo Berlin preso)
MongoDB Schema Design (Richard Kreuter's Mongo Berlin preso)MongoDB Schema Design (Richard Kreuter's Mongo Berlin preso)
MongoDB Schema Design (Richard Kreuter's Mongo Berlin preso)
MongoDB
 
Data Modeling for Integration of NoSQL with a Data Warehouse
Data Modeling for Integration of NoSQL with a Data WarehouseData Modeling for Integration of NoSQL with a Data Warehouse
Data Modeling for Integration of NoSQL with a Data Warehouse
Daniel Upton
 
NoSQL and MapReduce
NoSQL and MapReduceNoSQL and MapReduce
NoSQL and MapReduce
J Singh
 
NoSQL and Data Modeling for Data Modelers
NoSQL and Data Modeling for Data ModelersNoSQL and Data Modeling for Data Modelers
NoSQL and Data Modeling for Data Modelers
Karen Lopez
 
Real-World NoSQL Schema Design
Real-World NoSQL Schema DesignReal-World NoSQL Schema Design
Real-World NoSQL Schema Design
DataWorks Summit/Hadoop Summit
 
SDEC2011 NoSQL Data modelling
SDEC2011 NoSQL Data modellingSDEC2011 NoSQL Data modelling
SDEC2011 NoSQL Data modelling
Korea Sdec
 
NoSQL databases and managing big data
NoSQL databases and managing big dataNoSQL databases and managing big data
NoSQL databases and managing big data
Steven Francia
 
Leveraging SAP HANA with Apache Hadoop and SAP Analytics
Leveraging SAP HANA with Apache Hadoop and SAP AnalyticsLeveraging SAP HANA with Apache Hadoop and SAP Analytics
Leveraging SAP HANA with Apache Hadoop and SAP Analytics
Method360
 
Big Data Modeling and Analytic Patterns – Beyond Schema on Read
Big Data Modeling and Analytic Patterns – Beyond Schema on ReadBig Data Modeling and Analytic Patterns – Beyond Schema on Read
Big Data Modeling and Analytic Patterns – Beyond Schema on Read
Think Big, a Teradata Company
 
Leveraging SAP, Hadoop, and Big Data to Redefine Business
Leveraging SAP, Hadoop, and Big Data to Redefine BusinessLeveraging SAP, Hadoop, and Big Data to Redefine Business
Leveraging SAP, Hadoop, and Big Data to Redefine Business
DataWorks Summit
 
5 Data Modeling for NoSQL 1/2
5 Data Modeling for NoSQL 1/25 Data Modeling for NoSQL 1/2
5 Data Modeling for NoSQL 1/2
Fabio Fumarola
 
Data Modeling for NoSQL
Data Modeling for NoSQLData Modeling for NoSQL
Data Modeling for NoSQL
Tony Tam
 
Big Challenges in Data Modeling: NoSQL and Data Modeling
Big Challenges in Data Modeling: NoSQL and Data ModelingBig Challenges in Data Modeling: NoSQL and Data Modeling
Big Challenges in Data Modeling: NoSQL and Data Modeling
DATAVERSITY
 
SQL, NoSQL, BigData in Data Architecture
SQL, NoSQL, BigData in Data ArchitectureSQL, NoSQL, BigData in Data Architecture
SQL, NoSQL, BigData in Data Architecture
Venu Anuganti
 
Solr cloud the 'search first' nosql database extended deep dive
Solr cloud the 'search first' nosql database   extended deep diveSolr cloud the 'search first' nosql database   extended deep dive
Solr cloud the 'search first' nosql database extended deep dive
lucenerevolution
 
آموزش مدیریت بانک اطلاعاتی اوراکل - بخش سوم
آموزش مدیریت بانک اطلاعاتی اوراکل - بخش سومآموزش مدیریت بانک اطلاعاتی اوراکل - بخش سوم
آموزش مدیریت بانک اطلاعاتی اوراکل - بخش سوم
faradars
 
MongoDB Schema Design (Richard Kreuter's Mongo Berlin preso)
MongoDB Schema Design (Richard Kreuter's Mongo Berlin preso)MongoDB Schema Design (Richard Kreuter's Mongo Berlin preso)
MongoDB Schema Design (Richard Kreuter's Mongo Berlin preso)
MongoDB
 
Data Modeling for Integration of NoSQL with a Data Warehouse
Data Modeling for Integration of NoSQL with a Data WarehouseData Modeling for Integration of NoSQL with a Data Warehouse
Data Modeling for Integration of NoSQL with a Data Warehouse
Daniel Upton
 
NoSQL and MapReduce
NoSQL and MapReduceNoSQL and MapReduce
NoSQL and MapReduce
J Singh
 
NoSQL and Data Modeling for Data Modelers
NoSQL and Data Modeling for Data ModelersNoSQL and Data Modeling for Data Modelers
NoSQL and Data Modeling for Data Modelers
Karen Lopez
 
SDEC2011 NoSQL Data modelling
SDEC2011 NoSQL Data modellingSDEC2011 NoSQL Data modelling
SDEC2011 NoSQL Data modelling
Korea Sdec
 
NoSQL databases and managing big data
NoSQL databases and managing big dataNoSQL databases and managing big data
NoSQL databases and managing big data
Steven Francia
 
Leveraging SAP HANA with Apache Hadoop and SAP Analytics
Leveraging SAP HANA with Apache Hadoop and SAP AnalyticsLeveraging SAP HANA with Apache Hadoop and SAP Analytics
Leveraging SAP HANA with Apache Hadoop and SAP Analytics
Method360
 
Big Data Modeling and Analytic Patterns – Beyond Schema on Read
Big Data Modeling and Analytic Patterns – Beyond Schema on ReadBig Data Modeling and Analytic Patterns – Beyond Schema on Read
Big Data Modeling and Analytic Patterns – Beyond Schema on Read
Think Big, a Teradata Company
 
Leveraging SAP, Hadoop, and Big Data to Redefine Business
Leveraging SAP, Hadoop, and Big Data to Redefine BusinessLeveraging SAP, Hadoop, and Big Data to Redefine Business
Leveraging SAP, Hadoop, and Big Data to Redefine Business
DataWorks Summit
 
Ad

Similar to Nosql data models (20)

No SQL- The Future Of Data Storage
No SQL- The Future Of Data StorageNo SQL- The Future Of Data Storage
No SQL- The Future Of Data Storage
Bethmi Gunasekara
 
Sql Server2008
Sql Server2008Sql Server2008
Sql Server2008
Microsoft Iceland
 
A Survey of Advanced Non-relational Database Systems: Approaches and Applicat...
A Survey of Advanced Non-relational Database Systems: Approaches and Applicat...A Survey of Advanced Non-relational Database Systems: Approaches and Applicat...
A Survey of Advanced Non-relational Database Systems: Approaches and Applicat...
Qian Lin
 
Nosql databases
Nosql databasesNosql databases
Nosql databases
Fayez Shayeb
 
Introduction to Data Science NoSQL.pptx
Introduction to Data Science  NoSQL.pptxIntroduction to Data Science  NoSQL.pptx
Introduction to Data Science NoSQL.pptx
tarakesh7199
 
Introduction to asdfghjkln b vfgh n v
Introduction to asdfghjkln b vfgh n    vIntroduction to asdfghjkln b vfgh n    v
Introduction to asdfghjkln b vfgh n v
23mz02
 
NoSQL.pptx
NoSQL.pptxNoSQL.pptx
NoSQL.pptx
RithikRaj25
 
Revision
RevisionRevision
Revision
David Sherlock
 
cours database pour etudiant NoSQL (1).pptx
cours database pour etudiant NoSQL (1).pptxcours database pour etudiant NoSQL (1).pptx
cours database pour etudiant NoSQL (1).pptx
ssuser1fde9c
 
NoSQL Architecture Overview
NoSQL Architecture OverviewNoSQL Architecture Overview
NoSQL Architecture Overview
Christopher Foot
 
UNIT I Introduction to NoSQL.pptx
UNIT I Introduction to NoSQL.pptxUNIT I Introduction to NoSQL.pptx
UNIT I Introduction to NoSQL.pptx
Rahul Borate
 
Oracle Week 2016 - Modern Data Architecture
Oracle Week 2016 - Modern Data ArchitectureOracle Week 2016 - Modern Data Architecture
Oracle Week 2016 - Modern Data Architecture
Arthur Gimpel
 
Module 2.2 Introduction to NoSQL Databases.pptx
Module 2.2 Introduction to NoSQL Databases.pptxModule 2.2 Introduction to NoSQL Databases.pptx
Module 2.2 Introduction to NoSQL Databases.pptx
NiramayKolalle
 
No SQL
No SQLNo SQL
No SQL
The lazy hoplite
 
Introduction to no sql database
Introduction to no sql databaseIntroduction to no sql database
Introduction to no sql database
Heman Hosainpana
 
Database Technologies
Database TechnologiesDatabase Technologies
Database Technologies
Michel de Goede
 
UNIT I Introduction to NoSQL.pptx
UNIT I Introduction to NoSQL.pptxUNIT I Introduction to NoSQL.pptx
UNIT I Introduction to NoSQL.pptx
Rahul Borate
 
Use a data parallel approach to proAcess
Use a data parallel approach to proAcessUse a data parallel approach to proAcess
Use a data parallel approach to proAcess
23mz02
 
A tour of Amazon Redshift
A tour of Amazon RedshiftA tour of Amazon Redshift
A tour of Amazon Redshift
Kel Graham
 
NoSql Brownbag
NoSql BrownbagNoSql Brownbag
NoSql Brownbag
Sandeep Kumar
 
No SQL- The Future Of Data Storage
No SQL- The Future Of Data StorageNo SQL- The Future Of Data Storage
No SQL- The Future Of Data Storage
Bethmi Gunasekara
 
A Survey of Advanced Non-relational Database Systems: Approaches and Applicat...
A Survey of Advanced Non-relational Database Systems: Approaches and Applicat...A Survey of Advanced Non-relational Database Systems: Approaches and Applicat...
A Survey of Advanced Non-relational Database Systems: Approaches and Applicat...
Qian Lin
 
Introduction to Data Science NoSQL.pptx
Introduction to Data Science  NoSQL.pptxIntroduction to Data Science  NoSQL.pptx
Introduction to Data Science NoSQL.pptx
tarakesh7199
 
Introduction to asdfghjkln b vfgh n v
Introduction to asdfghjkln b vfgh n    vIntroduction to asdfghjkln b vfgh n    v
Introduction to asdfghjkln b vfgh n v
23mz02
 
cours database pour etudiant NoSQL (1).pptx
cours database pour etudiant NoSQL (1).pptxcours database pour etudiant NoSQL (1).pptx
cours database pour etudiant NoSQL (1).pptx
ssuser1fde9c
 
NoSQL Architecture Overview
NoSQL Architecture OverviewNoSQL Architecture Overview
NoSQL Architecture Overview
Christopher Foot
 
UNIT I Introduction to NoSQL.pptx
UNIT I Introduction to NoSQL.pptxUNIT I Introduction to NoSQL.pptx
UNIT I Introduction to NoSQL.pptx
Rahul Borate
 
Oracle Week 2016 - Modern Data Architecture
Oracle Week 2016 - Modern Data ArchitectureOracle Week 2016 - Modern Data Architecture
Oracle Week 2016 - Modern Data Architecture
Arthur Gimpel
 
Module 2.2 Introduction to NoSQL Databases.pptx
Module 2.2 Introduction to NoSQL Databases.pptxModule 2.2 Introduction to NoSQL Databases.pptx
Module 2.2 Introduction to NoSQL Databases.pptx
NiramayKolalle
 
Introduction to no sql database
Introduction to no sql databaseIntroduction to no sql database
Introduction to no sql database
Heman Hosainpana
 
UNIT I Introduction to NoSQL.pptx
UNIT I Introduction to NoSQL.pptxUNIT I Introduction to NoSQL.pptx
UNIT I Introduction to NoSQL.pptx
Rahul Borate
 
Use a data parallel approach to proAcess
Use a data parallel approach to proAcessUse a data parallel approach to proAcess
Use a data parallel approach to proAcess
23mz02
 
A tour of Amazon Redshift
A tour of Amazon RedshiftA tour of Amazon Redshift
A tour of Amazon Redshift
Kel Graham
 
Ad

More from Viet-Trung TRAN (20)

Bắt đầu tìm hiểu về dữ liệu lớn như thế nào - 2017
Bắt đầu tìm hiểu về dữ liệu lớn như thế nào - 2017Bắt đầu tìm hiểu về dữ liệu lớn như thế nào - 2017
Bắt đầu tìm hiểu về dữ liệu lớn như thế nào - 2017
Viet-Trung TRAN
 
Dynamo: Amazon’s Highly Available Key-value Store
Dynamo: Amazon’s Highly Available Key-value StoreDynamo: Amazon’s Highly Available Key-value Store
Dynamo: Amazon’s Highly Available Key-value Store
Viet-Trung TRAN
 
Pregel: Hệ thống xử lý đồ thị lớn
Pregel: Hệ thống xử lý đồ thị lớnPregel: Hệ thống xử lý đồ thị lớn
Pregel: Hệ thống xử lý đồ thị lớn
Viet-Trung TRAN
 
Mapreduce simplified-data-processing
Mapreduce simplified-data-processingMapreduce simplified-data-processing
Mapreduce simplified-data-processing
Viet-Trung TRAN
 
Tìm kiếm needle trong Haystack: Hệ thống lưu trữ ảnh của Facebook
Tìm kiếm needle trong Haystack: Hệ thống lưu trữ ảnh của FacebookTìm kiếm needle trong Haystack: Hệ thống lưu trữ ảnh của Facebook
Tìm kiếm needle trong Haystack: Hệ thống lưu trữ ảnh của Facebook
Viet-Trung TRAN
 
giasan.vn real-estate analytics: a Vietnam case study
giasan.vn real-estate analytics: a Vietnam case studygiasan.vn real-estate analytics: a Vietnam case study
giasan.vn real-estate analytics: a Vietnam case study
Viet-Trung TRAN
 
Giasan.vn @rstars
Giasan.vn @rstarsGiasan.vn @rstars
Giasan.vn @rstars
Viet-Trung TRAN
 
A Vietnamese Language Model Based on Recurrent Neural Network
A Vietnamese Language Model Based on Recurrent Neural NetworkA Vietnamese Language Model Based on Recurrent Neural Network
A Vietnamese Language Model Based on Recurrent Neural Network
Viet-Trung TRAN
 
A Vietnamese Language Model Based on Recurrent Neural Network
A Vietnamese Language Model Based on Recurrent Neural NetworkA Vietnamese Language Model Based on Recurrent Neural Network
A Vietnamese Language Model Based on Recurrent Neural Network
Viet-Trung TRAN
 
Large-Scale Geographically Weighted Regression on Spark
Large-Scale Geographically Weighted Regression on SparkLarge-Scale Geographically Weighted Regression on Spark
Large-Scale Geographically Weighted Regression on Spark
Viet-Trung TRAN
 
Recent progress on distributing deep learning
Recent progress on distributing deep learningRecent progress on distributing deep learning
Recent progress on distributing deep learning
Viet-Trung TRAN
 
success factors for project proposals
success factors for project proposalssuccess factors for project proposals
success factors for project proposals
Viet-Trung TRAN
 
GPSinsights poster
GPSinsights posterGPSinsights poster
GPSinsights poster
Viet-Trung TRAN
 
OCR processing with deep learning: Apply to Vietnamese documents
OCR processing with deep learning: Apply to Vietnamese documents OCR processing with deep learning: Apply to Vietnamese documents
OCR processing with deep learning: Apply to Vietnamese documents
Viet-Trung TRAN
 
Paper@Soict2015: GPSInsights: towards a scalable framework for mining massive...
Paper@Soict2015: GPSInsights: towards a scalable framework for mining massive...Paper@Soict2015: GPSInsights: towards a scalable framework for mining massive...
Paper@Soict2015: GPSInsights: towards a scalable framework for mining massive...
Viet-Trung TRAN
 
Deep learning for nlp
Deep learning for nlpDeep learning for nlp
Deep learning for nlp
Viet-Trung TRAN
 
Introduction to BigData @TCTK2015
Introduction to BigData @TCTK2015Introduction to BigData @TCTK2015
Introduction to BigData @TCTK2015
Viet-Trung TRAN
 
From neural networks to deep learning
From neural networks to deep learningFrom neural networks to deep learning
From neural networks to deep learning
Viet-Trung TRAN
 
From decision trees to random forests
From decision trees to random forestsFrom decision trees to random forests
From decision trees to random forests
Viet-Trung TRAN
 
Recommender systems: Content-based and collaborative filtering
Recommender systems: Content-based and collaborative filteringRecommender systems: Content-based and collaborative filtering
Recommender systems: Content-based and collaborative filtering
Viet-Trung TRAN
 
Bắt đầu tìm hiểu về dữ liệu lớn như thế nào - 2017
Bắt đầu tìm hiểu về dữ liệu lớn như thế nào - 2017Bắt đầu tìm hiểu về dữ liệu lớn như thế nào - 2017
Bắt đầu tìm hiểu về dữ liệu lớn như thế nào - 2017
Viet-Trung TRAN
 
Dynamo: Amazon’s Highly Available Key-value Store
Dynamo: Amazon’s Highly Available Key-value StoreDynamo: Amazon’s Highly Available Key-value Store
Dynamo: Amazon’s Highly Available Key-value Store
Viet-Trung TRAN
 
Pregel: Hệ thống xử lý đồ thị lớn
Pregel: Hệ thống xử lý đồ thị lớnPregel: Hệ thống xử lý đồ thị lớn
Pregel: Hệ thống xử lý đồ thị lớn
Viet-Trung TRAN
 
Mapreduce simplified-data-processing
Mapreduce simplified-data-processingMapreduce simplified-data-processing
Mapreduce simplified-data-processing
Viet-Trung TRAN
 
Tìm kiếm needle trong Haystack: Hệ thống lưu trữ ảnh của Facebook
Tìm kiếm needle trong Haystack: Hệ thống lưu trữ ảnh của FacebookTìm kiếm needle trong Haystack: Hệ thống lưu trữ ảnh của Facebook
Tìm kiếm needle trong Haystack: Hệ thống lưu trữ ảnh của Facebook
Viet-Trung TRAN
 
giasan.vn real-estate analytics: a Vietnam case study
giasan.vn real-estate analytics: a Vietnam case studygiasan.vn real-estate analytics: a Vietnam case study
giasan.vn real-estate analytics: a Vietnam case study
Viet-Trung TRAN
 
A Vietnamese Language Model Based on Recurrent Neural Network
A Vietnamese Language Model Based on Recurrent Neural NetworkA Vietnamese Language Model Based on Recurrent Neural Network
A Vietnamese Language Model Based on Recurrent Neural Network
Viet-Trung TRAN
 
A Vietnamese Language Model Based on Recurrent Neural Network
A Vietnamese Language Model Based on Recurrent Neural NetworkA Vietnamese Language Model Based on Recurrent Neural Network
A Vietnamese Language Model Based on Recurrent Neural Network
Viet-Trung TRAN
 
Large-Scale Geographically Weighted Regression on Spark
Large-Scale Geographically Weighted Regression on SparkLarge-Scale Geographically Weighted Regression on Spark
Large-Scale Geographically Weighted Regression on Spark
Viet-Trung TRAN
 
Recent progress on distributing deep learning
Recent progress on distributing deep learningRecent progress on distributing deep learning
Recent progress on distributing deep learning
Viet-Trung TRAN
 
success factors for project proposals
success factors for project proposalssuccess factors for project proposals
success factors for project proposals
Viet-Trung TRAN
 
OCR processing with deep learning: Apply to Vietnamese documents
OCR processing with deep learning: Apply to Vietnamese documents OCR processing with deep learning: Apply to Vietnamese documents
OCR processing with deep learning: Apply to Vietnamese documents
Viet-Trung TRAN
 
Paper@Soict2015: GPSInsights: towards a scalable framework for mining massive...
Paper@Soict2015: GPSInsights: towards a scalable framework for mining massive...Paper@Soict2015: GPSInsights: towards a scalable framework for mining massive...
Paper@Soict2015: GPSInsights: towards a scalable framework for mining massive...
Viet-Trung TRAN
 
Introduction to BigData @TCTK2015
Introduction to BigData @TCTK2015Introduction to BigData @TCTK2015
Introduction to BigData @TCTK2015
Viet-Trung TRAN
 
From neural networks to deep learning
From neural networks to deep learningFrom neural networks to deep learning
From neural networks to deep learning
Viet-Trung TRAN
 
From decision trees to random forests
From decision trees to random forestsFrom decision trees to random forests
From decision trees to random forests
Viet-Trung TRAN
 
Recommender systems: Content-based and collaborative filtering
Recommender systems: Content-based and collaborative filteringRecommender systems: Content-based and collaborative filtering
Recommender systems: Content-based and collaborative filtering
Viet-Trung TRAN
 

Recently uploaded (20)

Chromatography_Detailed_Information.docx
Chromatography_Detailed_Information.docxChromatography_Detailed_Information.docx
Chromatography_Detailed_Information.docx
NohaSalah45
 
brainstorming-techniques-infographics.pptx
brainstorming-techniques-infographics.pptxbrainstorming-techniques-infographics.pptx
brainstorming-techniques-infographics.pptx
maritzacastro321
 
Shotgun detailed overview my this ppt formate
Shotgun detailed overview my this ppt formateShotgun detailed overview my this ppt formate
Shotgun detailed overview my this ppt formate
freefreefire0998
 
shit yudh slideshare power likha point presen
shit yudh slideshare power likha point presenshit yudh slideshare power likha point presen
shit yudh slideshare power likha point presen
vishalgurjar11229
 
Digilocker under workingProcess Flow.pptx
Digilocker  under workingProcess Flow.pptxDigilocker  under workingProcess Flow.pptx
Digilocker under workingProcess Flow.pptx
satnamsadguru491
 
Cleaned_Lecture 6666666_Simulation_I.pdf
Cleaned_Lecture 6666666_Simulation_I.pdfCleaned_Lecture 6666666_Simulation_I.pdf
Cleaned_Lecture 6666666_Simulation_I.pdf
alcinialbob1234
 
Ppt. Nikhil.pptxnshwuudgcudisisshvehsjks
Ppt. Nikhil.pptxnshwuudgcudisisshvehsjksPpt. Nikhil.pptxnshwuudgcudisisshvehsjks
Ppt. Nikhil.pptxnshwuudgcudisisshvehsjks
panchariyasahil
 
md-presentHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHation.pptx
md-presentHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHation.pptxmd-presentHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHation.pptx
md-presentHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHation.pptx
fatimalazaar2004
 
Call illuminati Agent in uganda+256776963507/0741506136
Call illuminati Agent in uganda+256776963507/0741506136Call illuminati Agent in uganda+256776963507/0741506136
Call illuminati Agent in uganda+256776963507/0741506136
illuminati Agent uganda call+256776963507/0741506136
 
How to join illuminati Agent in uganda call+256776963507/0741506136
How to join illuminati Agent in uganda call+256776963507/0741506136How to join illuminati Agent in uganda call+256776963507/0741506136
How to join illuminati Agent in uganda call+256776963507/0741506136
illuminati Agent uganda call+256776963507/0741506136
 
IAS-slides2-ia-aaaaaaaaaaain-business.pdf
IAS-slides2-ia-aaaaaaaaaaain-business.pdfIAS-slides2-ia-aaaaaaaaaaain-business.pdf
IAS-slides2-ia-aaaaaaaaaaain-business.pdf
mcgardenlevi9
 
Thingyan is now a global treasure! See how people around the world are search...
Thingyan is now a global treasure! See how people around the world are search...Thingyan is now a global treasure! See how people around the world are search...
Thingyan is now a global treasure! See how people around the world are search...
Pixellion
 
Data Analytics Overview and its applications
Data Analytics Overview and its applicationsData Analytics Overview and its applications
Data Analytics Overview and its applications
JanmejayaMishra7
 
Perencanaan Pengendalian-Proyek-Konstruksi-MS-PROJECT.pptx
Perencanaan Pengendalian-Proyek-Konstruksi-MS-PROJECT.pptxPerencanaan Pengendalian-Proyek-Konstruksi-MS-PROJECT.pptx
Perencanaan Pengendalian-Proyek-Konstruksi-MS-PROJECT.pptx
PareaRusan
 
Minions Want to eat presentacion muy linda
Minions Want to eat presentacion muy lindaMinions Want to eat presentacion muy linda
Minions Want to eat presentacion muy linda
CarlaAndradesSoler1
 
Developing Security Orchestration, Automation, and Response Applications
Developing Security Orchestration, Automation, and Response ApplicationsDeveloping Security Orchestration, Automation, and Response Applications
Developing Security Orchestration, Automation, and Response Applications
VICTOR MAESTRE RAMIREZ
 
Adobe Analytics NOAM Central User Group April 2025 Agent AI: Uncovering the S...
Adobe Analytics NOAM Central User Group April 2025 Agent AI: Uncovering the S...Adobe Analytics NOAM Central User Group April 2025 Agent AI: Uncovering the S...
Adobe Analytics NOAM Central User Group April 2025 Agent AI: Uncovering the S...
gmuir1066
 
Flip flop presenation-Presented By Mubahir khan.pptx
Flip flop presenation-Presented By Mubahir khan.pptxFlip flop presenation-Presented By Mubahir khan.pptx
Flip flop presenation-Presented By Mubahir khan.pptx
mubashirkhan45461
 
Andhra Pradesh Micro Irrigation Project”
Andhra Pradesh Micro Irrigation Project”Andhra Pradesh Micro Irrigation Project”
Andhra Pradesh Micro Irrigation Project”
vzmcareers
 
Template_A3nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn
Template_A3nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnTemplate_A3nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn
Template_A3nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn
cegiver630
 
Chromatography_Detailed_Information.docx
Chromatography_Detailed_Information.docxChromatography_Detailed_Information.docx
Chromatography_Detailed_Information.docx
NohaSalah45
 
brainstorming-techniques-infographics.pptx
brainstorming-techniques-infographics.pptxbrainstorming-techniques-infographics.pptx
brainstorming-techniques-infographics.pptx
maritzacastro321
 
Shotgun detailed overview my this ppt formate
Shotgun detailed overview my this ppt formateShotgun detailed overview my this ppt formate
Shotgun detailed overview my this ppt formate
freefreefire0998
 
shit yudh slideshare power likha point presen
shit yudh slideshare power likha point presenshit yudh slideshare power likha point presen
shit yudh slideshare power likha point presen
vishalgurjar11229
 
Digilocker under workingProcess Flow.pptx
Digilocker  under workingProcess Flow.pptxDigilocker  under workingProcess Flow.pptx
Digilocker under workingProcess Flow.pptx
satnamsadguru491
 
Cleaned_Lecture 6666666_Simulation_I.pdf
Cleaned_Lecture 6666666_Simulation_I.pdfCleaned_Lecture 6666666_Simulation_I.pdf
Cleaned_Lecture 6666666_Simulation_I.pdf
alcinialbob1234
 
Ppt. Nikhil.pptxnshwuudgcudisisshvehsjks
Ppt. Nikhil.pptxnshwuudgcudisisshvehsjksPpt. Nikhil.pptxnshwuudgcudisisshvehsjks
Ppt. Nikhil.pptxnshwuudgcudisisshvehsjks
panchariyasahil
 
md-presentHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHation.pptx
md-presentHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHation.pptxmd-presentHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHation.pptx
md-presentHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHation.pptx
fatimalazaar2004
 
IAS-slides2-ia-aaaaaaaaaaain-business.pdf
IAS-slides2-ia-aaaaaaaaaaain-business.pdfIAS-slides2-ia-aaaaaaaaaaain-business.pdf
IAS-slides2-ia-aaaaaaaaaaain-business.pdf
mcgardenlevi9
 
Thingyan is now a global treasure! See how people around the world are search...
Thingyan is now a global treasure! See how people around the world are search...Thingyan is now a global treasure! See how people around the world are search...
Thingyan is now a global treasure! See how people around the world are search...
Pixellion
 
Data Analytics Overview and its applications
Data Analytics Overview and its applicationsData Analytics Overview and its applications
Data Analytics Overview and its applications
JanmejayaMishra7
 
Perencanaan Pengendalian-Proyek-Konstruksi-MS-PROJECT.pptx
Perencanaan Pengendalian-Proyek-Konstruksi-MS-PROJECT.pptxPerencanaan Pengendalian-Proyek-Konstruksi-MS-PROJECT.pptx
Perencanaan Pengendalian-Proyek-Konstruksi-MS-PROJECT.pptx
PareaRusan
 
Minions Want to eat presentacion muy linda
Minions Want to eat presentacion muy lindaMinions Want to eat presentacion muy linda
Minions Want to eat presentacion muy linda
CarlaAndradesSoler1
 
Developing Security Orchestration, Automation, and Response Applications
Developing Security Orchestration, Automation, and Response ApplicationsDeveloping Security Orchestration, Automation, and Response Applications
Developing Security Orchestration, Automation, and Response Applications
VICTOR MAESTRE RAMIREZ
 
Adobe Analytics NOAM Central User Group April 2025 Agent AI: Uncovering the S...
Adobe Analytics NOAM Central User Group April 2025 Agent AI: Uncovering the S...Adobe Analytics NOAM Central User Group April 2025 Agent AI: Uncovering the S...
Adobe Analytics NOAM Central User Group April 2025 Agent AI: Uncovering the S...
gmuir1066
 
Flip flop presenation-Presented By Mubahir khan.pptx
Flip flop presenation-Presented By Mubahir khan.pptxFlip flop presenation-Presented By Mubahir khan.pptx
Flip flop presenation-Presented By Mubahir khan.pptx
mubashirkhan45461
 
Andhra Pradesh Micro Irrigation Project”
Andhra Pradesh Micro Irrigation Project”Andhra Pradesh Micro Irrigation Project”
Andhra Pradesh Micro Irrigation Project”
vzmcareers
 
Template_A3nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn
Template_A3nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnTemplate_A3nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn
Template_A3nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn
cegiver630
 

Nosql data models

  • 1. NoSQL data models Viet-Trung Tran is.hust.edu.vn/~trungtv/ 1  
  • 2. Eras of Databases •  Why NoSQL? 2  
  • 5. ICDE 2005 conference 5   The  last  25  years  of  commercial  DBMS  development  can  be  summed  up  in  a  single  phrase:   "one  size  fits  all".  This  phrase  refers  to  the  fact  that  the  tradi.onal  DBMS  architecture   (originally  designed  and  op.mized  for  business  data  processing)  has  been  used  to  support   many  data-­‐centric  applica.ons  with  widely  varying  characterisCcs  and  requirements.  In  this   paper,  we  argue  that  this  concept  is  no  longer  applicable  to  the  database  market,  and  that  the   commercial  world  will  fracture  into  a  collecCon  of  independent  database  engines,  some  of   which  may  be  unified  by  a  common  front-­‐end  parser.  We  use  examples  from  the  stream-­‐ processing  market  and  the  data-­‐warehouse  market  to  bolster  our  claims.  We  also  briefly   discuss  other  markets  for  which  the  tradiConal  architecture  is  a  poor  fit  and  argue  for  a  criCcal   rethinking  of  the  current  factoring  of  systems  services  into  products.  
  • 10. 10  
  • 11. Why NoSQL •  “The whole point of seeking alternatives [to RDBMS systems] is that you need to solve a problem that relational databases are a bad fit for.” Eric Evans - Rackspace 11  
  • 12. Why NoSQL [cont'd] •  ACID does not scale •  Web applications have different needs –  Scalability –  Elasticity –  Flexible schema/ semi-structured data –  Geographically distributed •  Web applications do not always need –  Transaction –  Strong consistency –  Complex queries 12  
  • 13. NoSQL use cases •  Massive data volume (Big volume) – Google, Amazon, Yahoo, Facebook – 10-100K servers •  Extreme query workload •  Schema evolution 13  
  • 14. Relational data model revisited •  Data is usually stored in row by row manner (row store) •  Standardized query language (SQL) •  Data model defined before you add data •  Joins merge data from multiple tables –  Results are tables •  Pros: Mature ACID transactions with fine- grain security controls, widely used •  Cons: Requires up front data modeling, does not scale well 14   Oracle,  MySQL,  PostgreSQL,   MicrosoP  SQL  Server,  IBM   DB/2    
  • 15. Key/value data model •  Simple key/value interface – GET, PUT, DELETE •  Value can contain any kind of data •  Pros •  Cons •  Berkley DB, Memcache, DynamoDB, Redis, Riak 15  
  • 16. Key/value vs. table •  A table with two columns and a simple interface – Add a key-value – For this key, give me the value – Delete a key •  Super fast and easy to scale (no joins) 16  
  • 19. Memcached •  Open source in-memory key-value caching system •  Make effective use of RAM on many distributed web servers •  Designed to speed up dynamic web applications by alleviating database load –  Simple interface for highly distributed RAM caches –  30ms read times typical •  Designed for quick deployment, ease of development •  APIs in many languages 19  
  • 20. •  Open source in-memory key-value store with optional durability •  Focus on high speed reads and writes of common data structures to RAM •  Allows simple lists, sets and hashes to be stored within the value and manipulated •  Many features that developers like expiration, transactions, pub/sub, partitioning 20  
  • 21. •  Scalable key-value store •  Fastest growing product in Amazon's history •  Focus on throughput on storage and predictable read and write times •  Strong integration with S3 and Elastic MapReduce 21  
  • 22. •  Open source distributed key-value store with support and commercial versions by Basho •  A "Dynamo-inspired" database •  Focus on availability, fault-tolerance, operational simplicity and scalability •  Support for replication and auto-sharding and rebalancing on failures •  Support for MapReduce, fulltext search and secondary indexes of value tags •  Written in ERLANG 22  
  • 23. Column family store •  Dynamic schema, column-oriented data model •  Sparse, distributed persistent multi- dimensional sorted map (row, column (family), timestamp) -> cell contents 23  
  • 24. Column families •  Group columns into "Column families" •  Group column families into "Super-Columns" •  Be able to query all columns with a family or super family •  Similar data grouped together to improve speed 24  
  • 25. Column family data model vs. relational •  Sparse matrix, preserve table structure – One row could have millions of columns but can be very sparse •  Hybrid row/column stores •  Number of columns is extendible – New columns to be inserted without doing an "alter table" 25  
  • 26. Bigtable •  ACM TOCS 2008 •  Fault-tolerant, persistent •  Scalable –  Thousands of servers –  Terabytes of in-memory data –  Petabyte of disk-based data –  Millions of reads/writes per second, efficient scans •  Self-managing –  Servers can be added/ removed dynamically –  Servers adjust to load imbalance 26  
  • 27. •  Open-source Bigtable, written in JAVA •  Part of Apache Hadoop project 27  
  • 29. •  Apache open source column family database •  Supported by DataStax •  Peer-to-peer distribution model •  Strong reputation for linear scale out (millions of writes/ second) •  Written in Java and works well with HDFS and MapReduce 29  
  • 30. Graph data model •  Core abstractions: Nodes, Relationships, Properties on both 30  
  • 31. Graph database (store) •  A database stored data in an explicitly graph structure •  Each node knows its adjacent nodes •  Queries are really graph traversals 31  
  • 32. Compared to Relational Databases OpCmized  for  aggregaCon   OpCmized  for  connecCons  
  • 33. Compared to Key Value Stores OpCmized  for  simple  look-­‐ups   OpCmized  for  traversing  connected  data  
  • 34. Compared to Document Stores OpCmized  for  “trees”  of  data   OpCmized  for  seeing  the  forest  and  the   trees,  and  the  branches,  and  the  trunks  
  • 35. 35  
  • 36. 36  
  • 37. •  Graph database designed to be easy to use by Java developers •  Disk-based (not just RAM) •  Full ACID •  High Availability (with Enterprise Edition) •  32 Billion Nodes, 32 Billion Relationships, 
 64 Billion Properties •  Embedded java library •  REST API 37  
  • 38. Document store •  Documents, not value, not tables •  JSON or XML formats •  Document is identified by ID •  Allow indexing on properties 38  
  • 39. Relational data mapping •  T1–HTML into Objects •  T2–Objects into SQL Tables •  T3–Tables into Objects •  T4–Objects into HTML 39  
  • 40. Web Service in the middle •  T1 – HTML into Java Objects •  T2 – Java Objects into SQL Tables •  T3 – Tables into Objects •  T4 – Objects into HTML •  T5 – Objects to XML •  T6 – XML to Objects 40   T1   T3   T2   T4   Object  Middle   Tier   Relational   Database   Web  Browser   T5   Web  Service   T6  
  • 41. Discussion •  Object-relational mapping has become one of the most complex components of building applications today – Java Hibernate Framework – JPA •  To avoid complexity is to keep your architecture very simple 41  
  • 42. Document mapping •  Documents in the database •  Documents in the application •  No object middle tier •  No "shredding" •  No reassembly •  Simple! 42   ApplicaCon  Layer   Database   Document   Document  
  • 43. •  Open Source JSON data store created by 10gen •  Master-slave scale out model •  Strong developer community •  Sharding built-in, automatic •  Implemented in C++ with many APIs (C++, JavaScript, Java, Perl, Python etc.) 43  
  • 44. •  Apache project •  Open source JSON data store •  Written in ERLANG •  RESTful JSON API •  B-Tree based indexing, shadowing b-tree versioning •  ACID fully supported •  View model •  Data compaction •  Security 44