SlideShare a Scribd company logo
NoSQL vs SQL
Who am I?
Beseda Dmitriy
Web developer at Binary Studio
email: BesedaDG@gmail.com
email: dmitriy.beseda@binary-studio.com
skype: dmitriy.b_binary
facebook:
https://www.facebook.com/profile.php?id=1000017844
45579
Plan
1. Data nowadays
2. SQL advantages / disadvantages
3. NoSQL advantages / disadvantages
4. NoSQL history
5. SQL and NoSQL similarities and differences
6. ORM / ODM
7. Myths
8. Conclusions
Problem
Main “Bottleneck”
Data evolution
- Data and web apps are growing rapidly day by day
- Hardware cannot keep pace with data growth
- Apps are moving to Cloud and becoming API driven
Conclusion: It is hard to scale data in a traditional way
Data in business
Business is successful if data are used properly
- Statistic, reports
- Real-time
- Recommendations
Conclusion:
- Web apps should be real-time and interactive
- User and services databases grow from tera to peta bytes each day
Pay attention
● CRUD (Create Read Update Delete) operations
- Performance
- Reliability
● Data consistency (ACID) & Distributed network
- Parallel immediate access
- Updates applying time to all users
● Loading
- Data replication
Advantages:
● No duplications
● Data integrity
● Transactions
● Actions sequence
● Security
● Data consistency
SQL
Disadvantages:
● Performance
● Work in distributed environment
(locks)
● Horizontal scaling complexity
● Additional language to manipulate
with data
● Scaling and Sharding
SQL Products and customers
December, 2015
NoSQL
Advantages:
● Performance (aggregation)
● Schemaless (easy to add / remove
properties)
● Horizontal scaling (& sharding)
● Way of using memory
● Open source
Disadvantages:
● Absence of transactions
● Embedding limitations
● Lots of manual work (joins are
absent)
● Model format is not guaranteed
NoSQL products and customers
NoSQL history
In 1998 Carlo Strozzi implemented an open source DB, that
stored ASCII files and used shell scripts for data manipulations
In June 2009 Eric Evans proposed NoSQL as a Twitter #tag for a
conference for existing distributed databases
- Consistency - “Is the data I am looking at now the same if I look at it somewhere
else”
- Availability - “What will happen if my database goes down?”
- Partitioning - “What if my data is on a different node?”
SQL - CA
NoSQL - AP
CAP theorem (Consistency, Availability and Partition-tolerance)
SQL and NoSQL similarities
● Primary key or Id is necessary and unique
● Indexes help to increase performance
● Relationships exist
Goals of normalization
- Free the database of modification anomalies (references)
- Minimize redesign
- Avoid any bias toward any particular access pattern
SQL schema example
Schema design
- Rich documents
- Pre join / embed Data
- No more joins
- No constraints
- Atomic operations
- No declared schema
NoSQL types
● Key Value (Firebase, Dynamo, Redis ...)
● Document (MongoDB, CouchDB)
● Graph (InfoGrid, Neo4J ...)
● Column Family (Cassandra, HyperTable, BigTable)
Data store positioning
SQL Comfort zone
Key Value
Column
Document
Graph
Relational
Standardized Model, Tooling, Complexity
Scalability
JSON
- Array
var array = [ 1, 2, 3, 4, 5]
- Dictionaries
var doc =
{
"prop1": "some string",
"prop2": { a: 2, b: 3},
"prop3": array
}
NoSQL document example
{
"_id": ObjectId,
"description": String,
"total": Number,
"notes": [{
"_id": ObjectId,
"text": String
}],
"exclusions": [{
"_id": ObjectId,
"text": String
}],
"categories": {
"ref1": {
"name": String,
"status": String,
"price": Number
},
"ref2": {
"name": String,
"status": String,
"price": Number
}
}
}
ORM and ODM
ORM:
● Entity Framework (.NET)
● Nhibernate (.NET)
● Hibernate (Java)
● Django (Python)
● Sequelize (JS)
ODM:
● Mongoose (Mongo)
Myths
- NoSQL supersedes SQL
- NoSQL is better / worse than SQL
- SQL vs NoSQL is a clear distinction
- The language/framework determines the database
Use SQL if:
● Data integrity is essential
● Standards-based proven technologies with good developer experience and
support
● Logical related discrete data requirements which can be identified up-front
● Prefer SQL
Use NoSQL if:
● Data requirements are unrelated, indeterminate or evolving
● Project objectives are simpler of less specific and allow starting to code
immediately
● Speed and scalability is imperative
● Prefer NoSQL
Always remember
● Если бы мы действительно ждали завершения каждой транзакции в мировой сети ATM (банкоматов),
транзакции занимали бы столько времени, что клиенты убегали бы прочь в ярости. Что происходит, если ты и
твой партнер снимаете деньги одновременно и превышаете лимит? — Вы оба получите деньги, а мы поправим
это позже.
● Мы вступаем в эру polyglot persistence — эру, когда для различных потребностей используются разные
хранилища данных. Теперь нет монополизма реляционных баз данных, как безальтернативного источника
данных. Все чаще архитекторы выбирают хранилище исходя из природы самих данных и того, как мы ими
хотим манипулировать, какие объемы информации ожидаются. И поэтому все становится только интереснее.
● A well-designed SQL database will almost certainly perform better than a badly designed NoSQL equivalent and vice
versa.
NoSQL vs SQL (by Dmitriy Beseda, JS developer and coach Binary Studio Academy)
Summary
SQL - works great, isn’t scalable for large data
😞
NoSQL - works great, isn’t suitable for everyone
😞
SQL + NoSQL 😊
References
1. SQL vs NoSQL: The Differences
2. MongoDB university
Questions?

More Related Content

PPT
SQL vs NoSQL
PPTX
iForum 2015: SQL vs. NoSQL
PPTX
Sql vs nosql
PPTX
Sql vs. NoSql
PDF
SQL vs. NoSQL
PDF
SQL vs NoSQL: Big Data Adoption & Success in the Enterprise
PPTX
SQL vs. NoSQL. It's always a hard choice.
DOCX
Sql vs NO-SQL database differences explained
SQL vs NoSQL
iForum 2015: SQL vs. NoSQL
Sql vs nosql
Sql vs. NoSql
SQL vs. NoSQL
SQL vs NoSQL: Big Data Adoption & Success in the Enterprise
SQL vs. NoSQL. It's always a hard choice.
Sql vs NO-SQL database differences explained

What's hot (20)

PPS
PPT
SQL or NoSQL, that is the question!
PPTX
What is NoSQL and CAP Theorem
PPTX
MinneBar 2013 - Scaling with Cassandra
PPT
SQL/NoSQL How to choose ?
PPT
RDBMS vs NoSQL
PDF
SQL or NoSQL, is this the question? - George Grammatikos
PDF
No sql databases
PPTX
Data Modeling for NoSQL
PPTX
Selecting best NoSQL
PPTX
NoSQL Architecture Overview
PPTX
NoSql Data Management
PPTX
Introduction to NuoDB
PPTX
Why no sql ? Why Couchbase ?
PPT
PDF
My sql vs mongo
PPTX
Choosing The Right Database For Your Cloud Application
PPTX
NoSQL Data Architecture Patterns
PDF
The Future of Distributed Databases
PDF
MongoDB and DynamoDB
SQL or NoSQL, that is the question!
What is NoSQL and CAP Theorem
MinneBar 2013 - Scaling with Cassandra
SQL/NoSQL How to choose ?
RDBMS vs NoSQL
SQL or NoSQL, is this the question? - George Grammatikos
No sql databases
Data Modeling for NoSQL
Selecting best NoSQL
NoSQL Architecture Overview
NoSql Data Management
Introduction to NuoDB
Why no sql ? Why Couchbase ?
My sql vs mongo
Choosing The Right Database For Your Cloud Application
NoSQL Data Architecture Patterns
The Future of Distributed Databases
MongoDB and DynamoDB
Ad

Similar to NoSQL vs SQL (by Dmitriy Beseda, JS developer and coach Binary Studio Academy) (20)

PPTX
NoSQLDatabases
PPTX
NoSQL Basics and MongDB
PDF
NoSQL for great good [hanoi.rb talk]
PPTX
Evolution of the DBA to Data Platform Administrator/Specialist
PPTX
Erciyes university
PPTX
مقدمة عن NoSQL بالعربي
PPT
SQL, NoSQL, BigData in Data Architecture
PPTX
Introduction to NoSQL
PDF
Business Intelligence & NoSQL Databases
PDF
Accelerating SQL to NoSQL Migration WP - LTIMindtree
PPT
NoSQL Seminer
PDF
No sql bigdata and postgresql
PPTX
Introduction to NoSQL and MongoDB
PPTX
NOSQL IN BIGDATA FOR PG STUDENTS FOR COL
PPTX
Introduction to NoSQL database technology
PDF
A beginners guide to Cloudera Hadoop
PPTX
No sql database
PPTX
Modern databases and its challenges (SQL ,NoSQL, NewSQL)
PPTX
Datastore PPT.pptx
PPTX
NoSQLDatabases
NoSQL Basics and MongDB
NoSQL for great good [hanoi.rb talk]
Evolution of the DBA to Data Platform Administrator/Specialist
Erciyes university
مقدمة عن NoSQL بالعربي
SQL, NoSQL, BigData in Data Architecture
Introduction to NoSQL
Business Intelligence & NoSQL Databases
Accelerating SQL to NoSQL Migration WP - LTIMindtree
NoSQL Seminer
No sql bigdata and postgresql
Introduction to NoSQL and MongoDB
NOSQL IN BIGDATA FOR PG STUDENTS FOR COL
Introduction to NoSQL database technology
A beginners guide to Cloudera Hadoop
No sql database
Modern databases and its challenges (SQL ,NoSQL, NewSQL)
Datastore PPT.pptx
Ad

More from Binary Studio (20)

PPTX
Academy PRO: D3, part 3
PPTX
Academy PRO: D3, part 1
PPTX
Academy PRO: Cryptography 3
PPTX
Academy PRO: Cryptography 1
PPTX
Academy PRO: Advanced React Ecosystem. MobX
PPTX
Academy PRO: Docker. Part 4
PPTX
Academy PRO: Docker. Part 2
PPTX
Academy PRO: Docker. Part 1
PPTX
Binary Studio Academy 2017: JS team project - Orderly
PPTX
Binary Studio Academy 2017: .NET team project - Unicorn
PPTX
Academy PRO: React native - miscellaneous
PPTX
Academy PRO: React native - publish
PPTX
Academy PRO: React native - navigation
PPTX
Academy PRO: React native - building first scenes
PPTX
Academy PRO: React Native - introduction
PPTX
Academy PRO: Push notifications. Denis Beketsky
PPTX
Academy PRO: Docker. Lecture 4
PPTX
Academy PRO: Docker. Lecture 3
PPTX
Academy PRO: Docker. Lecture 2
PPTX
Academy PRO: Docker. Lecture 1
Academy PRO: D3, part 3
Academy PRO: D3, part 1
Academy PRO: Cryptography 3
Academy PRO: Cryptography 1
Academy PRO: Advanced React Ecosystem. MobX
Academy PRO: Docker. Part 4
Academy PRO: Docker. Part 2
Academy PRO: Docker. Part 1
Binary Studio Academy 2017: JS team project - Orderly
Binary Studio Academy 2017: .NET team project - Unicorn
Academy PRO: React native - miscellaneous
Academy PRO: React native - publish
Academy PRO: React native - navigation
Academy PRO: React native - building first scenes
Academy PRO: React Native - introduction
Academy PRO: Push notifications. Denis Beketsky
Academy PRO: Docker. Lecture 4
Academy PRO: Docker. Lecture 3
Academy PRO: Docker. Lecture 2
Academy PRO: Docker. Lecture 1

Recently uploaded (20)

PDF
PTS Company Brochure 2025 (1).pdf.......
PPTX
Computer Software and OS of computer science of grade 11.pptx
PPTX
ai tools demonstartion for schools and inter college
PDF
Digital Strategies for Manufacturing Companies
PDF
Designing Intelligence for the Shop Floor.pdf
PDF
Design an Analysis of Algorithms II-SECS-1021-03
PDF
System and Network Administraation Chapter 3
PDF
System and Network Administration Chapter 2
PDF
2025 Textile ERP Trends: SAP, Odoo & Oracle
PDF
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
PDF
How to Migrate SBCGlobal Email to Yahoo Easily
PDF
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
PDF
How to Choose the Right IT Partner for Your Business in Malaysia
PPTX
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
PDF
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
PDF
Digital Systems & Binary Numbers (comprehensive )
PPTX
L1 - Introduction to python Backend.pptx
PPTX
VVF-Customer-Presentation2025-Ver1.9.pptx
PDF
top salesforce developer skills in 2025.pdf
PPTX
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
PTS Company Brochure 2025 (1).pdf.......
Computer Software and OS of computer science of grade 11.pptx
ai tools demonstartion for schools and inter college
Digital Strategies for Manufacturing Companies
Designing Intelligence for the Shop Floor.pdf
Design an Analysis of Algorithms II-SECS-1021-03
System and Network Administraation Chapter 3
System and Network Administration Chapter 2
2025 Textile ERP Trends: SAP, Odoo & Oracle
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
How to Migrate SBCGlobal Email to Yahoo Easily
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
How to Choose the Right IT Partner for Your Business in Malaysia
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
Digital Systems & Binary Numbers (comprehensive )
L1 - Introduction to python Backend.pptx
VVF-Customer-Presentation2025-Ver1.9.pptx
top salesforce developer skills in 2025.pdf
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises

NoSQL vs SQL (by Dmitriy Beseda, JS developer and coach Binary Studio Academy)

  • 2. Who am I? Beseda Dmitriy Web developer at Binary Studio email: BesedaDG@gmail.com email: dmitriy.beseda@binary-studio.com skype: dmitriy.b_binary facebook: https://www.facebook.com/profile.php?id=1000017844 45579
  • 3. Plan 1. Data nowadays 2. SQL advantages / disadvantages 3. NoSQL advantages / disadvantages 4. NoSQL history 5. SQL and NoSQL similarities and differences 6. ORM / ODM 7. Myths 8. Conclusions
  • 5. Data evolution - Data and web apps are growing rapidly day by day - Hardware cannot keep pace with data growth - Apps are moving to Cloud and becoming API driven Conclusion: It is hard to scale data in a traditional way
  • 6. Data in business Business is successful if data are used properly - Statistic, reports - Real-time - Recommendations Conclusion: - Web apps should be real-time and interactive - User and services databases grow from tera to peta bytes each day
  • 7. Pay attention ● CRUD (Create Read Update Delete) operations - Performance - Reliability ● Data consistency (ACID) & Distributed network - Parallel immediate access - Updates applying time to all users ● Loading - Data replication
  • 8. Advantages: ● No duplications ● Data integrity ● Transactions ● Actions sequence ● Security ● Data consistency SQL Disadvantages: ● Performance ● Work in distributed environment (locks) ● Horizontal scaling complexity ● Additional language to manipulate with data ● Scaling and Sharding
  • 9. SQL Products and customers December, 2015
  • 10. NoSQL Advantages: ● Performance (aggregation) ● Schemaless (easy to add / remove properties) ● Horizontal scaling (& sharding) ● Way of using memory ● Open source Disadvantages: ● Absence of transactions ● Embedding limitations ● Lots of manual work (joins are absent) ● Model format is not guaranteed
  • 11. NoSQL products and customers
  • 12. NoSQL history In 1998 Carlo Strozzi implemented an open source DB, that stored ASCII files and used shell scripts for data manipulations In June 2009 Eric Evans proposed NoSQL as a Twitter #tag for a conference for existing distributed databases
  • 13. - Consistency - “Is the data I am looking at now the same if I look at it somewhere else” - Availability - “What will happen if my database goes down?” - Partitioning - “What if my data is on a different node?” SQL - CA NoSQL - AP CAP theorem (Consistency, Availability and Partition-tolerance)
  • 14. SQL and NoSQL similarities ● Primary key or Id is necessary and unique ● Indexes help to increase performance ● Relationships exist
  • 15. Goals of normalization - Free the database of modification anomalies (references) - Minimize redesign - Avoid any bias toward any particular access pattern
  • 17. Schema design - Rich documents - Pre join / embed Data - No more joins - No constraints - Atomic operations - No declared schema
  • 18. NoSQL types ● Key Value (Firebase, Dynamo, Redis ...) ● Document (MongoDB, CouchDB) ● Graph (InfoGrid, Neo4J ...) ● Column Family (Cassandra, HyperTable, BigTable)
  • 19. Data store positioning SQL Comfort zone Key Value Column Document Graph Relational Standardized Model, Tooling, Complexity Scalability
  • 20. JSON - Array var array = [ 1, 2, 3, 4, 5] - Dictionaries var doc = { "prop1": "some string", "prop2": { a: 2, b: 3}, "prop3": array }
  • 21. NoSQL document example { "_id": ObjectId, "description": String, "total": Number, "notes": [{ "_id": ObjectId, "text": String }], "exclusions": [{ "_id": ObjectId, "text": String }], "categories": { "ref1": { "name": String, "status": String, "price": Number }, "ref2": { "name": String, "status": String, "price": Number } } }
  • 22. ORM and ODM ORM: ● Entity Framework (.NET) ● Nhibernate (.NET) ● Hibernate (Java) ● Django (Python) ● Sequelize (JS) ODM: ● Mongoose (Mongo)
  • 23. Myths - NoSQL supersedes SQL - NoSQL is better / worse than SQL - SQL vs NoSQL is a clear distinction - The language/framework determines the database
  • 24. Use SQL if: ● Data integrity is essential ● Standards-based proven technologies with good developer experience and support ● Logical related discrete data requirements which can be identified up-front ● Prefer SQL
  • 25. Use NoSQL if: ● Data requirements are unrelated, indeterminate or evolving ● Project objectives are simpler of less specific and allow starting to code immediately ● Speed and scalability is imperative ● Prefer NoSQL
  • 26. Always remember ● Если бы мы действительно ждали завершения каждой транзакции в мировой сети ATM (банкоматов), транзакции занимали бы столько времени, что клиенты убегали бы прочь в ярости. Что происходит, если ты и твой партнер снимаете деньги одновременно и превышаете лимит? — Вы оба получите деньги, а мы поправим это позже. ● Мы вступаем в эру polyglot persistence — эру, когда для различных потребностей используются разные хранилища данных. Теперь нет монополизма реляционных баз данных, как безальтернативного источника данных. Все чаще архитекторы выбирают хранилище исходя из природы самих данных и того, как мы ими хотим манипулировать, какие объемы информации ожидаются. И поэтому все становится только интереснее. ● A well-designed SQL database will almost certainly perform better than a badly designed NoSQL equivalent and vice versa.
  • 28. Summary SQL - works great, isn’t scalable for large data 😞 NoSQL - works great, isn’t suitable for everyone 😞 SQL + NoSQL 😊
  • 29. References 1. SQL vs NoSQL: The Differences 2. MongoDB university

Editor's Notes

  • #6: Рассказать про проект Андрюхи и его прикол с MS SQL DB
  • #9: главный лейтмотив развития NoSQL баз. С лавинообразным ростом информации в мире и необходимости ее обрабатывать за разумное время встала проблема вертикальной масштабируемости — рост скорости процессора остановился на 3.5 Ггц, скорость чтения с диска также растет тихими темпами, плюс цена мощного сервера всегда больше суммарной цены нескольких простых серверов.
  • #11: Главный лейтмотив развития NoSQL баз. С лавинообразным ростом информации в мире и необходимости ее обрабатывать за разумное время встала проблема вертикальной масштабируемости — рост скорости процессора остановился на 3.5 Ггц, скорость чтения с диска также растет тихими темпами, плюс цена мощного сервера всегда больше суммарной цены нескольких простых серверов.
  • #12: Facebook uses primary mysql and cassandra for search
  • #18: Rich documents - can contain Numbers, Strings, Another documents and arrays No constraint - foreign keys, etc
  • #24: NoSQL is not a replacement for SQL — it’s an alternative It depends on project Some SQL databases are adopting NoSQL features and vice versa LAMP: Linux, Apache, MySQL (SQL), PHP MEAN: MongoDB (NoSQL), Express, Angular, Node.js .NET, IIS and SQL Server Java, Apache and Oracle.