SlideShare a Scribd company logo
NoSQL is a lie
0
Legal Disclaimer
©IBMCorporation2015.AllRightsReserved.
Theinformationcontainedinthispublicationisprovidedforinformationalpurposesonly.Whileeffortsweremadetoverifythecompletenessandaccuracyoftheinformationcontainedinthis
publication,itisprovidedASISwithoutwarrantyofanykind,expressorimplied.Inaddition,thisinformationisbasedonIBM’scurrentproductplansandstrategy,whicharesubjecttochangebyIBM
withoutnotice.IBMshallnotberesponsibleforanydamagesarisingoutoftheuseof,orotherwiserelatedto,thispublicationoranyothermaterials.Nothingcontainedinthispublicationisintendedto,
norshallhavetheeffectof,creatinganywarrantiesorrepresentationsfromIBMoritssuppliersorlicensors,oralteringthetermsandconditionsoftheapplicablelicenseagreementgoverningtheuseof
IBMsoftware.
ReferencesinthispresentationtoIBMproducts,programs,orservicesdonotimplythattheywillbeavailableinallcountriesinwhichIBMoperates.Productreleasedatesand/orcapabilitiesreferenced
inthispresentationmaychangeatanytimeatIBM’ssolediscretionbasedonmarketopportunitiesorotherfactors,andarenotintendedtobeacommitmenttofutureproductorfeatureavailabilityin
anyway.Nothingcontainedinthesematerialsisintendedto,norshallhavetheeffectof,statingorimplyingthatanyactivitiesundertakenbyyouwillresultinanyspecificsales,revenuegrowthorother
results.
Ifthetextcontainsperformancestatisticsorreferencestobenchmarks,insertthefollowinglanguage;otherwisedelete:PerformanceisbasedonmeasurementsandprojectionsusingstandardIBM
benchmarksinacontrolledenvironment.Theactualthroughputorperformancethatanyuserwillexperiencewillvarydependinguponmanyfactors,includingconsiderationssuchastheamountof
multiprogrammingintheuser'sjobstream,theI/Oconfiguration,thestorageconfiguration,andtheworkloadprocessed.Therefore,noassurancecanbegiventhatanindividualuserwillachieveresults
similartothosestatedhere.
Ifthetextincludesanycustomerexamples,pleaseconfirmwehavepriorwrittenapprovalfromsuchcustomerandinsertthefollowinglanguage;otherwisedelete:Allcustomerexamplesdescribedare
presentedasillustrationsofhowthosecustomershaveusedIBMproductsandtheresultstheymayhaveachieved.Actualenvironmentalcostsandperformancecharacteristicsmayvarybycustomer.
PleasereviewtextforpropertrademarkattributionofIBMproducts.Atfirstuse,eachproductnamemustbethefullnameandincludeappropriatetrademarksymbols(e.g.,IBMLotus®Sametime®
Unyte™).Subsequentreferencescandrop“IBM”butshouldincludetheproperbranding(e.g.,LotusSametimeGateway,orWebSphereApplicationServer).Pleasereferto
forguidanceonwhichtrademarksrequirethe®or™symbol.DonotuseabbreviationsforIBMproductnamesinyourpresentation.Allproductnamesmust
beusedasadjectivesratherthannouns.Pleaselistallofthetrademarksthatyouuseinyourpresentationasfollows;deleteanynotincludedinyourpresentation.IBM,theIBMlogo,Lotus,LotusNotes,
Notes,Domino,Quickr,Sametime,WebSphere,UC2,PartnerWorldandLotuspherearetrademarksofInternationalBusinessMachinesCorporationintheUnitedStates,othercountries,orboth.Unyte
isatrademarkofWebDialogs,Inc.,intheUnitedStates,othercountries,orboth.
IfyoureferenceAdobe®inthetext,pleasemarkthefirstuseandincludethefollowing;otherwisedelete:Adobe,theAdobelogo,PostScript,andthePostScriptlogoareeitherregisteredtrademarksor
trademarksofAdobeSystemsIncorporatedintheUnitedStates,and/orothercountries.
IfyoureferenceJava™inthetext,pleasemarkthefirstuseandincludethefollowing;otherwisedelete:JavaandallJava-basedtrademarksaretrademarksofSunMicrosystems,Inc.intheUnitedStates,
othercountries,orboth.
IfyoureferenceMicrosoft®and/orWindows®inthetext,pleasemarkthefirstuseandincludethefollowing,asapplicable;otherwisedelete:MicrosoftandWindowsaretrademarksofMicrosoft
CorporationintheUnitedStates,othercountries,orboth.
IfyoureferenceIntel®and/oranyofthefollowingIntelproductsinthetext,pleasemarkthefirstuseandincludethosethatyouuseasfollows;otherwisedelete:Intel,IntelCentrino,Celeron,IntelXeon,
IntelSpeedStep,Itanium,andPentiumaretrademarksorregisteredtrademarksofIntelCorporationoritssubsidiariesintheUnitedStatesandothercountries.
IfyoureferenceUNIX®inthetext,pleasemarkthefirstuseandincludethefollowing;otherwisedelete:UNIXisaregisteredtrademarkofTheOpenGroupintheUnitedStatesandothercountries.
IfyoureferenceLinux®inyourpresentation,pleasemarkthefirstuseandincludethefollowing;otherwisedelete:LinuxisaregisteredtrademarkofLinusTorvaldsintheUnitedStates,othercountries,
orboth.Othercompany,product,orservicenamesmaybetrademarksorservicemarksofothers.
Ifthetext/graphicsincludescreenshots,noactualIBMemployeenamesmaybeused(evenyourown),ifyourscreenshotsincludefictitiouscompanynames(e.g.,Renovations,ZetaBank,Acme)please
updateandinsertthefollowing;otherwisedelete:Allreferencesto[insertfictitiouscompanyname]refertoafictitiouscompanyandareusedforillustrationpurposesonly.
http://www.ibm.com/legal/copytrade.shtml
Who am I?
Mike Elsmore
Developer Advocate
mike.elsmore@uk.ibm.com
IBM Cloud Data Services
< rant >
NoSQL
Catch All
try {
SQL
} catch (Exception $e) {
Must be NoSQL
}
Not SQL
It's a nasty backronym
SQL on
NoSQL
SPARQL
CQL (Cassandra Query Language)
Couchbase SQL
Schemaless
Yes, they'll accept anything…but
Schema
Because how else do you know what you’re getting out?
No NoSQL
Experts
Over 5 Types
So many distinct types of databases
"X" Expert
</ rant >
Enter CAP
Theorem
Consistency,
Availability
and Partition
Tolerance
Consistent
In = Out
Available
Partition
Tolerant
Know's where to look
Pick two?
Uncertainty
principle
Why is this
important?
History
Consistent &
Available
Ignoring the Partition Tolerance by being in the same place
Distributed
Systems and
Databases
Needs to know what machine X data is on
Partition
Tolerance &
___________
Design
Decision
The reason why most NoSQL Databases are either AP or CP
Types
Key-Value
Document
Column
Graph
Other
Database
Types
Object, Tabular, Tuple, Triple/Quad store (RDF), Multimodel, Etc
Key Value
Datastores
Popular Key-
Value
Datastores
Redis
Memcached
Riak
What is a
Key-Value
Datastore?
Why use a
Key-Value
store?
Document
Datastores
Popular
Document
Datastores
Cloudant
CouchDB
MongoDB
Rethink
What is a
Document
Datastore?
Why use a
Document
Datastore?
Column
Datastores
Popular
Column
Datastores
Cassandra
Hbase
Accumulo
What is a
Column
Datastore?
Why use a
Column
Datastore?
Graph
Datastores
Popular
Graph
Datastores
TitanDB
Neo4j
Giraph
What are
Graph
Datastores?
Why use
Graph
Datastores?
What we've
learnt…
NoSQL is a lie
Why NoSQL grew up the way it did
And it's just different databases for different jobs
Mike ElsmoreNoSQL is a lie
@ukmadlz
mike.elsmore@uk.ibm.com
http://ukmadlz.github.io/nosql-
is-a-lie
©IBMCorporation2015.AllRightsReserved.

More Related Content

Similar to NoSQL is a lie

BP205: There’s an API for that! Why and how to build on the IBM Connections P...
BP205: There’s an API for that! Why and how to build on the IBM Connections P...BP205: There’s an API for that! Why and how to build on the IBM Connections P...
BP205: There’s an API for that! Why and how to build on the IBM Connections P...
Mikkel Flindt Heisterberg
 
Managing integration in a multi cluster world
Managing integration in a multi cluster worldManaging integration in a multi cluster world
Managing integration in a multi cluster world
Shikha Srivastava
 
4515 Modernize your CICS applications for Mobile and Cloud
4515 Modernize your CICS applications for Mobile and Cloud4515 Modernize your CICS applications for Mobile and Cloud
4515 Modernize your CICS applications for Mobile and Cloud
nick_garrod
 
Integrate Application Security Testing into your SDLC
Integrate Application Security Testing into your SDLCIntegrate Application Security Testing into your SDLC
Integrate Application Security Testing into your SDLC
IBM Security
 
IBM Cognos Business Intelligence using dashDB
IBM Cognos Business Intelligence using dashDBIBM Cognos Business Intelligence using dashDB
IBM Cognos Business Intelligence using dashDB
IBM Cloud Data Services
 
Scalable, Available and Reliable Cloud Applications with PaaS and Microservices
Scalable, Available and Reliable Cloud Applications with PaaS and MicroservicesScalable, Available and Reliable Cloud Applications with PaaS and Microservices
Scalable, Available and Reliable Cloud Applications with PaaS and Microservices
David Currie
 
IBM Collaboration Solutions Application Development - Frequently Asked Questions
IBM Collaboration Solutions Application Development - Frequently Asked QuestionsIBM Collaboration Solutions Application Development - Frequently Asked Questions
IBM Collaboration Solutions Application Development - Frequently Asked Questions
Niklas Heidloff
 
App infrastructure &_integration_keynote_final
App infrastructure &_integration_keynote_finalApp infrastructure &_integration_keynote_final
App infrastructure &_integration_keynote_final
eileendohertysmith
 
Insight_Session_2734_Presentation_Final
Insight_Session_2734_Presentation_FinalInsight_Session_2734_Presentation_Final
Insight_Session_2734_Presentation_FinalKaren He
 
Witness the Evolution of Teamwork
Witness the Evolution of TeamworkWitness the Evolution of Teamwork
Witness the Evolution of Teamwork
Matt Holitza
 
Application Development for IBM Connections with IBM Bluemix
Application Development  for IBM Connections with IBM BluemixApplication Development  for IBM Connections with IBM Bluemix
Application Development for IBM Connections with IBM Bluemix
IBM Connections Developers
 
Application Development for IBM Connections with IBM Bluemix
Application Development  for IBM Connections with IBM BluemixApplication Development  for IBM Connections with IBM Bluemix
Application Development for IBM Connections with IBM Bluemix
Niklas Heidloff
 
Life on the Endpoint Edge: Winning the Battle Against Cyber Attacks
Life on the Endpoint Edge: Winning the Battle Against Cyber AttacksLife on the Endpoint Edge: Winning the Battle Against Cyber Attacks
Life on the Endpoint Edge: Winning the Battle Against Cyber Attacks
IBM Security
 
World of Watson Ask Me Anything About IoT
World of Watson Ask Me Anything About IoTWorld of Watson Ask Me Anything About IoT
World of Watson Ask Me Anything About IoT
Markus Van Kempen
 
NRB - LUXEMBOURG MAINFRAME DAY 2017 - z platform - Strategy
NRB - LUXEMBOURG MAINFRAME DAY 2017 - z platform - StrategyNRB - LUXEMBOURG MAINFRAME DAY 2017 - z platform - Strategy
NRB - LUXEMBOURG MAINFRAME DAY 2017 - z platform - Strategy
NRB
 
NRB - BE MAINFRAME DAY 2017 - Z strategy
NRB - BE MAINFRAME DAY 2017 - Z strategyNRB - BE MAINFRAME DAY 2017 - Z strategy
NRB - BE MAINFRAME DAY 2017 - Z strategy
NRB
 
MQ Light in IBM MQ: IBM Interconnect 2015 session AME4182
MQ Light in IBM MQ:  IBM Interconnect 2015 session AME4182MQ Light in IBM MQ:  IBM Interconnect 2015 session AME4182
MQ Light in IBM MQ: IBM Interconnect 2015 session AME4182
Robert Nicholson
 
IBM Innovation StudioHult Business Challenge—Informa
IBM Innovation StudioHult Business Challenge—InformaIBM Innovation StudioHult Business Challenge—Informa
IBM Innovation StudioHult Business Challenge—Informa
LizbethQuinonez813
 
Connecting Devices to the IBM IoT via MQTT - Session 1231 @IBMInsight2015
Connecting Devices to the IBM IoT via MQTT - Session 1231 @IBMInsight2015Connecting Devices to the IBM IoT via MQTT - Session 1231 @IBMInsight2015
Connecting Devices to the IBM IoT via MQTT - Session 1231 @IBMInsight2015
Markus Van Kempen
 

Similar to NoSQL is a lie (20)

BP205: There’s an API for that! Why and how to build on the IBM Connections P...
BP205: There’s an API for that! Why and how to build on the IBM Connections P...BP205: There’s an API for that! Why and how to build on the IBM Connections P...
BP205: There’s an API for that! Why and how to build on the IBM Connections P...
 
Managing integration in a multi cluster world
Managing integration in a multi cluster worldManaging integration in a multi cluster world
Managing integration in a multi cluster world
 
4515 Modernize your CICS applications for Mobile and Cloud
4515 Modernize your CICS applications for Mobile and Cloud4515 Modernize your CICS applications for Mobile and Cloud
4515 Modernize your CICS applications for Mobile and Cloud
 
Integrate Application Security Testing into your SDLC
Integrate Application Security Testing into your SDLCIntegrate Application Security Testing into your SDLC
Integrate Application Security Testing into your SDLC
 
IBM Cognos Business Intelligence using dashDB
IBM Cognos Business Intelligence using dashDBIBM Cognos Business Intelligence using dashDB
IBM Cognos Business Intelligence using dashDB
 
Scalable, Available and Reliable Cloud Applications with PaaS and Microservices
Scalable, Available and Reliable Cloud Applications with PaaS and MicroservicesScalable, Available and Reliable Cloud Applications with PaaS and Microservices
Scalable, Available and Reliable Cloud Applications with PaaS and Microservices
 
IBM Collaboration Solutions Application Development - Frequently Asked Questions
IBM Collaboration Solutions Application Development - Frequently Asked QuestionsIBM Collaboration Solutions Application Development - Frequently Asked Questions
IBM Collaboration Solutions Application Development - Frequently Asked Questions
 
App infrastructure &_integration_keynote_final
App infrastructure &_integration_keynote_finalApp infrastructure &_integration_keynote_final
App infrastructure &_integration_keynote_final
 
Insight_Session_2734_Presentation_Final
Insight_Session_2734_Presentation_FinalInsight_Session_2734_Presentation_Final
Insight_Session_2734_Presentation_Final
 
Witness the Evolution of Teamwork
Witness the Evolution of TeamworkWitness the Evolution of Teamwork
Witness the Evolution of Teamwork
 
Application Development for IBM Connections with IBM Bluemix
Application Development  for IBM Connections with IBM BluemixApplication Development  for IBM Connections with IBM Bluemix
Application Development for IBM Connections with IBM Bluemix
 
Application Development for IBM Connections with IBM Bluemix
Application Development  for IBM Connections with IBM BluemixApplication Development  for IBM Connections with IBM Bluemix
Application Development for IBM Connections with IBM Bluemix
 
Life on the Endpoint Edge: Winning the Battle Against Cyber Attacks
Life on the Endpoint Edge: Winning the Battle Against Cyber AttacksLife on the Endpoint Edge: Winning the Battle Against Cyber Attacks
Life on the Endpoint Edge: Winning the Battle Against Cyber Attacks
 
World of Watson Ask Me Anything About IoT
World of Watson Ask Me Anything About IoTWorld of Watson Ask Me Anything About IoT
World of Watson Ask Me Anything About IoT
 
NRB - LUXEMBOURG MAINFRAME DAY 2017 - z platform - Strategy
NRB - LUXEMBOURG MAINFRAME DAY 2017 - z platform - StrategyNRB - LUXEMBOURG MAINFRAME DAY 2017 - z platform - Strategy
NRB - LUXEMBOURG MAINFRAME DAY 2017 - z platform - Strategy
 
NRB - BE MAINFRAME DAY 2017 - Z strategy
NRB - BE MAINFRAME DAY 2017 - Z strategyNRB - BE MAINFRAME DAY 2017 - Z strategy
NRB - BE MAINFRAME DAY 2017 - Z strategy
 
MQ Light in IBM MQ: IBM Interconnect 2015 session AME4182
MQ Light in IBM MQ:  IBM Interconnect 2015 session AME4182MQ Light in IBM MQ:  IBM Interconnect 2015 session AME4182
MQ Light in IBM MQ: IBM Interconnect 2015 session AME4182
 
IBM Innovation StudioHult Business Challenge—Informa
IBM Innovation StudioHult Business Challenge—InformaIBM Innovation StudioHult Business Challenge—Informa
IBM Innovation StudioHult Business Challenge—Informa
 
WOW2016_3963
WOW2016_3963WOW2016_3963
WOW2016_3963
 
Connecting Devices to the IBM IoT via MQTT - Session 1231 @IBMInsight2015
Connecting Devices to the IBM IoT via MQTT - Session 1231 @IBMInsight2015Connecting Devices to the IBM IoT via MQTT - Session 1231 @IBMInsight2015
Connecting Devices to the IBM IoT via MQTT - Session 1231 @IBMInsight2015
 

NoSQL is a lie