SlideShare a Scribd company logo
http://db-engines.com/en/ranking
http://www.csc.com/insights/flxwd/78931-big_data_universe_beginning_to_explode
http://www.ibmbigdatahub.com/infographic/four-vs-big-data
NoSQL supports all
these data concerns
Variety: No schema or
frequent schema
changes
Velocity: High
throughput and low
latency
Volume: Lots of data
Not Only SQL
Key-Value Store Column Family Document Store Graph
Aggregate Data Models
Key-Value Store Column Family Document Store Graph
Azure
DocumentDB
Azure
Table
Storage
Amazon
DynamoDB
Multimodel
http://www.martinfowler.com/articles/microservices.html
Monolithic applications prefer a
single logical database for persistent
data. This DB becomes an integration
DB as well as reporting DB.
Microservices prefer letting each
service manage its own database,
either different instances of the same
database technology, or entirely
different database systems - an
approach called Polyglot Persistence.
Replication Master-Slave Multi-Master Sharding
Replication
http://blog.nahurst.com/visual-guide-to-nosql-systems
PACELC
if there is a partition (P), how
does the system trade off
availability and consistency (A
and C); else (E), when the system
is running normally in the
absence of partitions, how does
the system trade off latency (L)
and consistency (C)?
PA/EL:
Dynamo, Cassandra, Riak
PA/EC:
MongoDB
PC/EC:
VoltDB, HBase
ACID BASE
Re di s
App
Mongo Driver
Mongo Shell
Mongod
Sec
App
Mongo Driver
Pri
Sec
Hidde
n Sec
Mongod
Mongod Mongod Mongod
Analytics
App
Mongo Driver
Mongos
P
S S
P
S S
P
S S
Shard Shard Shard
 Unacknowledged
 Acknowledged
 Replica Acknowledged
 Majority
 <tag set>:
 Journaled
 Local
 Majority
 Linearizable
 Primary
 Primary Preferred
 Secondary
 Secondary Preferred
 Nearest
ID:1040, Total: 310.00
Part
808082
723093
Qty
2
7
Price
50.5
30.0
Total
101
210
Line Items
Payment Detail
Card Number: 2929 xxxx 3939
Expiry: Jan, 2018
Scheme: Visa
Customer
CustomerID: 19281
Name: Ann Marie
Email: ann.marie@gmail.com
ID CustomerID Total
1040 19281 310
ID Name Email
19281
OrderID CC Expiry Scheme
1040 xxxx Jan Visa
Orders
Customers
OrderLines
PaymentDetails
OrderID Line Qty Price
1040 1 2 50.5
Order
Aggregate is
a pattern in
Domain-
Driven
Design. A
DDD
aggregate is
a cluster of
domain
objects that
can be
treated as a
single unit.
JSON (JavaScript Object Notation) is a lightweight data-
interchange format.
It is easy for humans to read and write. It is easy for
machines to parse and generate.
It is based on a subset of the JavaScript Programming
Language, Standard ECMA-262 3rd Edition - December
1999.
JSON is a text format that is completely language
independent JSON is built on two structures:
• A collection of name/value pairs. In various languages,
this is realized as an object, record, struct, dictionary,
hash table, keyed list, or associative array.
• An ordered list of values. In most languages, this is
realized as an array, vector, list, or sequence.
{
"_id" : "585724eedd76957cf32baaf2",
"title" : "Ms",
"firstName" : "Leigh",
"surname" : "Nielsen",
"age" : 33,
"gender" : "female",
"address" : [
{
"line1" : "705 Anna Court",
"city" : "Thermal",
"state" : "Utah",
"zip" : 2584
},
{
"line1" : "833 Sands Street",
"city" : "Eden",
"state" : "Texas",
"zip" : 5603
}
]
}
RDBMS Document Oriented DBs
Database Database
Table Collection
Row Document
Columns Document fields
Index Index
Join Embedded document or reference, $lookup op (v3.2)
View Read only views (v3.4)
Primary Key “_id” field of the document (Auto-generated 12 byte type unique within
collection. Can be manually assigned as well. Can be composite)
Embedding Referencing
SQL Document Oriented DBs
SELECT / WHERE db.<collection>.find({match}, {project}), $or $and $exists operators
ORDER BY db.<collection>.find({}, {}).sort({sort object})
LIMIT / SKIP db.<collection>.find({}, {}).limit(n).skip(m)
GROUP BY Aggregation Pipeline and Map-Reduce
JOIN $lookup operator
INSERT db.<collection>.insert({doc})
UPDATE db.<collection>.update({match},{doc}), $set & $unset op
DELETE db.<collection>.remove({match})
CREATE INDEX db.<collection>.createIndex({index object})
VIEW db.createView(<view>, <source>, <pipeline>, <collation> )
Explain Plan db.<collection>.find({}, {}).explain()
Issue Link
MongoDB performance issues when used for
OLAP/DW queries
https://www.8kdata.com/blog/the-conundrum-
of-bi-aggregate-queries-on-mongodb/
MongoDB queries don’t always return all matching
documents!
http://blog.couchbase.com/2016/july/testing-
mongodb-and-couchbase-concurrent-query
https://www.linkedin.com/pulse/mongodb-
frankenstein-monster-nosql-databases-john-de-
goes?trk=mp-reader-card
MongoDB 3.2: Now Powered by PostgreSQL https://www.linkedin.com/pulse/mongodb-32-
now-powered-postgresql-john-de-goes?trk=mp-
reader-card
MongoDB stale reads https://aphyr.com/posts/322-jepsen-mongodb-
stale-reads
Partitions
 Mongo Chef
 DocumentDB Studio

More Related Content

What's hot

MongoDB NoSQL database a deep dive -MyWhitePaper
MongoDB  NoSQL database a deep dive -MyWhitePaperMongoDB  NoSQL database a deep dive -MyWhitePaper
MongoDB NoSQL database a deep dive -MyWhitePaper
Rajesh Kumar
 
Mongodb - NoSql Database
Mongodb - NoSql DatabaseMongodb - NoSql Database
Mongodb - NoSql Database
Prashant Gupta
 
NoSQL
NoSQLNoSQL
MongoDB
MongoDBMongoDB
MongoDB
MongoDBMongoDB
MongoDB
nikhil2807
 
Repository As A Service (RaaS) at ICPSR
Repository As A Service  (RaaS) at ICPSRRepository As A Service  (RaaS) at ICPSR
Repository As A Service (RaaS) at ICPSR
Harshakumar Ummerpillai
 
Cool NoSQL on Azure with DocumentDB
Cool NoSQL on Azure with DocumentDBCool NoSQL on Azure with DocumentDB
Cool NoSQL on Azure with DocumentDB
Jan Hentschel
 
Appache Cassandra
Appache Cassandra  Appache Cassandra
Appache Cassandra
nehabsairam
 
No sql
No sqlNo sql
[Mas 500] Data Basics
[Mas 500] Data Basics[Mas 500] Data Basics
[Mas 500] Data Basics
rahulbot
 
01 nosql and multi model database
01   nosql and multi model database01   nosql and multi model database
01 nosql and multi model database
Mahdi Atawneh
 
Non Relational Databases
Non Relational DatabasesNon Relational Databases
Non Relational Databases
Chris Baglieri
 
Multi model-databases
Multi model-databasesMulti model-databases
Multi model-databases
Michael Hackstein
 
Nosql database presentation
Nosql database  presentationNosql database  presentation
Nosql database presentation
musaab fathi
 
NoSQL Introduction
NoSQL IntroductionNoSQL Introduction
NoSQL Introduction
John Kerley-Weeks
 
An Introduction To NoSQL & MongoDB
An Introduction To NoSQL & MongoDBAn Introduction To NoSQL & MongoDB
An Introduction To NoSQL & MongoDB
Lee Theobald
 
Nosql databases
Nosql databasesNosql databases
Nosql databases
ateeq ateeq
 
Couch db
Couch dbCouch db
Couch db
amini gazar
 
SQL vs NoSQL
SQL vs NoSQLSQL vs NoSQL
SQL vs NoSQL
Jacinto Limjap
 
Introduction to MongoDB
Introduction to MongoDBIntroduction to MongoDB
Introduction to MongoDB
Ravi Teja
 

What's hot (20)

MongoDB NoSQL database a deep dive -MyWhitePaper
MongoDB  NoSQL database a deep dive -MyWhitePaperMongoDB  NoSQL database a deep dive -MyWhitePaper
MongoDB NoSQL database a deep dive -MyWhitePaper
 
Mongodb - NoSql Database
Mongodb - NoSql DatabaseMongodb - NoSql Database
Mongodb - NoSql Database
 
NoSQL
NoSQLNoSQL
NoSQL
 
MongoDB
MongoDBMongoDB
MongoDB
 
MongoDB
MongoDBMongoDB
MongoDB
 
Repository As A Service (RaaS) at ICPSR
Repository As A Service  (RaaS) at ICPSRRepository As A Service  (RaaS) at ICPSR
Repository As A Service (RaaS) at ICPSR
 
Cool NoSQL on Azure with DocumentDB
Cool NoSQL on Azure with DocumentDBCool NoSQL on Azure with DocumentDB
Cool NoSQL on Azure with DocumentDB
 
Appache Cassandra
Appache Cassandra  Appache Cassandra
Appache Cassandra
 
No sql
No sqlNo sql
No sql
 
[Mas 500] Data Basics
[Mas 500] Data Basics[Mas 500] Data Basics
[Mas 500] Data Basics
 
01 nosql and multi model database
01   nosql and multi model database01   nosql and multi model database
01 nosql and multi model database
 
Non Relational Databases
Non Relational DatabasesNon Relational Databases
Non Relational Databases
 
Multi model-databases
Multi model-databasesMulti model-databases
Multi model-databases
 
Nosql database presentation
Nosql database  presentationNosql database  presentation
Nosql database presentation
 
NoSQL Introduction
NoSQL IntroductionNoSQL Introduction
NoSQL Introduction
 
An Introduction To NoSQL & MongoDB
An Introduction To NoSQL & MongoDBAn Introduction To NoSQL & MongoDB
An Introduction To NoSQL & MongoDB
 
Nosql databases
Nosql databasesNosql databases
Nosql databases
 
Couch db
Couch dbCouch db
Couch db
 
SQL vs NoSQL
SQL vs NoSQLSQL vs NoSQL
SQL vs NoSQL
 
Introduction to MongoDB
Introduction to MongoDBIntroduction to MongoDB
Introduction to MongoDB
 

Similar to I say NoSQL you say what

Couchbase Data Platform | Big Data Demystified
Couchbase Data Platform | Big Data DemystifiedCouchbase Data Platform | Big Data Demystified
Couchbase Data Platform | Big Data Demystified
Omid Vahdaty
 
Nosql
NosqlNosql
Nosql
ROXTAD71
 
Nosql
NosqlNosql
Getting Started with NoSQL
Getting Started with NoSQLGetting Started with NoSQL
Getting Started with NoSQL
Aaron Benton
 
NoSQL Basics and MongDB
NoSQL Basics and  MongDBNoSQL Basics and  MongDB
NoSQL Basics and MongDB
Shamima Yeasmin Mukta
 
NoSQL Data Stores in Research and Practice - ICDE 2016 Tutorial - Extended Ve...
NoSQL Data Stores in Research and Practice - ICDE 2016 Tutorial - Extended Ve...NoSQL Data Stores in Research and Practice - ICDE 2016 Tutorial - Extended Ve...
NoSQL Data Stores in Research and Practice - ICDE 2016 Tutorial - Extended Ve...
Felix Gessert
 
Big data technology unit 3
Big data technology unit 3Big data technology unit 3
Big data technology unit 3
RojaT4
 
NoSQL powerpoint presentation difference with rdbms
NoSQL powerpoint presentation difference with rdbmsNoSQL powerpoint presentation difference with rdbms
NoSQL powerpoint presentation difference with rdbms
AtulKabbur
 
Samedi SQL Québec - La plateforme data de Azure
Samedi SQL Québec - La plateforme data de AzureSamedi SQL Québec - La plateforme data de Azure
Samedi SQL Québec - La plateforme data de Azure
MSDEVMTL
 
Mongo Bb - NoSQL tutorial
Mongo Bb - NoSQL tutorialMongo Bb - NoSQL tutorial
Mongo Bb - NoSQL tutorial
Mohan Rathour
 
ELK - Stack - Munich .net UG
ELK - Stack - Munich .net UGELK - Stack - Munich .net UG
ELK - Stack - Munich .net UG
Steve Behrendt
 
DATABASE MANAGEMENT SYSTEM-MRS. LAXMI B PANDYA FOR 25TH AUGUST,2022.pptx
DATABASE MANAGEMENT SYSTEM-MRS. LAXMI B PANDYA FOR 25TH AUGUST,2022.pptxDATABASE MANAGEMENT SYSTEM-MRS. LAXMI B PANDYA FOR 25TH AUGUST,2022.pptx
DATABASE MANAGEMENT SYSTEM-MRS. LAXMI B PANDYA FOR 25TH AUGUST,2022.pptx
Laxmi Pandya
 
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
RushikeshChikane2
 
Artigo no sql x relational
Artigo no sql x relationalArtigo no sql x relational
Artigo no sql x relational
Adenilson Lima Diniz
 
nosql.pptx
nosql.pptxnosql.pptx
nosql.pptx
Prakash Zodge
 
Software development - the java perspective
Software development - the java perspectiveSoftware development - the java perspective
Software development - the java perspective
Alin Pandichi
 
Sullivan GBCB Seminar Fall 2014 - Limits of RDMS for Bioinformatics v2
Sullivan GBCB Seminar Fall 2014 - Limits of RDMS for Bioinformatics v2Sullivan GBCB Seminar Fall 2014 - Limits of RDMS for Bioinformatics v2
Sullivan GBCB Seminar Fall 2014 - Limits of RDMS for Bioinformatics v2
Dan Sullivan, Ph.D.
 
Limits of RDBMS and Need for NoSQL in Bioinformatics
Limits of RDBMS and Need for NoSQL in BioinformaticsLimits of RDBMS and Need for NoSQL in Bioinformatics
Limits of RDBMS and Need for NoSQL in Bioinformatics
Dan Sullivan, Ph.D.
 
3.Implementation with NOSQL databases Document Databases (Mongodb).pptx
3.Implementation with NOSQL databases Document Databases (Mongodb).pptx3.Implementation with NOSQL databases Document Databases (Mongodb).pptx
3.Implementation with NOSQL databases Document Databases (Mongodb).pptx
RushikeshChikane2
 
No sq lv2
No sq lv2No sq lv2
No sq lv2
Nusrat Sharmin
 

Similar to I say NoSQL you say what (20)

Couchbase Data Platform | Big Data Demystified
Couchbase Data Platform | Big Data DemystifiedCouchbase Data Platform | Big Data Demystified
Couchbase Data Platform | Big Data Demystified
 
Nosql
NosqlNosql
Nosql
 
Nosql
NosqlNosql
Nosql
 
Getting Started with NoSQL
Getting Started with NoSQLGetting Started with NoSQL
Getting Started with NoSQL
 
NoSQL Basics and MongDB
NoSQL Basics and  MongDBNoSQL Basics and  MongDB
NoSQL Basics and MongDB
 
NoSQL Data Stores in Research and Practice - ICDE 2016 Tutorial - Extended Ve...
NoSQL Data Stores in Research and Practice - ICDE 2016 Tutorial - Extended Ve...NoSQL Data Stores in Research and Practice - ICDE 2016 Tutorial - Extended Ve...
NoSQL Data Stores in Research and Practice - ICDE 2016 Tutorial - Extended Ve...
 
Big data technology unit 3
Big data technology unit 3Big data technology unit 3
Big data technology unit 3
 
NoSQL powerpoint presentation difference with rdbms
NoSQL powerpoint presentation difference with rdbmsNoSQL powerpoint presentation difference with rdbms
NoSQL powerpoint presentation difference with rdbms
 
Samedi SQL Québec - La plateforme data de Azure
Samedi SQL Québec - La plateforme data de AzureSamedi SQL Québec - La plateforme data de Azure
Samedi SQL Québec - La plateforme data de Azure
 
Mongo Bb - NoSQL tutorial
Mongo Bb - NoSQL tutorialMongo Bb - NoSQL tutorial
Mongo Bb - NoSQL tutorial
 
ELK - Stack - Munich .net UG
ELK - Stack - Munich .net UGELK - Stack - Munich .net UG
ELK - Stack - Munich .net UG
 
DATABASE MANAGEMENT SYSTEM-MRS. LAXMI B PANDYA FOR 25TH AUGUST,2022.pptx
DATABASE MANAGEMENT SYSTEM-MRS. LAXMI B PANDYA FOR 25TH AUGUST,2022.pptxDATABASE MANAGEMENT SYSTEM-MRS. LAXMI B PANDYA FOR 25TH AUGUST,2022.pptx
DATABASE MANAGEMENT SYSTEM-MRS. LAXMI B PANDYA FOR 25TH AUGUST,2022.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
 
Artigo no sql x relational
Artigo no sql x relationalArtigo no sql x relational
Artigo no sql x relational
 
nosql.pptx
nosql.pptxnosql.pptx
nosql.pptx
 
Software development - the java perspective
Software development - the java perspectiveSoftware development - the java perspective
Software development - the java perspective
 
Sullivan GBCB Seminar Fall 2014 - Limits of RDMS for Bioinformatics v2
Sullivan GBCB Seminar Fall 2014 - Limits of RDMS for Bioinformatics v2Sullivan GBCB Seminar Fall 2014 - Limits of RDMS for Bioinformatics v2
Sullivan GBCB Seminar Fall 2014 - Limits of RDMS for Bioinformatics v2
 
Limits of RDBMS and Need for NoSQL in Bioinformatics
Limits of RDBMS and Need for NoSQL in BioinformaticsLimits of RDBMS and Need for NoSQL in Bioinformatics
Limits of RDBMS and Need for NoSQL in Bioinformatics
 
3.Implementation with NOSQL databases Document Databases (Mongodb).pptx
3.Implementation with NOSQL databases Document Databases (Mongodb).pptx3.Implementation with NOSQL databases Document Databases (Mongodb).pptx
3.Implementation with NOSQL databases Document Databases (Mongodb).pptx
 
No sq lv2
No sq lv2No sq lv2
No sq lv2
 

Recently uploaded

Building API data products on top of your real-time data infrastructure
Building API data products on top of your real-time data infrastructureBuilding API data products on top of your real-time data infrastructure
Building API data products on top of your real-time data infrastructure
confluent
 
Boost Your Savings with These Money Management Apps
Boost Your Savings with These Money Management AppsBoost Your Savings with These Money Management Apps
Boost Your Savings with These Money Management Apps
Jhone kinadey
 
一比一原版(sdsu毕业证书)圣地亚哥州立大学毕业证如何办理
一比一原版(sdsu毕业证书)圣地亚哥州立大学毕业证如何办理一比一原版(sdsu毕业证书)圣地亚哥州立大学毕业证如何办理
一比一原版(sdsu毕业证书)圣地亚哥州立大学毕业证如何办理
kgyxske
 
Assure Contact Center Experiences for Your Customers With ThousandEyes
Assure Contact Center Experiences for Your Customers With ThousandEyesAssure Contact Center Experiences for Your Customers With ThousandEyes
Assure Contact Center Experiences for Your Customers With ThousandEyes
ThousandEyes
 
14 th Edition of International conference on computer vision
14 th Edition of International conference on computer vision14 th Edition of International conference on computer vision
14 th Edition of International conference on computer vision
ShulagnaSarkar2
 
如何办理(hull学位证书)英国赫尔大学毕业证硕士文凭原版一模一样
如何办理(hull学位证书)英国赫尔大学毕业证硕士文凭原版一模一样如何办理(hull学位证书)英国赫尔大学毕业证硕士文凭原版一模一样
如何办理(hull学位证书)英国赫尔大学毕业证硕士文凭原版一模一样
gapen1
 
Voxxed Days Trieste 2024 - Unleashing the Power of Vector Search and Semantic...
Voxxed Days Trieste 2024 - Unleashing the Power of Vector Search and Semantic...Voxxed Days Trieste 2024 - Unleashing the Power of Vector Search and Semantic...
Voxxed Days Trieste 2024 - Unleashing the Power of Vector Search and Semantic...
Luigi Fugaro
 
J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...
J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...
J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...
Bert Jan Schrijver
 
Upturn India Technologies - Web development company in Nashik
Upturn India Technologies - Web development company in NashikUpturn India Technologies - Web development company in Nashik
Upturn India Technologies - Web development company in Nashik
Upturn India Technologies
 
Operational ease MuleSoft and Salesforce Service Cloud Solution v1.0.pptx
Operational ease MuleSoft and Salesforce Service Cloud Solution v1.0.pptxOperational ease MuleSoft and Salesforce Service Cloud Solution v1.0.pptx
Operational ease MuleSoft and Salesforce Service Cloud Solution v1.0.pptx
sandeepmenon62
 
ACE - Team 24 Wrapup event at ahmedabad.
ACE - Team 24 Wrapup event at ahmedabad.ACE - Team 24 Wrapup event at ahmedabad.
ACE - Team 24 Wrapup event at ahmedabad.
Maitrey Patel
 
All you need to know about Spring Boot and GraalVM
All you need to know about Spring Boot and GraalVMAll you need to know about Spring Boot and GraalVM
All you need to know about Spring Boot and GraalVM
Alina Yurenko
 
The Rising Future of CPaaS in the Middle East 2024
The Rising Future of CPaaS in the Middle East 2024The Rising Future of CPaaS in the Middle East 2024
The Rising Future of CPaaS in the Middle East 2024
Yara Milbes
 
Beginner's Guide to Observability@Devoxx PL 2024
Beginner's  Guide to Observability@Devoxx PL 2024Beginner's  Guide to Observability@Devoxx PL 2024
Beginner's Guide to Observability@Devoxx PL 2024
michniczscribd
 
美洲杯赔率投注网【​网址​🎉3977·EE​🎉】
美洲杯赔率投注网【​网址​🎉3977·EE​🎉】美洲杯赔率投注网【​网址​🎉3977·EE​🎉】
美洲杯赔率投注网【​网址​🎉3977·EE​🎉】
widenerjobeyrl638
 
一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理
一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理
一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理
dakas1
 
WWDC 2024 Keynote Review: For CocoaCoders Austin
WWDC 2024 Keynote Review: For CocoaCoders AustinWWDC 2024 Keynote Review: For CocoaCoders Austin
WWDC 2024 Keynote Review: For CocoaCoders Austin
Patrick Weigel
 
Alluxio Webinar | 10x Faster Trino Queries on Your Data Platform
Alluxio Webinar | 10x Faster Trino Queries on Your Data PlatformAlluxio Webinar | 10x Faster Trino Queries on Your Data Platform
Alluxio Webinar | 10x Faster Trino Queries on Your Data Platform
Alluxio, Inc.
 
Mobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona InfotechMobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona Infotech
Drona Infotech
 
A Comprehensive Guide on Implementing Real-World Mobile Testing Strategies fo...
A Comprehensive Guide on Implementing Real-World Mobile Testing Strategies fo...A Comprehensive Guide on Implementing Real-World Mobile Testing Strategies fo...
A Comprehensive Guide on Implementing Real-World Mobile Testing Strategies fo...
kalichargn70th171
 

Recently uploaded (20)

Building API data products on top of your real-time data infrastructure
Building API data products on top of your real-time data infrastructureBuilding API data products on top of your real-time data infrastructure
Building API data products on top of your real-time data infrastructure
 
Boost Your Savings with These Money Management Apps
Boost Your Savings with These Money Management AppsBoost Your Savings with These Money Management Apps
Boost Your Savings with These Money Management Apps
 
一比一原版(sdsu毕业证书)圣地亚哥州立大学毕业证如何办理
一比一原版(sdsu毕业证书)圣地亚哥州立大学毕业证如何办理一比一原版(sdsu毕业证书)圣地亚哥州立大学毕业证如何办理
一比一原版(sdsu毕业证书)圣地亚哥州立大学毕业证如何办理
 
Assure Contact Center Experiences for Your Customers With ThousandEyes
Assure Contact Center Experiences for Your Customers With ThousandEyesAssure Contact Center Experiences for Your Customers With ThousandEyes
Assure Contact Center Experiences for Your Customers With ThousandEyes
 
14 th Edition of International conference on computer vision
14 th Edition of International conference on computer vision14 th Edition of International conference on computer vision
14 th Edition of International conference on computer vision
 
如何办理(hull学位证书)英国赫尔大学毕业证硕士文凭原版一模一样
如何办理(hull学位证书)英国赫尔大学毕业证硕士文凭原版一模一样如何办理(hull学位证书)英国赫尔大学毕业证硕士文凭原版一模一样
如何办理(hull学位证书)英国赫尔大学毕业证硕士文凭原版一模一样
 
Voxxed Days Trieste 2024 - Unleashing the Power of Vector Search and Semantic...
Voxxed Days Trieste 2024 - Unleashing the Power of Vector Search and Semantic...Voxxed Days Trieste 2024 - Unleashing the Power of Vector Search and Semantic...
Voxxed Days Trieste 2024 - Unleashing the Power of Vector Search and Semantic...
 
J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...
J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...
J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...
 
Upturn India Technologies - Web development company in Nashik
Upturn India Technologies - Web development company in NashikUpturn India Technologies - Web development company in Nashik
Upturn India Technologies - Web development company in Nashik
 
Operational ease MuleSoft and Salesforce Service Cloud Solution v1.0.pptx
Operational ease MuleSoft and Salesforce Service Cloud Solution v1.0.pptxOperational ease MuleSoft and Salesforce Service Cloud Solution v1.0.pptx
Operational ease MuleSoft and Salesforce Service Cloud Solution v1.0.pptx
 
ACE - Team 24 Wrapup event at ahmedabad.
ACE - Team 24 Wrapup event at ahmedabad.ACE - Team 24 Wrapup event at ahmedabad.
ACE - Team 24 Wrapup event at ahmedabad.
 
All you need to know about Spring Boot and GraalVM
All you need to know about Spring Boot and GraalVMAll you need to know about Spring Boot and GraalVM
All you need to know about Spring Boot and GraalVM
 
The Rising Future of CPaaS in the Middle East 2024
The Rising Future of CPaaS in the Middle East 2024The Rising Future of CPaaS in the Middle East 2024
The Rising Future of CPaaS in the Middle East 2024
 
Beginner's Guide to Observability@Devoxx PL 2024
Beginner's  Guide to Observability@Devoxx PL 2024Beginner's  Guide to Observability@Devoxx PL 2024
Beginner's Guide to Observability@Devoxx PL 2024
 
美洲杯赔率投注网【​网址​🎉3977·EE​🎉】
美洲杯赔率投注网【​网址​🎉3977·EE​🎉】美洲杯赔率投注网【​网址​🎉3977·EE​🎉】
美洲杯赔率投注网【​网址​🎉3977·EE​🎉】
 
一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理
一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理
一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理
 
WWDC 2024 Keynote Review: For CocoaCoders Austin
WWDC 2024 Keynote Review: For CocoaCoders AustinWWDC 2024 Keynote Review: For CocoaCoders Austin
WWDC 2024 Keynote Review: For CocoaCoders Austin
 
Alluxio Webinar | 10x Faster Trino Queries on Your Data Platform
Alluxio Webinar | 10x Faster Trino Queries on Your Data PlatformAlluxio Webinar | 10x Faster Trino Queries on Your Data Platform
Alluxio Webinar | 10x Faster Trino Queries on Your Data Platform
 
Mobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona InfotechMobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona Infotech
 
A Comprehensive Guide on Implementing Real-World Mobile Testing Strategies fo...
A Comprehensive Guide on Implementing Real-World Mobile Testing Strategies fo...A Comprehensive Guide on Implementing Real-World Mobile Testing Strategies fo...
A Comprehensive Guide on Implementing Real-World Mobile Testing Strategies fo...
 

I say NoSQL you say what

  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 9. http://www.ibmbigdatahub.com/infographic/four-vs-big-data NoSQL supports all these data concerns Variety: No schema or frequent schema changes Velocity: High throughput and low latency Volume: Lots of data
  • 11.
  • 12.
  • 13. Key-Value Store Column Family Document Store Graph Aggregate Data Models
  • 14. Key-Value Store Column Family Document Store Graph Azure DocumentDB Azure Table Storage Amazon DynamoDB Multimodel
  • 15. http://www.martinfowler.com/articles/microservices.html Monolithic applications prefer a single logical database for persistent data. This DB becomes an integration DB as well as reporting DB. Microservices prefer letting each service manage its own database, either different instances of the same database technology, or entirely different database systems - an approach called Polyglot Persistence.
  • 17. http://blog.nahurst.com/visual-guide-to-nosql-systems PACELC if there is a partition (P), how does the system trade off availability and consistency (A and C); else (E), when the system is running normally in the absence of partitions, how does the system trade off latency (L) and consistency (C)? PA/EL: Dynamo, Cassandra, Riak PA/EC: MongoDB PC/EC: VoltDB, HBase
  • 20.
  • 21.
  • 22.
  • 23.
  • 26. App Mongo Driver Mongos P S S P S S P S S Shard Shard Shard
  • 27.  Unacknowledged  Acknowledged  Replica Acknowledged  Majority  <tag set>:  Journaled
  • 29.  Primary  Primary Preferred  Secondary  Secondary Preferred  Nearest
  • 30. ID:1040, Total: 310.00 Part 808082 723093 Qty 2 7 Price 50.5 30.0 Total 101 210 Line Items Payment Detail Card Number: 2929 xxxx 3939 Expiry: Jan, 2018 Scheme: Visa Customer CustomerID: 19281 Name: Ann Marie Email: ann.marie@gmail.com ID CustomerID Total 1040 19281 310 ID Name Email 19281 OrderID CC Expiry Scheme 1040 xxxx Jan Visa Orders Customers OrderLines PaymentDetails OrderID Line Qty Price 1040 1 2 50.5 Order Aggregate is a pattern in Domain- Driven Design. A DDD aggregate is a cluster of domain objects that can be treated as a single unit.
  • 31. JSON (JavaScript Object Notation) is a lightweight data- interchange format. It is easy for humans to read and write. It is easy for machines to parse and generate. It is based on a subset of the JavaScript Programming Language, Standard ECMA-262 3rd Edition - December 1999. JSON is a text format that is completely language independent JSON is built on two structures: • A collection of name/value pairs. In various languages, this is realized as an object, record, struct, dictionary, hash table, keyed list, or associative array. • An ordered list of values. In most languages, this is realized as an array, vector, list, or sequence. { "_id" : "585724eedd76957cf32baaf2", "title" : "Ms", "firstName" : "Leigh", "surname" : "Nielsen", "age" : 33, "gender" : "female", "address" : [ { "line1" : "705 Anna Court", "city" : "Thermal", "state" : "Utah", "zip" : 2584 }, { "line1" : "833 Sands Street", "city" : "Eden", "state" : "Texas", "zip" : 5603 } ] }
  • 32. RDBMS Document Oriented DBs Database Database Table Collection Row Document Columns Document fields Index Index Join Embedded document or reference, $lookup op (v3.2) View Read only views (v3.4) Primary Key “_id” field of the document (Auto-generated 12 byte type unique within collection. Can be manually assigned as well. Can be composite)
  • 34. SQL Document Oriented DBs SELECT / WHERE db.<collection>.find({match}, {project}), $or $and $exists operators ORDER BY db.<collection>.find({}, {}).sort({sort object}) LIMIT / SKIP db.<collection>.find({}, {}).limit(n).skip(m) GROUP BY Aggregation Pipeline and Map-Reduce JOIN $lookup operator INSERT db.<collection>.insert({doc}) UPDATE db.<collection>.update({match},{doc}), $set & $unset op DELETE db.<collection>.remove({match}) CREATE INDEX db.<collection>.createIndex({index object}) VIEW db.createView(<view>, <source>, <pipeline>, <collation> ) Explain Plan db.<collection>.find({}, {}).explain()
  • 35.
  • 36. Issue Link MongoDB performance issues when used for OLAP/DW queries https://www.8kdata.com/blog/the-conundrum- of-bi-aggregate-queries-on-mongodb/ MongoDB queries don’t always return all matching documents! http://blog.couchbase.com/2016/july/testing- mongodb-and-couchbase-concurrent-query https://www.linkedin.com/pulse/mongodb- frankenstein-monster-nosql-databases-john-de- goes?trk=mp-reader-card MongoDB 3.2: Now Powered by PostgreSQL https://www.linkedin.com/pulse/mongodb-32- now-powered-postgresql-john-de-goes?trk=mp- reader-card MongoDB stale reads https://aphyr.com/posts/322-jepsen-mongodb- stale-reads
  • 37.
  • 39.
  • 40.
  • 41.
  • 42.  Mongo Chef  DocumentDB Studio

Editor's Notes

  1. http://www.seas.upenn.edu/~zives/03f/cis550/codd.pdf
  2. http://www.csc.com/insights/flxwd/78931-big_data_universe_beginning_to_explode
  3. http://www.ibmbigdatahub.com/infographic/four-vs-big-data
  4. http://www.julianbrowne.com/article/viewer/brewers-cap-theorem http://cs-www.cs.yale.edu/homes/dna/papers/abadi-pacelc.pdf https://medium .baqend.com/nosql-databases-a-survey-and-decision-guidance-ea7823a822d#.3r9t0lww1 http://nathanmarz.com/blog/how-to-beat-the-cap-theorem.html
  5. http://json.org/
  6. Collection = Logical Container Partition = Physical Container, up to 10GB, online auto partitioning, transactions scoped to partition key, sny path in a JSON doc can be made a partioon key
  7. https://github.com/lmaccherone/documentdb-lumenize https://feedback.azure.com/forums/263030-documentdb/suggestions/6333963-add-support-for-aggregate-functions-like-count-su