SlideShare a Scribd company logo
1 of 32
1
The following is a short, incomplete history of the SQL
 1987 – Initial ISO/IEC Standard
 1989 – Referential Integrity
 1992 – SQL2
 1995 SQL/CLI (ODBC)
 1996 SQL/PSM – Procedural Language extensions
 1999 – User Defined Types
 2003 – SQL/XML
 2008 – Expansions and corrections
 2011 (or 2012) System Versioned and Application Time
Period Tables
2
 Data stored in columns and tables
 Relationships represented by data
 Data Manipulation Language
 Data Definition Language
 Transactions
 Abstraction from physical layer
3
 Applications specify what, not how
 Query optimization engine
 Physical layer can change without modifying
applications
 Create indexes to support queries
 In Memory databases
4
 Data manipulated with Select, Insert, Update, &
Delete statements
 Select T1.Column1, T2.Column2 …
From Table1, Table2 …
Where T1.Column1 = T2.Column1 …
 Data Aggregation
 Compound statements
 Functions and Procedures
 Explicit transaction control
5
 Schema defined at the start
 Create Table (Column1 Datatype1, Column2 Datatype
2, …)
 Constraints to define and enforce relationships
 Primary Key
 Foreign Key
 Etc.
 Triggers to respond to Insert, Update , & Delete
 Stored Modules
 Alter …
 Drop …
 Security and Access Control
6
 Atomic – All of the work in a transaction completes
(commit) or none of it completes
 Consistent – A transaction transforms the database
from one consistent state to another consistent state.
Consistency is defined in terms of constraints.
 Isolated – The results of any changes made during a
transaction are not visible until the transaction has
committed.
 Durable – The results of a committed transaction
survive failures
7
 Commercial
 IBM DB2
 Oracle RDMS
 Microsoft SQL Server
 Sybase SQL Anywhere
 Open Source (with commercial options)
 MySQL
 Ingres
Significant portions of the
world’s economy use SQL databases!
8
From www.nosql-database.org:
Next Generation Databases mostly addressing some of the
points: being non-relational, distributed, open-source
and horizontal scalable. The original intention has been
modern web-scale databases. The movement began
early 2009 and is growing rapidly. Often more
characteristics apply as: schema-free, easy replication
support, simple API, eventually consistent / BASE
(not ACID), a huge data amount, and more.
9
http://www.nosql-database.org/ lists 122 NoSQL
Databases
 Cassandra
 CouchDB
 Hadoop & Hbase
 MongoDB
 StupidDB
 Etc.
10
 Large data volumes
 Google’s “big data”
 Scalable replication and distribution
 Potentially thousands of machines
 Potentially distributed around the world
 Queries need to return answers quickly
 Mostly query, few updates
 Asynchronous Inserts & Updates
 Schema-less
 ACID transaction properties are not needed – BASE
 CAP Theorem
 Open source development
11
 Acronym contrived to be the opposite of ACID
 Basically Available,
 Soft state,
 Eventually Consistent
 Characteristics
 Weak consistency – stale data OK
 Availability first
 Best effort
 Approximate answers OK
 Aggressive (optimistic)
 Simpler and faster
12
A distributed system can support only two of the
following characteristics:
 Consistency
 Availability
 Partition tolerance
The slides from Brewer’s July 2000 talk do not define
these characteristics.
13
 all nodes see the same data at the same time –
Wikipedia
 client perceives that a set of operations has occurred
all at once – Pritchett
 More like Atomic in ACID transaction properties
14
 node failures do not prevent survivors from
continuing to operate – Wikipedia
 Every operation must terminate in an intended
response – Pritchett
15
 the system continues to operate despite
arbitrary message loss – Wikipedia
 Operations will complete, even if individual
components are unavailable – Pritchett
16
Discussing NoSQL databases is complicated because
there are a variety of types:
 Column Store – Each storage block contains data from
only one column
 Document Store – stores documents made up of
tagged elements
 Key-Value Store – Hash table of keys
17
 XML Databases
 Graph Databases
 Codasyl Databases
 Object Oriented Databases
 Etc…
 Will not address these today
18
 Each storage block contains data from only one
column
 Example: Hadoop/Hbase
 http://hadoop.apache.org/
 Yahoo, Facebook
 Example: Ingres VectorWise
 Column Store integrated with an SQL database
 http://www.ingres.com/products/vectorwise
19
 More efficient than row (or document) store if:
 Multiple row/record/documents are inserted at the
same time so updates of column blocks can be
aggregated
 Retrievals access only some of the columns in a
row/record/document
20
 Example: CouchDB
 http://couchdb.apache.org/
 BBC
 Example: MongoDB
 http://www.mongodb.org/
 Foursquare, Shutterfly
 JSON – JavaScript Object Notation
21
{
"_id": "guid goes here",
"_rev": "314159",
"type": "abstract",
"author": "Keith W. Hare"
"title": "SQL Standard and NoSQL Databases",
"body": "NoSQL databases (either no-SQL or Not Only SQL)
are currently a hot topic in some parts of
computing.",
"creation_timestamp": "2011/05/10 13:30:00 +0004"
}
22
 "_id"
 GUID – Global Unique Identifier
 Passed in or generated by CouchDB
 "_rev"
 Revision number
 Versioning mechanism
 "type", "author", "title", etc.
 Arbitrary tags
 Schema-less
 Could be validated after the fact by user-written routine
23
 Hash tables of Keys
 Values stored with Keys
 Fast access to small data values
 Example – Project-Voldemort
 http://www.project-voldemort.com/
 Linkedin
 Example – MemCacheDB
 http://memcachedb.org/
 Backend storage is Berkeley-DB
24
 Technique for indexing and searching large data
volumes
 Two Phases, Map and Reduce
 Map
 Extract sets of Key-Value pairs from underlying data
 Potentially in Parallel on multiple machines
 Reduce
 Merge and sort sets of Key-Value pairs
 Results may be useful for other searches
25
 Map Reduce techniques differ across products
 Implemented by application developers, not by
underlying software
26
Google granted US Patent 7,650,331, January 2010
System and method for efficient large-scale data processing
A large-scale data processing system and method includes one
or more application-independent map modules configured to
read input data and to apply at least one application-specific
map operation to the input data to produce intermediate data
values, wherein the map operation is automatically parallelized
across multiple processors in the parallel processing
environment. A plurality of intermediate data structures are
used to store the intermediate data values. One or more
application-independent reduce modules are configured to
retrieve the intermediate data values and to apply at least one
application-specific reduce operation to the intermediate
data values to provide output data.
27
 Syntax varies
 HTML
 Java Script
 Etc.
 Asynchronous – Inserts and updates do not wait for
confirmation
 Versioned
 Optimistic Concurrency
28
 Syntax Varies
 No set-based query language
 Procedural program languages such as Java, C, etc.
 Application specifies retrieval path
 No query optimizer
 Quick answer is important
 May not be a single “right” answer
29
 Small upfront software costs
 Suitable for large scale distribution on commodity
hardware
30
 NoSQL databases reject:
 Overhead of ACID transactions
 “Complexity” of SQL
 Burden of up-front schema design
 Declarative query expression
 Yesterday’s technology
 Programmer responsible for
 Step-by-step procedural language
 Navigating access path
31
 SQL Databases
 Predefined Schema
 Standard definition and interface language
 Tight consistency
 Well defined semantics
 NoSQL Database
 No predefined Schema
 Per-product definition and interface language
 Getting an answer quickly is more important than
getting a correct answer
32

More Related Content

What's hot

6 Data Modeling for NoSQL 2/2
6 Data Modeling for NoSQL 2/26 Data Modeling for NoSQL 2/2
6 Data Modeling for NoSQL 2/2Fabio Fumarola
 
Introduction to NOSQL databases
Introduction to NOSQL databasesIntroduction to NOSQL databases
Introduction to NOSQL databasesAshwani Kumar
 
Introduction to NoSQL
Introduction to NoSQLIntroduction to NoSQL
Introduction to NoSQLbalwinders
 
Appache Cassandra
Appache Cassandra  Appache Cassandra
Appache Cassandra nehabsairam
 
Chapter 4 terminolgy of keyvalue databses from nosql for mere mortals
Chapter 4 terminolgy of keyvalue databses from nosql for mere mortalsChapter 4 terminolgy of keyvalue databses from nosql for mere mortals
Chapter 4 terminolgy of keyvalue databses from nosql for mere mortalsnehabsairam
 
Online Datastage training
Online Datastage trainingOnline Datastage training
Online Datastage trainingchpriyaa1
 
SQL Server Integration Services
SQL Server Integration ServicesSQL Server Integration Services
SQL Server Integration ServicesRobert MacLean
 
Olap, oltp and data mining
Olap, oltp and data miningOlap, oltp and data mining
Olap, oltp and data miningzafrii
 
Assignment_4
Assignment_4Assignment_4
Assignment_4Kirti J
 
Analysis and evaluation of riak kv cluster environment using basho bench
Analysis and evaluation of riak kv cluster environment using basho benchAnalysis and evaluation of riak kv cluster environment using basho bench
Analysis and evaluation of riak kv cluster environment using basho benchStevenChike
 
Jan Steemann: Modelling data in a schema free world (Talk held at Froscon, 2...
Jan Steemann: Modelling data in a schema free world  (Talk held at Froscon, 2...Jan Steemann: Modelling data in a schema free world  (Talk held at Froscon, 2...
Jan Steemann: Modelling data in a schema free world (Talk held at Froscon, 2...ArangoDB Database
 
MS Sql Server: Introduction To Database Concepts
MS Sql Server: Introduction To Database ConceptsMS Sql Server: Introduction To Database Concepts
MS Sql Server: Introduction To Database ConceptsDataminingTools Inc
 
WEB PROGRAMMING USING ASP.NET
WEB PROGRAMMING USING ASP.NETWEB PROGRAMMING USING ASP.NET
WEB PROGRAMMING USING ASP.NETDhruvVekariya3
 
What is OLAP -Data Warehouse Concepts - IT Online Training @ Newyorksys
What is OLAP -Data Warehouse Concepts - IT Online Training @ NewyorksysWhat is OLAP -Data Warehouse Concepts - IT Online Training @ Newyorksys
What is OLAP -Data Warehouse Concepts - IT Online Training @ NewyorksysNEWYORKSYS-IT SOLUTIONS
 

What's hot (20)

6 Data Modeling for NoSQL 2/2
6 Data Modeling for NoSQL 2/26 Data Modeling for NoSQL 2/2
6 Data Modeling for NoSQL 2/2
 
Introduction to NOSQL databases
Introduction to NOSQL databasesIntroduction to NOSQL databases
Introduction to NOSQL databases
 
NoSQL databases
NoSQL databasesNoSQL databases
NoSQL databases
 
Introduction to NoSQL
Introduction to NoSQLIntroduction to NoSQL
Introduction to NoSQL
 
Sql server basics
Sql server basicsSql server basics
Sql server basics
 
Artigo no sql x relational
Artigo no sql x relationalArtigo no sql x relational
Artigo no sql x relational
 
Appache Cassandra
Appache Cassandra  Appache Cassandra
Appache Cassandra
 
Chapter 4 terminolgy of keyvalue databses from nosql for mere mortals
Chapter 4 terminolgy of keyvalue databses from nosql for mere mortalsChapter 4 terminolgy of keyvalue databses from nosql for mere mortals
Chapter 4 terminolgy of keyvalue databses from nosql for mere mortals
 
Online Datastage training
Online Datastage trainingOnline Datastage training
Online Datastage training
 
SQL Server Integration Services
SQL Server Integration ServicesSQL Server Integration Services
SQL Server Integration Services
 
Apache storm
Apache stormApache storm
Apache storm
 
Olap, oltp and data mining
Olap, oltp and data miningOlap, oltp and data mining
Olap, oltp and data mining
 
Assignment_4
Assignment_4Assignment_4
Assignment_4
 
Analysis and evaluation of riak kv cluster environment using basho bench
Analysis and evaluation of riak kv cluster environment using basho benchAnalysis and evaluation of riak kv cluster environment using basho bench
Analysis and evaluation of riak kv cluster environment using basho bench
 
Jan Steemann: Modelling data in a schema free world (Talk held at Froscon, 2...
Jan Steemann: Modelling data in a schema free world  (Talk held at Froscon, 2...Jan Steemann: Modelling data in a schema free world  (Talk held at Froscon, 2...
Jan Steemann: Modelling data in a schema free world (Talk held at Froscon, 2...
 
SQL vs NoSQL
SQL vs NoSQLSQL vs NoSQL
SQL vs NoSQL
 
MS Sql Server: Introduction To Database Concepts
MS Sql Server: Introduction To Database ConceptsMS Sql Server: Introduction To Database Concepts
MS Sql Server: Introduction To Database Concepts
 
WEB PROGRAMMING USING ASP.NET
WEB PROGRAMMING USING ASP.NETWEB PROGRAMMING USING ASP.NET
WEB PROGRAMMING USING ASP.NET
 
Apache Hive
Apache HiveApache Hive
Apache Hive
 
What is OLAP -Data Warehouse Concepts - IT Online Training @ Newyorksys
What is OLAP -Data Warehouse Concepts - IT Online Training @ NewyorksysWhat is OLAP -Data Warehouse Concepts - IT Online Training @ Newyorksys
What is OLAP -Data Warehouse Concepts - IT Online Training @ Newyorksys
 

Viewers also liked

How we are making a difference - Care Home Quality Assurance
How we are making a difference - Care Home Quality AssuranceHow we are making a difference - Care Home Quality Assurance
How we are making a difference - Care Home Quality AssuranceMatthew Cunningham
 
CCG PH commissioning presentation Jan 2016
CCG PH commissioning presentation Jan 2016CCG PH commissioning presentation Jan 2016
CCG PH commissioning presentation Jan 2016Matthew Cunningham
 
Shuttle Maths Program
Shuttle Maths ProgramShuttle Maths Program
Shuttle Maths Programkovanlc
 
Socialmedia sierralyons
Socialmedia sierralyonsSocialmedia sierralyons
Socialmedia sierralyonsSierra Lyons
 
Resume - April E. Farrell 6-17-2015
Resume - April E. Farrell 6-17-2015Resume - April E. Farrell 6-17-2015
Resume - April E. Farrell 6-17-2015April Farrell
 
OnlineReputationBeaufortHouse
OnlineReputationBeaufortHouseOnlineReputationBeaufortHouse
OnlineReputationBeaufortHouseJuan Garcia
 
NHS Eastern Cheshire CCG Deepdive presentation GBAF17
NHS Eastern Cheshire CCG Deepdive presentation GBAF17 NHS Eastern Cheshire CCG Deepdive presentation GBAF17
NHS Eastern Cheshire CCG Deepdive presentation GBAF17 Matthew Cunningham
 
Merencenakan dan Mengorganisasikan Kerja Individu
Merencenakan dan Mengorganisasikan Kerja IndividuMerencenakan dan Mengorganisasikan Kerja Individu
Merencenakan dan Mengorganisasikan Kerja IndividuFenny R
 
Caring Together deep dive risk240
Caring Together deep dive risk240Caring Together deep dive risk240
Caring Together deep dive risk240Matthew Cunningham
 
Epidemiologia da ivc
Epidemiologia da ivcEpidemiologia da ivc
Epidemiologia da ivcSuzana326
 
Gimeney.kz - Свадьба директора
Gimeney.kz - Свадьба директораGimeney.kz - Свадьба директора
Gimeney.kz - Свадьба директораakvirtech
 

Viewers also liked (15)

How we are making a difference - Care Home Quality Assurance
How we are making a difference - Care Home Quality AssuranceHow we are making a difference - Care Home Quality Assurance
How we are making a difference - Care Home Quality Assurance
 
Brown Bag 82015 final cw2
Brown Bag 82015 final cw2Brown Bag 82015 final cw2
Brown Bag 82015 final cw2
 
CCG PH commissioning presentation Jan 2016
CCG PH commissioning presentation Jan 2016CCG PH commissioning presentation Jan 2016
CCG PH commissioning presentation Jan 2016
 
Shuttle Maths Program
Shuttle Maths ProgramShuttle Maths Program
Shuttle Maths Program
 
Vb getting started
Vb getting startedVb getting started
Vb getting started
 
Socialmedia sierralyons
Socialmedia sierralyonsSocialmedia sierralyons
Socialmedia sierralyons
 
Resume - April E. Farrell 6-17-2015
Resume - April E. Farrell 6-17-2015Resume - April E. Farrell 6-17-2015
Resume - April E. Farrell 6-17-2015
 
Tema 4 naturales
Tema 4 naturalesTema 4 naturales
Tema 4 naturales
 
OnlineReputationBeaufortHouse
OnlineReputationBeaufortHouseOnlineReputationBeaufortHouse
OnlineReputationBeaufortHouse
 
Patent Copy
Patent CopyPatent Copy
Patent Copy
 
NHS Eastern Cheshire CCG Deepdive presentation GBAF17
NHS Eastern Cheshire CCG Deepdive presentation GBAF17 NHS Eastern Cheshire CCG Deepdive presentation GBAF17
NHS Eastern Cheshire CCG Deepdive presentation GBAF17
 
Merencenakan dan Mengorganisasikan Kerja Individu
Merencenakan dan Mengorganisasikan Kerja IndividuMerencenakan dan Mengorganisasikan Kerja Individu
Merencenakan dan Mengorganisasikan Kerja Individu
 
Caring Together deep dive risk240
Caring Together deep dive risk240Caring Together deep dive risk240
Caring Together deep dive risk240
 
Epidemiologia da ivc
Epidemiologia da ivcEpidemiologia da ivc
Epidemiologia da ivc
 
Gimeney.kz - Свадьба директора
Gimeney.kz - Свадьба директораGimeney.kz - Свадьба директора
Gimeney.kz - Свадьба директора
 

Similar to Comparing sql and nosql dbs

Compare the capabilities of the Microsoft Access, Microsoft SQL Serv.pdf
Compare the capabilities of the Microsoft Access, Microsoft SQL Serv.pdfCompare the capabilities of the Microsoft Access, Microsoft SQL Serv.pdf
Compare the capabilities of the Microsoft Access, Microsoft SQL Serv.pdfarihantplastictanksh
 
Voldemort & Hadoop @ Linkedin, Hadoop User Group Jan 2010
Voldemort & Hadoop @ Linkedin, Hadoop User Group Jan 2010Voldemort & Hadoop @ Linkedin, Hadoop User Group Jan 2010
Voldemort & Hadoop @ Linkedin, Hadoop User Group Jan 2010Bhupesh Bansal
 
Hadoop and Voldemort @ LinkedIn
Hadoop and Voldemort @ LinkedInHadoop and Voldemort @ LinkedIn
Hadoop and Voldemort @ LinkedInHadoop User Group
 
DEE 431 Introduction to DBMS Slide 1
DEE 431 Introduction to DBMS Slide 1DEE 431 Introduction to DBMS Slide 1
DEE 431 Introduction to DBMS Slide 1YOGESH SINGH
 
Front Range PHP NoSQL Databases
Front Range PHP NoSQL DatabasesFront Range PHP NoSQL Databases
Front Range PHP NoSQL DatabasesJon Meredith
 
Data Handning with Sqlite for Android
Data Handning with Sqlite for AndroidData Handning with Sqlite for Android
Data Handning with Sqlite for AndroidJakir Hossain
 
Modern databases and its challenges (SQL ,NoSQL, NewSQL)
Modern databases and its challenges (SQL ,NoSQL, NewSQL)Modern databases and its challenges (SQL ,NoSQL, NewSQL)
Modern databases and its challenges (SQL ,NoSQL, NewSQL)Mohamed Galal
 
مقدمة عن NoSQL بالعربي
مقدمة عن NoSQL بالعربيمقدمة عن NoSQL بالعربي
مقدمة عن NoSQL بالعربيMohamed Galal
 
Big_SQL_3.0_Whitepaper
Big_SQL_3.0_WhitepaperBig_SQL_3.0_Whitepaper
Big_SQL_3.0_WhitepaperScott Gray
 
Ingesting Over Four Million Rows Per Second With QuestDB Timeseries Database ...
Ingesting Over Four Million Rows Per Second With QuestDB Timeseries Database ...Ingesting Over Four Million Rows Per Second With QuestDB Timeseries Database ...
Ingesting Over Four Million Rows Per Second With QuestDB Timeseries Database ...javier ramirez
 
SPL_ALL_EN.pptx
SPL_ALL_EN.pptxSPL_ALL_EN.pptx
SPL_ALL_EN.pptx政宏 张
 
Hadoop Integration with Microstrategy
Hadoop Integration with Microstrategy Hadoop Integration with Microstrategy
Hadoop Integration with Microstrategy snehal parikh
 

Similar to Comparing sql and nosql dbs (20)

Big data concepts
Big data conceptsBig data concepts
Big data concepts
 
NOSQL
NOSQLNOSQL
NOSQL
 
Compare the capabilities of the Microsoft Access, Microsoft SQL Serv.pdf
Compare the capabilities of the Microsoft Access, Microsoft SQL Serv.pdfCompare the capabilities of the Microsoft Access, Microsoft SQL Serv.pdf
Compare the capabilities of the Microsoft Access, Microsoft SQL Serv.pdf
 
Erciyes university
Erciyes universityErciyes university
Erciyes university
 
Voldemort & Hadoop @ Linkedin, Hadoop User Group Jan 2010
Voldemort & Hadoop @ Linkedin, Hadoop User Group Jan 2010Voldemort & Hadoop @ Linkedin, Hadoop User Group Jan 2010
Voldemort & Hadoop @ Linkedin, Hadoop User Group Jan 2010
 
Hadoop and Voldemort @ LinkedIn
Hadoop and Voldemort @ LinkedInHadoop and Voldemort @ LinkedIn
Hadoop and Voldemort @ LinkedIn
 
DEE 431 Introduction to DBMS Slide 1
DEE 431 Introduction to DBMS Slide 1DEE 431 Introduction to DBMS Slide 1
DEE 431 Introduction to DBMS Slide 1
 
NoSQL Basics - a quick tour
NoSQL Basics - a quick tourNoSQL Basics - a quick tour
NoSQL Basics - a quick tour
 
Front Range PHP NoSQL Databases
Front Range PHP NoSQL DatabasesFront Range PHP NoSQL Databases
Front Range PHP NoSQL Databases
 
Database Systems Concepts, 5th Ed
Database Systems Concepts, 5th EdDatabase Systems Concepts, 5th Ed
Database Systems Concepts, 5th Ed
 
Data Handning with Sqlite for Android
Data Handning with Sqlite for AndroidData Handning with Sqlite for Android
Data Handning with Sqlite for Android
 
NoSQL Basics and MongDB
NoSQL Basics and  MongDBNoSQL Basics and  MongDB
NoSQL Basics and MongDB
 
Modern databases and its challenges (SQL ,NoSQL, NewSQL)
Modern databases and its challenges (SQL ,NoSQL, NewSQL)Modern databases and its challenges (SQL ,NoSQL, NewSQL)
Modern databases and its challenges (SQL ,NoSQL, NewSQL)
 
مقدمة عن NoSQL بالعربي
مقدمة عن NoSQL بالعربيمقدمة عن NoSQL بالعربي
مقدمة عن NoSQL بالعربي
 
Big_SQL_3.0_Whitepaper
Big_SQL_3.0_WhitepaperBig_SQL_3.0_Whitepaper
Big_SQL_3.0_Whitepaper
 
Ingesting Over Four Million Rows Per Second With QuestDB Timeseries Database ...
Ingesting Over Four Million Rows Per Second With QuestDB Timeseries Database ...Ingesting Over Four Million Rows Per Second With QuestDB Timeseries Database ...
Ingesting Over Four Million Rows Per Second With QuestDB Timeseries Database ...
 
NoSql Databases
NoSql DatabasesNoSql Databases
NoSql Databases
 
SPL_ALL_EN.pptx
SPL_ALL_EN.pptxSPL_ALL_EN.pptx
SPL_ALL_EN.pptx
 
Nosql seminar
Nosql seminarNosql seminar
Nosql seminar
 
Hadoop Integration with Microstrategy
Hadoop Integration with Microstrategy Hadoop Integration with Microstrategy
Hadoop Integration with Microstrategy
 

Recently uploaded

Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 

Recently uploaded (20)

Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 

Comparing sql and nosql dbs

  • 1. 1
  • 2. The following is a short, incomplete history of the SQL  1987 – Initial ISO/IEC Standard  1989 – Referential Integrity  1992 – SQL2  1995 SQL/CLI (ODBC)  1996 SQL/PSM – Procedural Language extensions  1999 – User Defined Types  2003 – SQL/XML  2008 – Expansions and corrections  2011 (or 2012) System Versioned and Application Time Period Tables 2
  • 3.  Data stored in columns and tables  Relationships represented by data  Data Manipulation Language  Data Definition Language  Transactions  Abstraction from physical layer 3
  • 4.  Applications specify what, not how  Query optimization engine  Physical layer can change without modifying applications  Create indexes to support queries  In Memory databases 4
  • 5.  Data manipulated with Select, Insert, Update, & Delete statements  Select T1.Column1, T2.Column2 … From Table1, Table2 … Where T1.Column1 = T2.Column1 …  Data Aggregation  Compound statements  Functions and Procedures  Explicit transaction control 5
  • 6.  Schema defined at the start  Create Table (Column1 Datatype1, Column2 Datatype 2, …)  Constraints to define and enforce relationships  Primary Key  Foreign Key  Etc.  Triggers to respond to Insert, Update , & Delete  Stored Modules  Alter …  Drop …  Security and Access Control 6
  • 7.  Atomic – All of the work in a transaction completes (commit) or none of it completes  Consistent – A transaction transforms the database from one consistent state to another consistent state. Consistency is defined in terms of constraints.  Isolated – The results of any changes made during a transaction are not visible until the transaction has committed.  Durable – The results of a committed transaction survive failures 7
  • 8.  Commercial  IBM DB2  Oracle RDMS  Microsoft SQL Server  Sybase SQL Anywhere  Open Source (with commercial options)  MySQL  Ingres Significant portions of the world’s economy use SQL databases! 8
  • 9. From www.nosql-database.org: Next Generation Databases mostly addressing some of the points: being non-relational, distributed, open-source and horizontal scalable. The original intention has been modern web-scale databases. The movement began early 2009 and is growing rapidly. Often more characteristics apply as: schema-free, easy replication support, simple API, eventually consistent / BASE (not ACID), a huge data amount, and more. 9
  • 10. http://www.nosql-database.org/ lists 122 NoSQL Databases  Cassandra  CouchDB  Hadoop & Hbase  MongoDB  StupidDB  Etc. 10
  • 11.  Large data volumes  Google’s “big data”  Scalable replication and distribution  Potentially thousands of machines  Potentially distributed around the world  Queries need to return answers quickly  Mostly query, few updates  Asynchronous Inserts & Updates  Schema-less  ACID transaction properties are not needed – BASE  CAP Theorem  Open source development 11
  • 12.  Acronym contrived to be the opposite of ACID  Basically Available,  Soft state,  Eventually Consistent  Characteristics  Weak consistency – stale data OK  Availability first  Best effort  Approximate answers OK  Aggressive (optimistic)  Simpler and faster 12
  • 13. A distributed system can support only two of the following characteristics:  Consistency  Availability  Partition tolerance The slides from Brewer’s July 2000 talk do not define these characteristics. 13
  • 14.  all nodes see the same data at the same time – Wikipedia  client perceives that a set of operations has occurred all at once – Pritchett  More like Atomic in ACID transaction properties 14
  • 15.  node failures do not prevent survivors from continuing to operate – Wikipedia  Every operation must terminate in an intended response – Pritchett 15
  • 16.  the system continues to operate despite arbitrary message loss – Wikipedia  Operations will complete, even if individual components are unavailable – Pritchett 16
  • 17. Discussing NoSQL databases is complicated because there are a variety of types:  Column Store – Each storage block contains data from only one column  Document Store – stores documents made up of tagged elements  Key-Value Store – Hash table of keys 17
  • 18.  XML Databases  Graph Databases  Codasyl Databases  Object Oriented Databases  Etc…  Will not address these today 18
  • 19.  Each storage block contains data from only one column  Example: Hadoop/Hbase  http://hadoop.apache.org/  Yahoo, Facebook  Example: Ingres VectorWise  Column Store integrated with an SQL database  http://www.ingres.com/products/vectorwise 19
  • 20.  More efficient than row (or document) store if:  Multiple row/record/documents are inserted at the same time so updates of column blocks can be aggregated  Retrievals access only some of the columns in a row/record/document 20
  • 21.  Example: CouchDB  http://couchdb.apache.org/  BBC  Example: MongoDB  http://www.mongodb.org/  Foursquare, Shutterfly  JSON – JavaScript Object Notation 21
  • 22. { "_id": "guid goes here", "_rev": "314159", "type": "abstract", "author": "Keith W. Hare" "title": "SQL Standard and NoSQL Databases", "body": "NoSQL databases (either no-SQL or Not Only SQL) are currently a hot topic in some parts of computing.", "creation_timestamp": "2011/05/10 13:30:00 +0004" } 22
  • 23.  "_id"  GUID – Global Unique Identifier  Passed in or generated by CouchDB  "_rev"  Revision number  Versioning mechanism  "type", "author", "title", etc.  Arbitrary tags  Schema-less  Could be validated after the fact by user-written routine 23
  • 24.  Hash tables of Keys  Values stored with Keys  Fast access to small data values  Example – Project-Voldemort  http://www.project-voldemort.com/  Linkedin  Example – MemCacheDB  http://memcachedb.org/  Backend storage is Berkeley-DB 24
  • 25.  Technique for indexing and searching large data volumes  Two Phases, Map and Reduce  Map  Extract sets of Key-Value pairs from underlying data  Potentially in Parallel on multiple machines  Reduce  Merge and sort sets of Key-Value pairs  Results may be useful for other searches 25
  • 26.  Map Reduce techniques differ across products  Implemented by application developers, not by underlying software 26
  • 27. Google granted US Patent 7,650,331, January 2010 System and method for efficient large-scale data processing A large-scale data processing system and method includes one or more application-independent map modules configured to read input data and to apply at least one application-specific map operation to the input data to produce intermediate data values, wherein the map operation is automatically parallelized across multiple processors in the parallel processing environment. A plurality of intermediate data structures are used to store the intermediate data values. One or more application-independent reduce modules are configured to retrieve the intermediate data values and to apply at least one application-specific reduce operation to the intermediate data values to provide output data. 27
  • 28.  Syntax varies  HTML  Java Script  Etc.  Asynchronous – Inserts and updates do not wait for confirmation  Versioned  Optimistic Concurrency 28
  • 29.  Syntax Varies  No set-based query language  Procedural program languages such as Java, C, etc.  Application specifies retrieval path  No query optimizer  Quick answer is important  May not be a single “right” answer 29
  • 30.  Small upfront software costs  Suitable for large scale distribution on commodity hardware 30
  • 31.  NoSQL databases reject:  Overhead of ACID transactions  “Complexity” of SQL  Burden of up-front schema design  Declarative query expression  Yesterday’s technology  Programmer responsible for  Step-by-step procedural language  Navigating access path 31
  • 32.  SQL Databases  Predefined Schema  Standard definition and interface language  Tight consistency  Well defined semantics  NoSQL Database  No predefined Schema  Per-product definition and interface language  Getting an answer quickly is more important than getting a correct answer 32