SlideShare a Scribd company logo
RDBMS /
                MongoDB
Nuri Halperin
Feb 2012
>outline();
[
    {'layerisms':      'where is your app?'},
    {'engine':         'notes about engine'},
    {'dataStructure': 'internals data structures'},
    {'schema':         'less and more'},
    {'index':          'type and applicability'},
    {'update':         'semantics and mechanics'},
    {'transaction':    'dread no more'},
    {'security':    'just a touch'}
]
>layerisms
> db.rdbms.find({_id:'layerisms'});
{ "_id" : "layerisms", "tiers" : [ "App", "Service",
"DB" ], "dblogic" : { "exists" : true } }

> db.mongo.find({_id:'layerisms'});
{ "_id" : "layerisms", "tiers" : [ "App", "Service",
"DB" ], "dblogic" : { "exists" : false } }

// practice: let your service layer do the logic.
>engine
> db.rdbms.find({_id:'engine'});
{ "_id" : "engine", "language" : [ "C++", "C",
"Other?" ] }

> db.mongo.find({_id:'engine'});
{ "_id" : "engine", "language" : "C++" }

// hardly the issue.

// performance due to other factors
>dataStructure
> db.rdbms.find({_id:'dataStructure'});
{ "_id" : "dataStructure", "type" : [ "BTree",
"Hashset", "bitmap" ] }

> db.mongo.find({_id:'dataStructure'});
{ "_id" : "dataStructure", "type" : "BTree" }




// MongoDB has very low memory mgmt
overhead. Most RDBMS do more memory mgmg
>schema
> db.rdbms.find({_id:'schema'});
{ "_id" : "schema", "_" : { "schama" : true,
"tables" : true, "udt" : true, "types" : [ "sql
types", "native" ], "namespace" : true } }

> db.mongo.find({_id:'schema'});
{ "_id" : "schema", "_" : { "schema" : false,
"tables" : false, "udt" : false, "types" : [ "BSON"
], "namespace" : true } }

// Most significant. This is why dev loves NoSql.
// Good drivers alleviate need for ORM.
>index
> db.rdbms.find({_id:'index'});
{ "_id" : "index", "pk" : "auto", "ak" : true,
"subObject" : false, "fulltext" : "*", "array" : false
}

> db.mongo.find({_id:'index'});
{ "_id" : "index", "pk" : "auto", "ak" : true,
"subObject" : true, "fulltext" : false* , "array" :
true }

// fulltext = think lucene, not regex.
// may be coming to MongoDB
>update
> db.rdbms.find({_id:'update'});
{ "_id" : "update", "multirecord" : true,
"singlerecord" : true, "atomic" : "*", "fluent" :
true, "crosstable" : true }

> db.mongo.find({_id:'update'});
{ "_id" : "update", "multirecord" : true,
"singlerecord" : true, "atomic" : "*", "fluent" :
true, "crosstable" : false }

// the existance of cross-table cross-record locks
is a major source of RDBMS slowness
>transaction
> db.rdbms.find({_id:'transaction'});
{ "_id" : "transaction", "crossRecord" : true,
"optimistic" : true, "pessimistic" : true }

> db.mongo.find({_id:'transaction'});
{ "_id" : "transaction", "crossRecord" : false,
"optimistic" : "dev", "pessimistic" : false }

// RDBMS let you choose consistency model.
// MongoDB supports optimistic model with
update syntax.
>security
> db.rdbms.find({_id:'security'});
{ "_id" : "security", "transport" : true, "identity"
: true, "objectLevel" : true }

> db.mongo.find({_id:'security'});
{ "_id" : "security", "transport" : false, "identity"
: true, "objectLevel" : false }



// RDBMS offer schema level security.
// MongoDB has no schema: r, rw
Looking forward to
Aggregation++
Full text index
Geo++

I love quartely releases..
Ad

More Related Content

What's hot (18)

jQuery secrets
jQuery secretsjQuery secrets
jQuery secrets
Bastian Feder
 
JavaScript JQUERY AJAX
JavaScript JQUERY AJAXJavaScript JQUERY AJAX
JavaScript JQUERY AJAX
Makarand Bhatambarekar
 
Joins and Other Aggregation Enhancements Coming in MongoDB 3.2
Joins and Other Aggregation Enhancements Coming in MongoDB 3.2Joins and Other Aggregation Enhancements Coming in MongoDB 3.2
Joins and Other Aggregation Enhancements Coming in MongoDB 3.2
MongoDB
 
Django at the Disco
Django at the DiscoDjango at the Disco
Django at the Disco
Richard Leland
 
Django at the Disco
Django at the DiscoDjango at the Disco
Django at the Disco
Richard Leland
 
Splitapp coding
Splitapp codingSplitapp coding
Splitapp coding
Kannan Selvam
 
Simplify AJAX using jQuery
Simplify AJAX using jQuerySimplify AJAX using jQuery
Simplify AJAX using jQuery
Siva Arunachalam
 
Elasticsearch and Symfony Integration - Debarko De
Elasticsearch and Symfony Integration - Debarko DeElasticsearch and Symfony Integration - Debarko De
Elasticsearch and Symfony Integration - Debarko De
Debarko De
 
Mongoose and MongoDB 101
Mongoose and MongoDB 101Mongoose and MongoDB 101
Mongoose and MongoDB 101
Will Button
 
Web client security
Web client securityWeb client security
Web client security
Ziv Birer
 
P
PP
P
markabalos22
 
Code Tops Comments
Code Tops CommentsCode Tops Comments
Code Tops Comments
Mr Giap
 
BackboneJs
BackboneJsBackboneJs
BackboneJs
Jineesh John
 
NoSQL with MongoDB
NoSQL with MongoDBNoSQL with MongoDB
NoSQL with MongoDB
Ikram Manseri
 
Casl. isomorphic permission management.pptx
Casl. isomorphic permission management.pptxCasl. isomorphic permission management.pptx
Casl. isomorphic permission management.pptx
Sergiy Stotskiy
 
Hack tutorial
Hack tutorialHack tutorial
Hack tutorial
Wakana Yoshizawa
 
DBIx::Class walkthrough @ bangalore pm
DBIx::Class walkthrough @ bangalore pmDBIx::Class walkthrough @ bangalore pm
DBIx::Class walkthrough @ bangalore pm
Sheeju Alex
 
Mysql DBI
Mysql DBIMysql DBI
Mysql DBI
Joe Christensen
 
Joins and Other Aggregation Enhancements Coming in MongoDB 3.2
Joins and Other Aggregation Enhancements Coming in MongoDB 3.2Joins and Other Aggregation Enhancements Coming in MongoDB 3.2
Joins and Other Aggregation Enhancements Coming in MongoDB 3.2
MongoDB
 
Simplify AJAX using jQuery
Simplify AJAX using jQuerySimplify AJAX using jQuery
Simplify AJAX using jQuery
Siva Arunachalam
 
Elasticsearch and Symfony Integration - Debarko De
Elasticsearch and Symfony Integration - Debarko DeElasticsearch and Symfony Integration - Debarko De
Elasticsearch and Symfony Integration - Debarko De
Debarko De
 
Mongoose and MongoDB 101
Mongoose and MongoDB 101Mongoose and MongoDB 101
Mongoose and MongoDB 101
Will Button
 
Web client security
Web client securityWeb client security
Web client security
Ziv Birer
 
Code Tops Comments
Code Tops CommentsCode Tops Comments
Code Tops Comments
Mr Giap
 
Casl. isomorphic permission management.pptx
Casl. isomorphic permission management.pptxCasl. isomorphic permission management.pptx
Casl. isomorphic permission management.pptx
Sergiy Stotskiy
 
DBIx::Class walkthrough @ bangalore pm
DBIx::Class walkthrough @ bangalore pmDBIx::Class walkthrough @ bangalore pm
DBIx::Class walkthrough @ bangalore pm
Sheeju Alex
 

Viewers also liked (20)

C mcq practice test 2
C mcq practice test 2C mcq practice test 2
C mcq practice test 2
Aman Kamboj
 
Gautam Resume
Gautam ResumeGautam Resume
Gautam Resume
GAUTAM KUMAR
 
7-3 Common Factors and GCF
7-3 Common Factors and GCF7-3 Common Factors and GCF
7-3 Common Factors and GCF
Rudy Alfonso
 
C notes
C notesC notes
C notes
Raunak Sodhi
 
Data structure linear search
Data structure linear searchData structure linear search
Data structure linear search
Stamford university Bangladesh
 
GATE Computer Science Solved Paper 2004
GATE Computer Science Solved Paper 2004GATE Computer Science Solved Paper 2004
GATE Computer Science Solved Paper 2004
Rohit Garg
 
CBSE, Grade12, Computer Science, Random Numbers - Notes
CBSE, Grade12, Computer Science, Random Numbers - NotesCBSE, Grade12, Computer Science, Random Numbers - Notes
CBSE, Grade12, Computer Science, Random Numbers - Notes
Malathi Senthil
 
Cbse class 10 computer science sample paper sa2 2014
Cbse class 10 computer science sample paper sa2 2014Cbse class 10 computer science sample paper sa2 2014
Cbse class 10 computer science sample paper sa2 2014
learn cbse
 
Cbse class 10 computer science sample paper sa1 2014 (1)
Cbse class 10 computer science sample paper sa1 2014 (1)Cbse class 10 computer science sample paper sa1 2014 (1)
Cbse class 10 computer science sample paper sa1 2014 (1)
learn cbse
 
'C' language notes (a.p)
'C' language notes (a.p)'C' language notes (a.p)
'C' language notes (a.p)
Ashishchinu
 
CBSE Grade12, Computer Science, Sample Question Paper
CBSE Grade12, Computer Science, Sample Question PaperCBSE Grade12, Computer Science, Sample Question Paper
CBSE Grade12, Computer Science, Sample Question Paper
Malathi Senthil
 
Data Structures and Algorithms For GATE: Solutions to all previous GATE quest...
Data Structures and Algorithms For GATE: Solutions to all previous GATE quest...Data Structures and Algorithms For GATE: Solutions to all previous GATE quest...
Data Structures and Algorithms For GATE: Solutions to all previous GATE quest...
CareerMonk Publications
 
Savitch Ch 14
Savitch Ch 14Savitch Ch 14
Savitch Ch 14
Terry Yoast
 
English ppt on tenses
English ppt on tensesEnglish ppt on tenses
English ppt on tenses
siddharth246
 
Powerpoint presentation on tenses
Powerpoint presentation on tensesPowerpoint presentation on tenses
Powerpoint presentation on tenses
raizan
 
Tenses
TensesTenses
Tenses
Nupur Jain
 
Slide power point preposition noreen
Slide power point preposition  noreenSlide power point preposition  noreen
Slide power point preposition noreen
grammarliciousit
 
Prepositions
PrepositionsPrepositions
Prepositions
newtonj
 
Grammar Powerpoint
Grammar PowerpointGrammar Powerpoint
Grammar Powerpoint
Aaron Liebo
 
C mcq practice test 2
C mcq practice test 2C mcq practice test 2
C mcq practice test 2
Aman Kamboj
 
7-3 Common Factors and GCF
7-3 Common Factors and GCF7-3 Common Factors and GCF
7-3 Common Factors and GCF
Rudy Alfonso
 
GATE Computer Science Solved Paper 2004
GATE Computer Science Solved Paper 2004GATE Computer Science Solved Paper 2004
GATE Computer Science Solved Paper 2004
Rohit Garg
 
CBSE, Grade12, Computer Science, Random Numbers - Notes
CBSE, Grade12, Computer Science, Random Numbers - NotesCBSE, Grade12, Computer Science, Random Numbers - Notes
CBSE, Grade12, Computer Science, Random Numbers - Notes
Malathi Senthil
 
Cbse class 10 computer science sample paper sa2 2014
Cbse class 10 computer science sample paper sa2 2014Cbse class 10 computer science sample paper sa2 2014
Cbse class 10 computer science sample paper sa2 2014
learn cbse
 
Cbse class 10 computer science sample paper sa1 2014 (1)
Cbse class 10 computer science sample paper sa1 2014 (1)Cbse class 10 computer science sample paper sa1 2014 (1)
Cbse class 10 computer science sample paper sa1 2014 (1)
learn cbse
 
'C' language notes (a.p)
'C' language notes (a.p)'C' language notes (a.p)
'C' language notes (a.p)
Ashishchinu
 
CBSE Grade12, Computer Science, Sample Question Paper
CBSE Grade12, Computer Science, Sample Question PaperCBSE Grade12, Computer Science, Sample Question Paper
CBSE Grade12, Computer Science, Sample Question Paper
Malathi Senthil
 
Data Structures and Algorithms For GATE: Solutions to all previous GATE quest...
Data Structures and Algorithms For GATE: Solutions to all previous GATE quest...Data Structures and Algorithms For GATE: Solutions to all previous GATE quest...
Data Structures and Algorithms For GATE: Solutions to all previous GATE quest...
CareerMonk Publications
 
English ppt on tenses
English ppt on tensesEnglish ppt on tenses
English ppt on tenses
siddharth246
 
Powerpoint presentation on tenses
Powerpoint presentation on tensesPowerpoint presentation on tenses
Powerpoint presentation on tenses
raizan
 
Slide power point preposition noreen
Slide power point preposition  noreenSlide power point preposition  noreen
Slide power point preposition noreen
grammarliciousit
 
Prepositions
PrepositionsPrepositions
Prepositions
newtonj
 
Grammar Powerpoint
Grammar PowerpointGrammar Powerpoint
Grammar Powerpoint
Aaron Liebo
 
Ad

Similar to MongoDB and RDBMS (20)

mongodb-introduction
mongodb-introductionmongodb-introduction
mongodb-introduction
Tse-Ching Ho
 
Solutions for bi-directional Integration between Oracle RDMBS & Apache Kafka
Solutions for bi-directional Integration between Oracle RDMBS & Apache KafkaSolutions for bi-directional Integration between Oracle RDMBS & Apache Kafka
Solutions for bi-directional Integration between Oracle RDMBS & Apache Kafka
Guido Schmutz
 
Solutions for bi-directional integration between Oracle RDBMS and Apache Kafk...
Solutions for bi-directional integration between Oracle RDBMS and Apache Kafk...Solutions for bi-directional integration between Oracle RDBMS and Apache Kafk...
Solutions for bi-directional integration between Oracle RDBMS and Apache Kafk...
confluent
 
The rise of json in rdbms land jab17
The rise of json in rdbms land jab17The rise of json in rdbms land jab17
The rise of json in rdbms land jab17
alikonweb
 
[Coscup 2012] JavascriptMVC
[Coscup 2012] JavascriptMVC[Coscup 2012] JavascriptMVC
[Coscup 2012] JavascriptMVC
Alive Kuo
 
Solutions for bi-directional integration between Oracle RDBMS & Apache Kafka
Solutions for bi-directional integration between Oracle RDBMS & Apache KafkaSolutions for bi-directional integration between Oracle RDBMS & Apache Kafka
Solutions for bi-directional integration between Oracle RDBMS & Apache Kafka
Guido Schmutz
 
The Best (and Worst) of Django
The Best (and Worst) of DjangoThe Best (and Worst) of Django
The Best (and Worst) of Django
Jacob Kaplan-Moss
 
ELK Stack - Turn boring logfiles into sexy dashboard
ELK Stack - Turn boring logfiles into sexy dashboardELK Stack - Turn boring logfiles into sexy dashboard
ELK Stack - Turn boring logfiles into sexy dashboard
Georg Sorst
 
Map/Confused? A practical approach to Map/Reduce with MongoDB
Map/Confused? A practical approach to Map/Reduce with MongoDBMap/Confused? A practical approach to Map/Reduce with MongoDB
Map/Confused? A practical approach to Map/Reduce with MongoDB
Uwe Printz
 
DataMapper
DataMapperDataMapper
DataMapper
Yehuda Katz
 
Internet and Web Technology (CLASS-10) [Node.js] | NIC/NIELIT Web Technology
Internet and Web Technology (CLASS-10) [Node.js] | NIC/NIELIT Web Technology Internet and Web Technology (CLASS-10) [Node.js] | NIC/NIELIT Web Technology
Internet and Web Technology (CLASS-10) [Node.js] | NIC/NIELIT Web Technology
Ayes Chinmay
 
Open Source Search: An Analysis
Open Source Search: An AnalysisOpen Source Search: An Analysis
Open Source Search: An Analysis
Justin Finkelstein
 
Full-Text Search Explained - Philipp Krenn - Codemotion Rome 2017
Full-Text Search Explained - Philipp Krenn - Codemotion Rome 2017Full-Text Search Explained - Philipp Krenn - Codemotion Rome 2017
Full-Text Search Explained - Philipp Krenn - Codemotion Rome 2017
Codemotion
 
Converting a Rails application to Node.js
Converting a Rails application to Node.jsConverting a Rails application to Node.js
Converting a Rails application to Node.js
Matt Sergeant
 
MongoDB With Style
MongoDB With StyleMongoDB With Style
MongoDB With Style
Gabriele Lana
 
Eagle6 mongo dc revised
Eagle6 mongo dc revisedEagle6 mongo dc revised
Eagle6 mongo dc revised
MongoDB
 
Eagle6 Enterprise Situational Awareness
Eagle6 Enterprise Situational AwarenessEagle6 Enterprise Situational Awareness
Eagle6 Enterprise Situational Awareness
MongoDB
 
MongoDB Performance Tuning
MongoDB Performance TuningMongoDB Performance Tuning
MongoDB Performance Tuning
MongoDB
 
Talk MongoDB - Amil
Talk MongoDB - AmilTalk MongoDB - Amil
Talk MongoDB - Amil
removed_b0e2342824f6227286f54ba461ebc0fe
 
Micro app-framework - NodeLive Boston
Micro app-framework - NodeLive BostonMicro app-framework - NodeLive Boston
Micro app-framework - NodeLive Boston
Michael Dawson
 
mongodb-introduction
mongodb-introductionmongodb-introduction
mongodb-introduction
Tse-Ching Ho
 
Solutions for bi-directional Integration between Oracle RDMBS & Apache Kafka
Solutions for bi-directional Integration between Oracle RDMBS & Apache KafkaSolutions for bi-directional Integration between Oracle RDMBS & Apache Kafka
Solutions for bi-directional Integration between Oracle RDMBS & Apache Kafka
Guido Schmutz
 
Solutions for bi-directional integration between Oracle RDBMS and Apache Kafk...
Solutions for bi-directional integration between Oracle RDBMS and Apache Kafk...Solutions for bi-directional integration between Oracle RDBMS and Apache Kafk...
Solutions for bi-directional integration between Oracle RDBMS and Apache Kafk...
confluent
 
The rise of json in rdbms land jab17
The rise of json in rdbms land jab17The rise of json in rdbms land jab17
The rise of json in rdbms land jab17
alikonweb
 
[Coscup 2012] JavascriptMVC
[Coscup 2012] JavascriptMVC[Coscup 2012] JavascriptMVC
[Coscup 2012] JavascriptMVC
Alive Kuo
 
Solutions for bi-directional integration between Oracle RDBMS & Apache Kafka
Solutions for bi-directional integration between Oracle RDBMS & Apache KafkaSolutions for bi-directional integration between Oracle RDBMS & Apache Kafka
Solutions for bi-directional integration between Oracle RDBMS & Apache Kafka
Guido Schmutz
 
The Best (and Worst) of Django
The Best (and Worst) of DjangoThe Best (and Worst) of Django
The Best (and Worst) of Django
Jacob Kaplan-Moss
 
ELK Stack - Turn boring logfiles into sexy dashboard
ELK Stack - Turn boring logfiles into sexy dashboardELK Stack - Turn boring logfiles into sexy dashboard
ELK Stack - Turn boring logfiles into sexy dashboard
Georg Sorst
 
Map/Confused? A practical approach to Map/Reduce with MongoDB
Map/Confused? A practical approach to Map/Reduce with MongoDBMap/Confused? A practical approach to Map/Reduce with MongoDB
Map/Confused? A practical approach to Map/Reduce with MongoDB
Uwe Printz
 
Internet and Web Technology (CLASS-10) [Node.js] | NIC/NIELIT Web Technology
Internet and Web Technology (CLASS-10) [Node.js] | NIC/NIELIT Web Technology Internet and Web Technology (CLASS-10) [Node.js] | NIC/NIELIT Web Technology
Internet and Web Technology (CLASS-10) [Node.js] | NIC/NIELIT Web Technology
Ayes Chinmay
 
Open Source Search: An Analysis
Open Source Search: An AnalysisOpen Source Search: An Analysis
Open Source Search: An Analysis
Justin Finkelstein
 
Full-Text Search Explained - Philipp Krenn - Codemotion Rome 2017
Full-Text Search Explained - Philipp Krenn - Codemotion Rome 2017Full-Text Search Explained - Philipp Krenn - Codemotion Rome 2017
Full-Text Search Explained - Philipp Krenn - Codemotion Rome 2017
Codemotion
 
Converting a Rails application to Node.js
Converting a Rails application to Node.jsConverting a Rails application to Node.js
Converting a Rails application to Node.js
Matt Sergeant
 
Eagle6 mongo dc revised
Eagle6 mongo dc revisedEagle6 mongo dc revised
Eagle6 mongo dc revised
MongoDB
 
Eagle6 Enterprise Situational Awareness
Eagle6 Enterprise Situational AwarenessEagle6 Enterprise Situational Awareness
Eagle6 Enterprise Situational Awareness
MongoDB
 
MongoDB Performance Tuning
MongoDB Performance TuningMongoDB Performance Tuning
MongoDB Performance Tuning
MongoDB
 
Micro app-framework - NodeLive Boston
Micro app-framework - NodeLive BostonMicro app-framework - NodeLive Boston
Micro app-framework - NodeLive Boston
Michael Dawson
 
Ad

More from francescapasha (7)

Creating A User Journey for Your Open Source Community
Creating A User Journey for Your Open Source CommunityCreating A User Journey for Your Open Source Community
Creating A User Journey for Your Open Source Community
francescapasha
 
Intro to the MongoDB Community
Intro to the MongoDB CommunityIntro to the MongoDB Community
Intro to the MongoDB Community
francescapasha
 
JumpSpoon
JumpSpoonJumpSpoon
JumpSpoon
francescapasha
 
How to Network Like Your Life Depends on In (Cause it Does!)
How to Network Like Your Life Depends on In (Cause it Does!) How to Network Like Your Life Depends on In (Cause it Does!)
How to Network Like Your Life Depends on In (Cause it Does!)
francescapasha
 
Arts deviants
Arts deviantsArts deviants
Arts deviants
francescapasha
 
Taproot volunteer deck
Taproot volunteer deck Taproot volunteer deck
Taproot volunteer deck
francescapasha
 
Arts and Positive Deviance
Arts and Positive DevianceArts and Positive Deviance
Arts and Positive Deviance
francescapasha
 
Creating A User Journey for Your Open Source Community
Creating A User Journey for Your Open Source CommunityCreating A User Journey for Your Open Source Community
Creating A User Journey for Your Open Source Community
francescapasha
 
Intro to the MongoDB Community
Intro to the MongoDB CommunityIntro to the MongoDB Community
Intro to the MongoDB Community
francescapasha
 
How to Network Like Your Life Depends on In (Cause it Does!)
How to Network Like Your Life Depends on In (Cause it Does!) How to Network Like Your Life Depends on In (Cause it Does!)
How to Network Like Your Life Depends on In (Cause it Does!)
francescapasha
 
Taproot volunteer deck
Taproot volunteer deck Taproot volunteer deck
Taproot volunteer deck
francescapasha
 
Arts and Positive Deviance
Arts and Positive DevianceArts and Positive Deviance
Arts and Positive Deviance
francescapasha
 

Recently uploaded (20)

Cyber Awareness overview for 2025 month of security
Cyber Awareness overview for 2025 month of securityCyber Awareness overview for 2025 month of security
Cyber Awareness overview for 2025 month of security
riccardosl1
 
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdfThe Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
Abi john
 
Heap, Types of Heap, Insertion and Deletion
Heap, Types of Heap, Insertion and DeletionHeap, Types of Heap, Insertion and Deletion
Heap, Types of Heap, Insertion and Deletion
Jaydeep Kale
 
Greenhouse_Monitoring_Presentation.pptx.
Greenhouse_Monitoring_Presentation.pptx.Greenhouse_Monitoring_Presentation.pptx.
Greenhouse_Monitoring_Presentation.pptx.
hpbmnnxrvb
 
Big Data Analytics Quick Research Guide by Arthur Morgan
Big Data Analytics Quick Research Guide by Arthur MorganBig Data Analytics Quick Research Guide by Arthur Morgan
Big Data Analytics Quick Research Guide by Arthur Morgan
Arthur Morgan
 
How analogue intelligence complements AI
How analogue intelligence complements AIHow analogue intelligence complements AI
How analogue intelligence complements AI
Paul Rowe
 
Andrew Marnell: Transforming Business Strategy Through Data-Driven Insights
Andrew Marnell: Transforming Business Strategy Through Data-Driven InsightsAndrew Marnell: Transforming Business Strategy Through Data-Driven Insights
Andrew Marnell: Transforming Business Strategy Through Data-Driven Insights
Andrew Marnell
 
#StandardsGoals for 2025: Standards & certification roundup - Tech Forum 2025
#StandardsGoals for 2025: Standards & certification roundup - Tech Forum 2025#StandardsGoals for 2025: Standards & certification roundup - Tech Forum 2025
#StandardsGoals for 2025: Standards & certification roundup - Tech Forum 2025
BookNet Canada
 
Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...
Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...
Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...
BookNet Canada
 
Build Your Own Copilot & Agents For Devs
Build Your Own Copilot & Agents For DevsBuild Your Own Copilot & Agents For Devs
Build Your Own Copilot & Agents For Devs
Brian McKeiver
 
2025-05-Q4-2024-Investor-Presentation.pptx
2025-05-Q4-2024-Investor-Presentation.pptx2025-05-Q4-2024-Investor-Presentation.pptx
2025-05-Q4-2024-Investor-Presentation.pptx
Samuele Fogagnolo
 
SAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdf
SAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdfSAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdf
SAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdf
Precisely
 
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
Alan Dix
 
Role of Data Annotation Services in AI-Powered Manufacturing
Role of Data Annotation Services in AI-Powered ManufacturingRole of Data Annotation Services in AI-Powered Manufacturing
Role of Data Annotation Services in AI-Powered Manufacturing
Andrew Leo
 
Splunk Security Update | Public Sector Summit Germany 2025
Splunk Security Update | Public Sector Summit Germany 2025Splunk Security Update | Public Sector Summit Germany 2025
Splunk Security Update | Public Sector Summit Germany 2025
Splunk
 
Linux Support for SMARC: How Toradex Empowers Embedded Developers
Linux Support for SMARC: How Toradex Empowers Embedded DevelopersLinux Support for SMARC: How Toradex Empowers Embedded Developers
Linux Support for SMARC: How Toradex Empowers Embedded Developers
Toradex
 
Complete Guide to Advanced Logistics Management Software in Riyadh.pdf
Complete Guide to Advanced Logistics Management Software in Riyadh.pdfComplete Guide to Advanced Logistics Management Software in Riyadh.pdf
Complete Guide to Advanced Logistics Management Software in Riyadh.pdf
Software Company
 
ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes Partner Innovation Updates for May 2025ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes
 
Procurement Insights Cost To Value Guide.pptx
Procurement Insights Cost To Value Guide.pptxProcurement Insights Cost To Value Guide.pptx
Procurement Insights Cost To Value Guide.pptx
Jon Hansen
 
Linux Professional Institute LPIC-1 Exam.pdf
Linux Professional Institute LPIC-1 Exam.pdfLinux Professional Institute LPIC-1 Exam.pdf
Linux Professional Institute LPIC-1 Exam.pdf
RHCSA Guru
 
Cyber Awareness overview for 2025 month of security
Cyber Awareness overview for 2025 month of securityCyber Awareness overview for 2025 month of security
Cyber Awareness overview for 2025 month of security
riccardosl1
 
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdfThe Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
Abi john
 
Heap, Types of Heap, Insertion and Deletion
Heap, Types of Heap, Insertion and DeletionHeap, Types of Heap, Insertion and Deletion
Heap, Types of Heap, Insertion and Deletion
Jaydeep Kale
 
Greenhouse_Monitoring_Presentation.pptx.
Greenhouse_Monitoring_Presentation.pptx.Greenhouse_Monitoring_Presentation.pptx.
Greenhouse_Monitoring_Presentation.pptx.
hpbmnnxrvb
 
Big Data Analytics Quick Research Guide by Arthur Morgan
Big Data Analytics Quick Research Guide by Arthur MorganBig Data Analytics Quick Research Guide by Arthur Morgan
Big Data Analytics Quick Research Guide by Arthur Morgan
Arthur Morgan
 
How analogue intelligence complements AI
How analogue intelligence complements AIHow analogue intelligence complements AI
How analogue intelligence complements AI
Paul Rowe
 
Andrew Marnell: Transforming Business Strategy Through Data-Driven Insights
Andrew Marnell: Transforming Business Strategy Through Data-Driven InsightsAndrew Marnell: Transforming Business Strategy Through Data-Driven Insights
Andrew Marnell: Transforming Business Strategy Through Data-Driven Insights
Andrew Marnell
 
#StandardsGoals for 2025: Standards & certification roundup - Tech Forum 2025
#StandardsGoals for 2025: Standards & certification roundup - Tech Forum 2025#StandardsGoals for 2025: Standards & certification roundup - Tech Forum 2025
#StandardsGoals for 2025: Standards & certification roundup - Tech Forum 2025
BookNet Canada
 
Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...
Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...
Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...
BookNet Canada
 
Build Your Own Copilot & Agents For Devs
Build Your Own Copilot & Agents For DevsBuild Your Own Copilot & Agents For Devs
Build Your Own Copilot & Agents For Devs
Brian McKeiver
 
2025-05-Q4-2024-Investor-Presentation.pptx
2025-05-Q4-2024-Investor-Presentation.pptx2025-05-Q4-2024-Investor-Presentation.pptx
2025-05-Q4-2024-Investor-Presentation.pptx
Samuele Fogagnolo
 
SAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdf
SAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdfSAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdf
SAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdf
Precisely
 
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
Alan Dix
 
Role of Data Annotation Services in AI-Powered Manufacturing
Role of Data Annotation Services in AI-Powered ManufacturingRole of Data Annotation Services in AI-Powered Manufacturing
Role of Data Annotation Services in AI-Powered Manufacturing
Andrew Leo
 
Splunk Security Update | Public Sector Summit Germany 2025
Splunk Security Update | Public Sector Summit Germany 2025Splunk Security Update | Public Sector Summit Germany 2025
Splunk Security Update | Public Sector Summit Germany 2025
Splunk
 
Linux Support for SMARC: How Toradex Empowers Embedded Developers
Linux Support for SMARC: How Toradex Empowers Embedded DevelopersLinux Support for SMARC: How Toradex Empowers Embedded Developers
Linux Support for SMARC: How Toradex Empowers Embedded Developers
Toradex
 
Complete Guide to Advanced Logistics Management Software in Riyadh.pdf
Complete Guide to Advanced Logistics Management Software in Riyadh.pdfComplete Guide to Advanced Logistics Management Software in Riyadh.pdf
Complete Guide to Advanced Logistics Management Software in Riyadh.pdf
Software Company
 
ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes Partner Innovation Updates for May 2025ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes
 
Procurement Insights Cost To Value Guide.pptx
Procurement Insights Cost To Value Guide.pptxProcurement Insights Cost To Value Guide.pptx
Procurement Insights Cost To Value Guide.pptx
Jon Hansen
 
Linux Professional Institute LPIC-1 Exam.pdf
Linux Professional Institute LPIC-1 Exam.pdfLinux Professional Institute LPIC-1 Exam.pdf
Linux Professional Institute LPIC-1 Exam.pdf
RHCSA Guru
 

MongoDB and RDBMS

  • 1. RDBMS / MongoDB Nuri Halperin Feb 2012
  • 2. >outline(); [ {'layerisms': 'where is your app?'}, {'engine': 'notes about engine'}, {'dataStructure': 'internals data structures'}, {'schema': 'less and more'}, {'index': 'type and applicability'}, {'update': 'semantics and mechanics'}, {'transaction': 'dread no more'}, {'security': 'just a touch'} ]
  • 3. >layerisms > db.rdbms.find({_id:'layerisms'}); { "_id" : "layerisms", "tiers" : [ "App", "Service", "DB" ], "dblogic" : { "exists" : true } } > db.mongo.find({_id:'layerisms'}); { "_id" : "layerisms", "tiers" : [ "App", "Service", "DB" ], "dblogic" : { "exists" : false } } // practice: let your service layer do the logic.
  • 4. >engine > db.rdbms.find({_id:'engine'}); { "_id" : "engine", "language" : [ "C++", "C", "Other?" ] } > db.mongo.find({_id:'engine'}); { "_id" : "engine", "language" : "C++" } // hardly the issue. // performance due to other factors
  • 5. >dataStructure > db.rdbms.find({_id:'dataStructure'}); { "_id" : "dataStructure", "type" : [ "BTree", "Hashset", "bitmap" ] } > db.mongo.find({_id:'dataStructure'}); { "_id" : "dataStructure", "type" : "BTree" } // MongoDB has very low memory mgmt overhead. Most RDBMS do more memory mgmg
  • 6. >schema > db.rdbms.find({_id:'schema'}); { "_id" : "schema", "_" : { "schama" : true, "tables" : true, "udt" : true, "types" : [ "sql types", "native" ], "namespace" : true } } > db.mongo.find({_id:'schema'}); { "_id" : "schema", "_" : { "schema" : false, "tables" : false, "udt" : false, "types" : [ "BSON" ], "namespace" : true } } // Most significant. This is why dev loves NoSql. // Good drivers alleviate need for ORM.
  • 7. >index > db.rdbms.find({_id:'index'}); { "_id" : "index", "pk" : "auto", "ak" : true, "subObject" : false, "fulltext" : "*", "array" : false } > db.mongo.find({_id:'index'}); { "_id" : "index", "pk" : "auto", "ak" : true, "subObject" : true, "fulltext" : false* , "array" : true } // fulltext = think lucene, not regex. // may be coming to MongoDB
  • 8. >update > db.rdbms.find({_id:'update'}); { "_id" : "update", "multirecord" : true, "singlerecord" : true, "atomic" : "*", "fluent" : true, "crosstable" : true } > db.mongo.find({_id:'update'}); { "_id" : "update", "multirecord" : true, "singlerecord" : true, "atomic" : "*", "fluent" : true, "crosstable" : false } // the existance of cross-table cross-record locks is a major source of RDBMS slowness
  • 9. >transaction > db.rdbms.find({_id:'transaction'}); { "_id" : "transaction", "crossRecord" : true, "optimistic" : true, "pessimistic" : true } > db.mongo.find({_id:'transaction'}); { "_id" : "transaction", "crossRecord" : false, "optimistic" : "dev", "pessimistic" : false } // RDBMS let you choose consistency model. // MongoDB supports optimistic model with update syntax.
  • 10. >security > db.rdbms.find({_id:'security'}); { "_id" : "security", "transport" : true, "identity" : true, "objectLevel" : true } > db.mongo.find({_id:'security'}); { "_id" : "security", "transport" : false, "identity" : true, "objectLevel" : false } // RDBMS offer schema level security. // MongoDB has no schema: r, rw
  • 11. Looking forward to Aggregation++ Full text index Geo++ I love quartely releases..