SlideShare a Scribd company logo
1 of 61
NOSQL + NODE.JS
   NODE.PGH - 0.7 MEETUP
NICHOLAS MCCLAY
UX DESIGNER & DEVELOPER




   @nickmcclay
THANKS TO PETER BELL
WHAT IS NOSQL?
WHAT IS SQL?
CONSISTENCY VS. AVAILABILITY
CHOICES
TYPES OF NOSQL
HOW TO MODEL THE DOMAIN?
HOW TO MODEL THE DOMAIN?



        where does this piece of data belong?
HOW TO MODEL THE DOMAIN?



        where does this piece of data belong?



              How do I find/change it?
KEY/VALUE NOSQL
KEY/VALUE DATA
KEY/VALUE USE CASES
KEY/VALUE USE CASES


 FOCUS : SCALE AND LOAD
KEY/VALUE USE CASES


     FOCUS : SCALE AND LOAD

HIGH AVAILABILITY/LOW DURABILITY
KEY/VALUE USE CASES


     FOCUS : SCALE AND LOAD

HIGH AVAILABILITY/LOW DURABILITY
    REALTIME TRANSACTIONS
KEY/VALUE USE CASES


     FOCUS : SCALE AND LOAD

HIGH AVAILABILITY/LOW DURABILITY
    REALTIME TRANSACTIONS
    USER SESSION STORAGE
KEY/VALUE USE CASES


     FOCUS : SCALE AND LOAD

HIGH AVAILABILITY/LOW DURABILITY
    REALTIME TRANSACTIONS
    USER SESSION STORAGE

    NO TO LOW SCHEMA DATA
NODE-REDIS
HTTPS://GITHUB.COM/MRANNEY/NODE_REDIS
CONNECT-REDIS
HTTPS://GITHUB.COM/VISIONMEDIA/CONNECT-REDIS
COLUMN NOSQL
TABULAR DATA
KEY/VALUE USE CASES
KEY/VALUE USE CASES


CONCEPT: SINGLE, INFINITE TABLE
KEY/VALUE USE CASES


CONCEPT: SINGLE, INFINITE TABLE
   CROSS REFERENCED DATA
KEY/VALUE USE CASES


CONCEPT: SINGLE, INFINITE TABLE
   CROSS REFERENCED DATA
       GEOSPATIAL DATA
KEY/VALUE USE CASES


CONCEPT: SINGLE, INFINITE TABLE
   CROSS REFERENCED DATA
       GEOSPATIAL DATA
  TABULAR BASED SCHEMAS
KEY/VALUE USE CASES


CONCEPT: SINGLE, INFINITE TABLE
   CROSS REFERENCED DATA
       GEOSPATIAL DATA
  TABULAR BASED SCHEMAS

    SIMPLE RELATIONSHIPS
NODE-CASSANDRA-CLIENT
HTTPS://GITHUB.COM/RACKER/NODE-CASSANDRA-CLIENT
NODE-HBASE
HTTPS://GITHUB.COM/WDAVIDW/NODE-HBASE
DOCUMENT NOSQL
DOCUMENT DATA
DOCUMENT DATA
DOCUMENT DATA
DOCUMENT USE CASES
DOCUMENT USE CASES


GREAT FOR SEMI-STRUCTURED DATA
DOCUMENT USE CASES


GREAT FOR SEMI-STRUCTURED DATA

   SELF CONTAINED DATA SETS
DOCUMENT USE CASES


GREAT FOR SEMI-STRUCTURED DATA

   SELF CONTAINED DATA SETS
 ARTICLES, COMMENTS, PRODUCTS
DOCUMENT USE CASES


GREAT FOR SEMI-STRUCTURED DATA

   SELF CONTAINED DATA SETS
 ARTICLES, COMMENTS, PRODUCTS
      REVISION TRACKING
DOCUMENT USE CASES


GREAT FOR SEMI-STRUCTURED DATA

   SELF CONTAINED DATA SETS
 ARTICLES, COMMENTS, PRODUCTS
      REVISION TRACKING

      FLEXIBLE SCHEMAS
ITS NOT SQL!
ITS NOT SQL!
MONGOOSE
HTTP://MONGOOSEJS.COM/
CRADLE
HTTP://MONGOOSEJS.COM/
COLUMN NOSQL
GRAPH DATA
SIMPLER EXAMPLE
GRAPH USE CASES
GRAPH USE CASES


NODES AND RELATIONSHIPS
GRAPH USE CASES


  NODES AND RELATIONSHIPS
CONNECT SCHEMA-LESS ENTITIES
GRAPH USE CASES


  NODES AND RELATIONSHIPS
CONNECT SCHEMA-LESS ENTITIES
    WHITEBOARD FRIENDLY
GRAPH USE CASES


  NODES AND RELATIONSHIPS
CONNECT SCHEMA-LESS ENTITIES
    WHITEBOARD FRIENDLY
     DEEP RELATIONSHIPS
GRAPH USE CASES


  NODES AND RELATIONSHIPS
CONNECT SCHEMA-LESS ENTITIES
    WHITEBOARD FRIENDLY
     DEEP RELATIONSHIPS

     SOCIAL NETWORKS
ITS NOT A DATABASE!
ITS NOT A DATABASE!
ITS NOT A DATABASE!
NODE-NEO4J
HTTPS://GITHUB.COM/THINGDOM/NODE-NEO4J
NODE-NEO4J
HTTPS://GITHUB.COM/THINGDOM/NODE-NEO4J
NODE-NEO4J
HTTPS://GITHUB.COM/THINGDOM/NODE-NEO4J
@nickmcclay



THANKS!

More Related Content

Similar to Node.js and NoSQL

SAS integration with NoSQL data
SAS integration with NoSQL dataSAS integration with NoSQL data
SAS integration with NoSQL data
Kevin Lee
 
NoSQL Options Compared
NoSQL Options ComparedNoSQL Options Compared
NoSQL Options Compared
Sergey Bushik
 

Similar to Node.js and NoSQL (20)

Performance Benchmarking of Clouds Evaluating OpenStack
Performance Benchmarking of Clouds                Evaluating OpenStackPerformance Benchmarking of Clouds                Evaluating OpenStack
Performance Benchmarking of Clouds Evaluating OpenStack
 
Deep dive into the native multi model database ArangoDB
Deep dive into the native multi model database ArangoDBDeep dive into the native multi model database ArangoDB
Deep dive into the native multi model database ArangoDB
 
Building Read Models using event streams
Building Read Models using event streamsBuilding Read Models using event streams
Building Read Models using event streams
 
NoSQL Basics and MongDB
NoSQL Basics and  MongDBNoSQL Basics and  MongDB
NoSQL Basics and MongDB
 
Perchè potresti aver bisogno di un database NoSQL anche se non sei Google o F...
Perchè potresti aver bisogno di un database NoSQL anche se non sei Google o F...Perchè potresti aver bisogno di un database NoSQL anche se non sei Google o F...
Perchè potresti aver bisogno di un database NoSQL anche se non sei Google o F...
 
NEW LAUNCH! How to build graph applications with SPARQL and Gremlin using Ama...
NEW LAUNCH! How to build graph applications with SPARQL and Gremlin using Ama...NEW LAUNCH! How to build graph applications with SPARQL and Gremlin using Ama...
NEW LAUNCH! How to build graph applications with SPARQL and Gremlin using Ama...
 
Nosql
NosqlNosql
Nosql
 
Nosql
NosqlNosql
Nosql
 
RET305-Turbo Charge Your E-Commerce Site wAmazon Cache and Search Solutions.pdf
RET305-Turbo Charge Your E-Commerce Site wAmazon Cache and Search Solutions.pdfRET305-Turbo Charge Your E-Commerce Site wAmazon Cache and Search Solutions.pdf
RET305-Turbo Charge Your E-Commerce Site wAmazon Cache and Search Solutions.pdf
 
Solutions for bi-directional integration between Oracle RDBMS and Apache Kafka
Solutions for bi-directional integration between Oracle RDBMS and Apache KafkaSolutions for bi-directional integration between Oracle RDBMS and Apache Kafka
Solutions for bi-directional integration between Oracle RDBMS and Apache Kafka
 
No sql
No sqlNo sql
No sql
 
Introduction to NoSQL
Introduction to NoSQLIntroduction to NoSQL
Introduction to NoSQL
 
Scalability and Graph Analytics with Neo4j - Stefan Kolmar, Neo4j
Scalability and Graph Analytics with Neo4j - Stefan Kolmar, Neo4jScalability and Graph Analytics with Neo4j - Stefan Kolmar, Neo4j
Scalability and Graph Analytics with Neo4j - Stefan Kolmar, Neo4j
 
Use Performance Insights To Enhance MongoDB Performance - (Manosh Malai - Myd...
Use Performance Insights To Enhance MongoDB Performance - (Manosh Malai - Myd...Use Performance Insights To Enhance MongoDB Performance - (Manosh Malai - Myd...
Use Performance Insights To Enhance MongoDB Performance - (Manosh Malai - Myd...
 
Database Modernization (Azure SQL Database)
Database Modernization (Azure SQL Database)Database Modernization (Azure SQL Database)
Database Modernization (Azure SQL Database)
 
The Next Five Years of Rails
The Next Five Years of RailsThe Next Five Years of Rails
The Next Five Years of Rails
 
OrientDB the database for the web 1.1
OrientDB the database for the web 1.1OrientDB the database for the web 1.1
OrientDB the database for the web 1.1
 
SAS integration with NoSQL data
SAS integration with NoSQL dataSAS integration with NoSQL data
SAS integration with NoSQL data
 
Dynamo and NoSQL Databases
Dynamo and NoSQL DatabasesDynamo and NoSQL Databases
Dynamo and NoSQL Databases
 
NoSQL Options Compared
NoSQL Options ComparedNoSQL Options Compared
NoSQL Options Compared
 

More from Nicholas McClay

More from Nicholas McClay (7)

Intro to Sail.js
Intro to Sail.jsIntro to Sail.js
Intro to Sail.js
 
Node.js and Parse
Node.js and ParseNode.js and Parse
Node.js and Parse
 
Get MEAN! Node.js and the MEAN stack
Get MEAN!  Node.js and the MEAN stackGet MEAN!  Node.js and the MEAN stack
Get MEAN! Node.js and the MEAN stack
 
Node.js Cloud deployment
Node.js Cloud deploymentNode.js Cloud deployment
Node.js Cloud deployment
 
Coffee script throwdown
Coffee script throwdownCoffee script throwdown
Coffee script throwdown
 
Node.js 0.8 features
Node.js 0.8 featuresNode.js 0.8 features
Node.js 0.8 features
 
Node.js debugging
Node.js debuggingNode.js debugging
Node.js debugging
 

Recently uploaded

Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Recently uploaded (20)

ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 

Node.js and NoSQL

Editor's Notes

  1. \n
  2. \n
  3. \n
  4. \n
  5. \n
  6. \n
  7. \n
  8. \n
  9. \n
  10. \n
  11. \n
  12. \n
  13. \n
  14. \n
  15. \n
  16. \n
  17. \n
  18. \n
  19. \n
  20. \n
  21. \n
  22. \n
  23. \n
  24. \n
  25. \n
  26. \n
  27. \n
  28. \n
  29. \n
  30. \n
  31. \n
  32. \n
  33. \n
  34. \n
  35. \n
  36. \n
  37. \n
  38. \n
  39. \n
  40. \n
  41. \n
  42. \n
  43. \n
  44. \n
  45. \n
  46. \n
  47. \n
  48. \n
  49. \n
  50. \n
  51. \n
  52. \n