SlideShare a Scribd company logo
Overview of
NoSQL
...motivation, technologies, should you
care?
Overview
● Evolution of/motivation for NoSQL
  databases
● Characterization of NoSQL databases
● Classification of NoSQL databases
● Popularity/usage of NoSQL systems
A brief history of NoSQL
● Originally coined in 1998 by Strozzi for
  specific non-rel database
   ○ easy to use, free, text based data storage, easy
     manipulation of contents of db
● Reintroduced by Evans (Rackspace) in 2009
  for conf on open source distributed
  databases
   ○ in response to increase in interest in non RDBMS
     solutions
      ■ bringing together Cassandra, Mongo, Couch, etc
● Has grown as a movement over last 3 years
Current status
● Significant buzz within community in 2010
  ○ initial development of technology
  ○ pioneer deployments
  ○ lots of meetups/conferences/birds of feathers
● Many key technologies evolved later 2010,
  2011
  ○ more large deployments for some technologies
  ○ small companies with no legacy basing operations
    on NoSQL
Current Status
● 2012
  ○   buzz/hype is fading
  ○   technology continues to mature
  ○   increased number of deployments
  ○   skills sought in job market
NoSQL - a negative
definition
● NoSQL simply defined by being non-
  relational
  ○ diverse set of technologies fall into NoSQL camp
● Motivations mixed
  ○   open source
  ○   scale - TB, PB - particulary for read/write latency
  ○   increased flexibility over RDBMS systems
  ○   ability to work with raw data
  ○   ACID not always most appropriate design choice
       ■ analytics data is excellent example
● Results in many different NoSQL
  technologies
Typical characteristics
● Don't use SQL!
● Open Source
● Intended to deliver performance
  ○ in some dimension
● Typically JOIN not supported
  ○ performance hit
● Consistency often relaxed
  ○ eventual consistency
● More flexibility in schema
  ○ if schema used at all!
Diversity of NoSQL
databases
● 122 seperate technologies listed on http:
  //nosql-database.org/
  ○ mix of commercial, open source and some
    inbetween
● Vary in many dimensions:
  ○ architecture
  ○ interfaces
     ■ api/languages
  ○ internal data storage
  ○ distribution mechanisms
     ■ redundancy, reliability
  ○ usage - deployments & support community
  ○ maturity
Classification of NoSQL
systems
●   Column based solutions
●   Document store solutions
●   Key/Value solutions
●   Graph based solutions
●   Less significantly:
    ○ XML databases
    ○ Object databases
    ○ Mulitvalue databases
Column based solutions
● Structured data
  ○ similar to classical tables
● Generally much more flexible
  ○ no rigorous schema necessary
  ○ can typically add columns in ad hoc fashion
    ■ often without explicitly declaring column
● However, can result in very different usage
  ○ eg can have millions of columns associated with
    given row
● Examples: Hadoop/HBase, Cassandra,
  Hypertable, SimpleDB
Document based solutions
● Less structured data
  ○ DB composed of 'documents' containing arbitrary
    data
    ■ usually containing longer form content eg CMS
● Documents contain some structure to
  support query/search/filter, etc
● Somewhat less emphasis on a key
  ○ can be autogenerated
● Quite unlike classical databases
● Examples: MongoDB, CouchDB
Key/value stores
● DBs inspired by memcache
   ○ simple, fast key/value stores
● Attempt to retain most of DB in memory
   ○ fast response times
● Different designs for scalability
   ○ single node/multi node
● Much emphasis on the keys in this type of
  DB
● Write usually overwrites entire previous entry
● Examples: Redis, Couchbase/Membase,
  DynamoDB, Riak
Graph based solutions
● Obviously different from previous categories
  ○ Focus specifically on graphs
● Queries supported are graph-specific
  ○ eg get nodes related to specified node
● Typically support for solving standard graph
  problems
  ○ eg shortest path, general graph traversal
● Can deliver very significant performance
  over non-graph specific solutions
  ○ for graph problems!
● Examples: Neo4j
It's a noisy space...
● Very many candidate technologies
● Relatively small amount of real world
  solutions
● Differences between classifications above is
  one of emphasis...
   ○ column based and document based arrive at semi-
     structured sweet spot from opposite ends of
     spectrum
● ...although this results in different preferred
  use cases...
   ○ document based solution better for document
     problems, eg CMS
Common techniques used
● Hashing techniques used to map data to
  nodes in cluster
● Internode communication via Gossip
● Common replication techniques
● Thrift is used in a few cases
● MapReduce often used to search over
  distributed system
Comparison (oldish)...
Comparison (oldish)
Comparison (oldish)
Horses for courses...
● SQL is perfectly good solution for many
  problems
  ○ tried and tested
● Some problems require alternative solution
  ○ typically driven by scale and/or flexibility
● NoSQL offers (many) alternatives
  ○ although relatively easy to identify realistic options
● Column based approaches good for mostly
  structured data with enhanced flexibility
● Document based approaches good for
  document oriented problems
...so let's dive into one
NoSQL database...
● Cassandra...

More Related Content

What's hot (20)

PPTX
NoSQL databases - An introduction
Pooyan Mehrparvar
 
PDF
HPTS 2011: The NoSQL Ecosystem
Adam Marcus
 
PDF
Nosql databases for the .net developer
Jesus Rodriguez
 
PPTX
No sql
Viyaan Jhiingade
 
PPTX
An Intro to NoSQL Databases
Rajith Pemabandu
 
PPTX
The Hive Think Tank: Rocking the Database World with RocksDB
The Hive
 
PPTX
NoSql
Girish Khanzode
 
PPTX
Comparative study of modern databases
Anirban Konar
 
PDF
NoSQL
Radu Potop
 
PPT
NoSQL Seminer
Partha Das
 
PPTX
NoSQL
Radu Vunvulea
 
PPT
First steps to Azure Cosmos DB: Getting Started with MongoDB and NoSQL
Hansamali Gamage
 
PPTX
Four NoSQL Databases You Should Know
Mahmoud Khaled
 
PPSX
A Seminar on NoSQL Databases.
Navdeep Charan
 
PPTX
MongoDB
Muhammad zubair
 
PPT
No SQL - A Simple Intro
Karthi Keyan
 
PPTX
Big data stores
Kumaran Ramanujam
 
PDF
NoSQL
Tomas Bosak
 
PPTX
Introduction to NoSQL
balwinders
 
PPTX
NoSQL and MongoDB
Rajesh Menon
 
NoSQL databases - An introduction
Pooyan Mehrparvar
 
HPTS 2011: The NoSQL Ecosystem
Adam Marcus
 
Nosql databases for the .net developer
Jesus Rodriguez
 
An Intro to NoSQL Databases
Rajith Pemabandu
 
The Hive Think Tank: Rocking the Database World with RocksDB
The Hive
 
Comparative study of modern databases
Anirban Konar
 
NoSQL
Radu Potop
 
NoSQL Seminer
Partha Das
 
First steps to Azure Cosmos DB: Getting Started with MongoDB and NoSQL
Hansamali Gamage
 
Four NoSQL Databases You Should Know
Mahmoud Khaled
 
A Seminar on NoSQL Databases.
Navdeep Charan
 
No SQL - A Simple Intro
Karthi Keyan
 
Big data stores
Kumaran Ramanujam
 
Introduction to NoSQL
balwinders
 
NoSQL and MongoDB
Rajesh Menon
 

Similar to Overview of no sql (20)

PPTX
Non relational databases-no sql
Ram kumar
 
PPTX
Selecting best NoSQL
Mohammed Fazuluddin
 
PPTX
Sql vs NoSQL
RTigger
 
PPT
NoSql Databases
Nimat Khattak
 
PPTX
Nosql seminar
Shreyashkumar Nangnurwar
 
PDF
The NoSQL Ecosystem
yarapavan
 
PDF
NoSQL Databases Introduction - UTN 2013
Facundo Farias
 
PDF
SLQ vs NOSQL - friends or foes
Miguel Araújo
 
PPT
No sql databases explained
Salil Mehendale
 
PPTX
No SQL- The Future Of Data Storage
Bethmi Gunasekara
 
PPTX
UNIT-2.pptx
SIVAKUMARM603675
 
PPTX
No sq lv2
Nusrat Sharmin
 
PPTX
NoSql - mayank singh
Mayank Singh
 
PDF
Is NoSQL The Future of Data Storage?
Saltmarch Media
 
PDF
NOsql Presentation.pdf
AkshayDwivedi31
 
PPTX
Introduction to Data Science NoSQL.pptx
tarakesh7199
 
PPTX
NOSQL
akbarashaikh
 
PPTX
Introduction to NoSQL database technology
nicolausalex722
 
PDF
NoSql and it's introduction features-Unit-1.pdf
ajajkhan16
 
KEY
SLQ vs NOSQL - friends or foes
Pedro Gomes
 
Non relational databases-no sql
Ram kumar
 
Selecting best NoSQL
Mohammed Fazuluddin
 
Sql vs NoSQL
RTigger
 
NoSql Databases
Nimat Khattak
 
The NoSQL Ecosystem
yarapavan
 
NoSQL Databases Introduction - UTN 2013
Facundo Farias
 
SLQ vs NOSQL - friends or foes
Miguel Araújo
 
No sql databases explained
Salil Mehendale
 
No SQL- The Future Of Data Storage
Bethmi Gunasekara
 
UNIT-2.pptx
SIVAKUMARM603675
 
No sq lv2
Nusrat Sharmin
 
NoSql - mayank singh
Mayank Singh
 
Is NoSQL The Future of Data Storage?
Saltmarch Media
 
NOsql Presentation.pdf
AkshayDwivedi31
 
Introduction to Data Science NoSQL.pptx
tarakesh7199
 
Introduction to NoSQL database technology
nicolausalex722
 
NoSql and it's introduction features-Unit-1.pdf
ajajkhan16
 
SLQ vs NOSQL - friends or foes
Pedro Gomes
 
Ad

More from Sean Murphy (8)

PDF
Hadoop pig
Sean Murphy
 
PDF
Demonstration
Sean Murphy
 
PDF
Cassandra overview
Sean Murphy
 
PDF
No sql course introduction
Sean Murphy
 
PDF
Rss talk
Sean Murphy
 
PPTX
Rss announcements
Sean Murphy
 
PPTX
Rocco pres-v1
Sean Murphy
 
PPTX
UCD Android Workshop
Sean Murphy
 
Hadoop pig
Sean Murphy
 
Demonstration
Sean Murphy
 
Cassandra overview
Sean Murphy
 
No sql course introduction
Sean Murphy
 
Rss talk
Sean Murphy
 
Rss announcements
Sean Murphy
 
Rocco pres-v1
Sean Murphy
 
UCD Android Workshop
Sean Murphy
 
Ad

Recently uploaded (20)

PDF
Transforming Utility Networks: Large-scale Data Migrations with FME
Safe Software
 
PPTX
WooCommerce Workshop: Bring Your Laptop
Laura Hartwig
 
PDF
Mastering Financial Management in Direct Selling
Epixel MLM Software
 
PDF
"AI Transformation: Directions and Challenges", Pavlo Shaternik
Fwdays
 
PDF
Reverse Engineering of Security Products: Developing an Advanced Microsoft De...
nwbxhhcyjv
 
PDF
New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
PPTX
The Project Compass - GDG on Campus MSIT
dscmsitkol
 
PDF
Achieving Consistent and Reliable AI Code Generation - Medusa AI
medusaaico
 
PDF
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
PDF
IoT-Powered Industrial Transformation – Smart Manufacturing to Connected Heal...
Rejig Digital
 
PDF
What Makes Contify’s News API Stand Out: Key Features at a Glance
Contify
 
PDF
Agentic AI lifecycle for Enterprise Hyper-Automation
Debmalya Biswas
 
PPTX
Designing Production-Ready AI Agents
Kunal Rai
 
PPTX
"Autonomy of LLM Agents: Current State and Future Prospects", Oles` Petriv
Fwdays
 
PDF
Biography of Daniel Podor.pdf
Daniel Podor
 
PDF
CIFDAQ Token Spotlight for 9th July 2025
CIFDAQ
 
PDF
Go Concurrency Real-World Patterns, Pitfalls, and Playground Battles.pdf
Emily Achieng
 
PDF
Jak MŚP w Europie Środkowo-Wschodniej odnajdują się w świecie AI
dominikamizerska1
 
PDF
Transcript: New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
PDF
LOOPS in C Programming Language - Technology
RishabhDwivedi43
 
Transforming Utility Networks: Large-scale Data Migrations with FME
Safe Software
 
WooCommerce Workshop: Bring Your Laptop
Laura Hartwig
 
Mastering Financial Management in Direct Selling
Epixel MLM Software
 
"AI Transformation: Directions and Challenges", Pavlo Shaternik
Fwdays
 
Reverse Engineering of Security Products: Developing an Advanced Microsoft De...
nwbxhhcyjv
 
New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
The Project Compass - GDG on Campus MSIT
dscmsitkol
 
Achieving Consistent and Reliable AI Code Generation - Medusa AI
medusaaico
 
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
IoT-Powered Industrial Transformation – Smart Manufacturing to Connected Heal...
Rejig Digital
 
What Makes Contify’s News API Stand Out: Key Features at a Glance
Contify
 
Agentic AI lifecycle for Enterprise Hyper-Automation
Debmalya Biswas
 
Designing Production-Ready AI Agents
Kunal Rai
 
"Autonomy of LLM Agents: Current State and Future Prospects", Oles` Petriv
Fwdays
 
Biography of Daniel Podor.pdf
Daniel Podor
 
CIFDAQ Token Spotlight for 9th July 2025
CIFDAQ
 
Go Concurrency Real-World Patterns, Pitfalls, and Playground Battles.pdf
Emily Achieng
 
Jak MŚP w Europie Środkowo-Wschodniej odnajdują się w świecie AI
dominikamizerska1
 
Transcript: New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
LOOPS in C Programming Language - Technology
RishabhDwivedi43
 

Overview of no sql

  • 2. Overview ● Evolution of/motivation for NoSQL databases ● Characterization of NoSQL databases ● Classification of NoSQL databases ● Popularity/usage of NoSQL systems
  • 3. A brief history of NoSQL ● Originally coined in 1998 by Strozzi for specific non-rel database ○ easy to use, free, text based data storage, easy manipulation of contents of db ● Reintroduced by Evans (Rackspace) in 2009 for conf on open source distributed databases ○ in response to increase in interest in non RDBMS solutions ■ bringing together Cassandra, Mongo, Couch, etc ● Has grown as a movement over last 3 years
  • 4. Current status ● Significant buzz within community in 2010 ○ initial development of technology ○ pioneer deployments ○ lots of meetups/conferences/birds of feathers ● Many key technologies evolved later 2010, 2011 ○ more large deployments for some technologies ○ small companies with no legacy basing operations on NoSQL
  • 5. Current Status ● 2012 ○ buzz/hype is fading ○ technology continues to mature ○ increased number of deployments ○ skills sought in job market
  • 6. NoSQL - a negative definition ● NoSQL simply defined by being non- relational ○ diverse set of technologies fall into NoSQL camp ● Motivations mixed ○ open source ○ scale - TB, PB - particulary for read/write latency ○ increased flexibility over RDBMS systems ○ ability to work with raw data ○ ACID not always most appropriate design choice ■ analytics data is excellent example ● Results in many different NoSQL technologies
  • 7. Typical characteristics ● Don't use SQL! ● Open Source ● Intended to deliver performance ○ in some dimension ● Typically JOIN not supported ○ performance hit ● Consistency often relaxed ○ eventual consistency ● More flexibility in schema ○ if schema used at all!
  • 8. Diversity of NoSQL databases ● 122 seperate technologies listed on http: //nosql-database.org/ ○ mix of commercial, open source and some inbetween ● Vary in many dimensions: ○ architecture ○ interfaces ■ api/languages ○ internal data storage ○ distribution mechanisms ■ redundancy, reliability ○ usage - deployments & support community ○ maturity
  • 9. Classification of NoSQL systems ● Column based solutions ● Document store solutions ● Key/Value solutions ● Graph based solutions ● Less significantly: ○ XML databases ○ Object databases ○ Mulitvalue databases
  • 10. Column based solutions ● Structured data ○ similar to classical tables ● Generally much more flexible ○ no rigorous schema necessary ○ can typically add columns in ad hoc fashion ■ often without explicitly declaring column ● However, can result in very different usage ○ eg can have millions of columns associated with given row ● Examples: Hadoop/HBase, Cassandra, Hypertable, SimpleDB
  • 11. Document based solutions ● Less structured data ○ DB composed of 'documents' containing arbitrary data ■ usually containing longer form content eg CMS ● Documents contain some structure to support query/search/filter, etc ● Somewhat less emphasis on a key ○ can be autogenerated ● Quite unlike classical databases ● Examples: MongoDB, CouchDB
  • 12. Key/value stores ● DBs inspired by memcache ○ simple, fast key/value stores ● Attempt to retain most of DB in memory ○ fast response times ● Different designs for scalability ○ single node/multi node ● Much emphasis on the keys in this type of DB ● Write usually overwrites entire previous entry ● Examples: Redis, Couchbase/Membase, DynamoDB, Riak
  • 13. Graph based solutions ● Obviously different from previous categories ○ Focus specifically on graphs ● Queries supported are graph-specific ○ eg get nodes related to specified node ● Typically support for solving standard graph problems ○ eg shortest path, general graph traversal ● Can deliver very significant performance over non-graph specific solutions ○ for graph problems! ● Examples: Neo4j
  • 14. It's a noisy space... ● Very many candidate technologies ● Relatively small amount of real world solutions ● Differences between classifications above is one of emphasis... ○ column based and document based arrive at semi- structured sweet spot from opposite ends of spectrum ● ...although this results in different preferred use cases... ○ document based solution better for document problems, eg CMS
  • 15. Common techniques used ● Hashing techniques used to map data to nodes in cluster ● Internode communication via Gossip ● Common replication techniques ● Thrift is used in a few cases ● MapReduce often used to search over distributed system
  • 19. Horses for courses... ● SQL is perfectly good solution for many problems ○ tried and tested ● Some problems require alternative solution ○ typically driven by scale and/or flexibility ● NoSQL offers (many) alternatives ○ although relatively easy to identify realistic options ● Column based approaches good for mostly structured data with enhanced flexibility ● Document based approaches good for document oriented problems
  • 20. ...so let's dive into one NoSQL database... ● Cassandra...