SlideShare une entreprise Scribd logo
1  sur  51
Télécharger pour lire hors ligne
Who am I?
                                Vitaly Kushner


                   • Founder of Astrails
                   • 19 years of industry experience
                   • Building Web Apps since 2005


Wednesday, June 16, 2010
NoSQL
                           when, why and how?


                                         Vitaly Kushner
                                          astrails.com

Wednesday, June 16, 2010
Google




Wednesday, June 16, 2010
Yahoo


                              Google




Wednesday, June 16, 2010
Yahoo


                                       Google

                           Amazon



Wednesday, June 16, 2010
Yahoo
                                            Facebook

                                       Google

                           Amazon



Wednesday, June 16, 2010
Yahoo
                                             Facebook

                           Twitter      Google

                           Amazon



Wednesday, June 16, 2010
Yahoo
                            Digg             Facebook

                           Twitter      Google

                           Amazon



Wednesday, June 16, 2010
Yahoo
                            Digg             Facebook

                           Twitter      Google

                           Amazon     Rackspace


Wednesday, June 16, 2010
Yahoo
                            Digg             Facebook

                           Twitter     Google
                                             LinkedIn
                           Amazon     Rackspace


Wednesday, June 16, 2010
Yahoo
                            Digg             Facebook

                           Twitter
                            Everybody  Google
                                             LinkedIn
                           Amazon     Rackspace


Wednesday, June 16, 2010
NoSQL
           NoSQL
                 NoSQL   NoSQL
                           NoSQL       NoSQL
                NoSQL              NoSQL
                                           NoSQL
                              NoSQL

Wednesday, June 16, 2010
WTF is NoSQL?
                             and why should you care?




Wednesday, June 16, 2010
Non relational



Wednesday, June 16, 2010
Document based

                           Non relational



Wednesday, June 16, 2010
Document based
                                   Key-Value store
                           Non relational



Wednesday, June 16, 2010
Document based
                                   Key-Value store
                           Non relational
           column-based




Wednesday, June 16, 2010
Document based
                                   Key-Value store
                           Non relational
           column-based

                                        Graph DB



Wednesday, June 16, 2010
Document based
                                    Key-Value store
                           Non relational
           column-based          Distributed
                                         Graph DB



Wednesday, June 16, 2010
Schema-less
               Document based
                                    Key-Value store
                           Non relational
           column-based          Distributed
                                         Graph DB



Wednesday, June 16, 2010
Schema-less
               Document based
                                          Key-Value store
                             Non relational
           column-based                Distributed

                           BASE is not ACID    Graph DB



Wednesday, June 16, 2010
Why & When



Wednesday, June 16, 2010
Massive Data Volume
                               100K servers in a cluster




Wednesday, June 16, 2010
Massive Data Volume
                               100K servers in a cluster
                                  Twitter: 7+T/day




Wednesday, June 16, 2010
High query workload
                           MongoDB: 8M operations/sec




Wednesday, June 16, 2010
Flexible Schema
                             on the fly schema changes




Wednesday, June 16, 2010
Massive Scale



Wednesday, June 16, 2010
Availability



Wednesday, June 16, 2010
Everyone want
                             Availability


Wednesday, June 16, 2010
RDBMS
                           can deliver


Wednesday, June 16, 2010
high price



Wednesday, June 16, 2010
Not ACID anymore



Wednesday, June 16, 2010
CAP theorem
                                     Pick two


                   • Consistent
                   • Available
                   • Partition tolerant


Wednesday, June 16, 2010
Scale
                            How?




Wednesday, June 16, 2010
Throw hardware
                             money at it!



Wednesday, June 16, 2010
Par-ti-tion



Wednesday, June 16, 2010
MySQL + Memcached
                                   =
                           “square wheel”
                              cassandra

Wednesday, June 16, 2010
How?



Wednesday, June 16, 2010
Which one?

                   • document based
                   • column or key-value store
                   • advanced storage schemas


Wednesday, June 16, 2010
Cassandra

                   • built by Facebook
                   • very high write throughput
                   • OLTP
                   • automatic horizontal scaling
                   • no single point of failure

Wednesday, June 16, 2010
HBase

                   • Apache project
                   • Consistent
                   • Optimized for analytics (OLAP)
                   • Has single point of failure

Wednesday, June 16, 2010
MongoDB

                   • probably easiest to move to from SQL
                   • document based
                   • on-demand queries
                   • automatic sharding
                   • no single-node durability

Wednesday, June 16, 2010
CoachDB

                   • document based
                   • map-reduce javascript querying/filtering.
                   • has some replication and scaling problems


Wednesday, June 16, 2010
REDIS

                   • key-value store
                   • advanced data types: list, set
                   • atomic operations


Wednesday, June 16, 2010
Schema



Wednesday, June 16, 2010
Users: {

                            vitaly: {

                      	

         email: vitaly@astrails.com,

                                  company: astrails,

                                  password: secret

                            },

                            michael: {
                      	

         email: michael@astrails.com,

                                  company: astrails,

                                  password: superduper

                            },

                            ...

                        }




Wednesday, June 16, 2010
UsersByEmail: {
                        "vitaly@astrails.com": "vitaly",
                        "michael@astrails.com": "michael",
                        ...
                      }




Wednesday, June 16, 2010
Migrations



Wednesday, June 16, 2010
Start Slow



Wednesday, June 16, 2010
NoSQL can help
                               You


Wednesday, June 16, 2010
WTF is NoSQL?
                               Q &A

                                      Vitaly Kushner
                                       astrails.com

               @astrails              @vkushner
Wednesday, June 16, 2010

Contenu connexe

Similaire à WTF is NoSQL

Making your oss project more like rails
Making your oss project more like railsMaking your oss project more like rails
Making your oss project more like rails
Yehuda Katz
 
IE9 для разработчиков
IE9 для разработчиковIE9 для разработчиков
IE9 для разработчиков
Yuriy Artyukh
 
Social Media recipes for your online kitchen
Social Media recipes for your online kitchenSocial Media recipes for your online kitchen
Social Media recipes for your online kitchen
Katie Laird
 
Campus Visit Basics
Campus Visit BasicsCampus Visit Basics
Campus Visit Basics
TargetX
 

Similaire à WTF is NoSQL (12)

Making your oss project more like rails
Making your oss project more like railsMaking your oss project more like rails
Making your oss project more like rails
 
Caelum dicas web 2010
Caelum dicas web 2010Caelum dicas web 2010
Caelum dicas web 2010
 
Melvin Vivas' talk at Phil. Tech Startups Meetup
Melvin Vivas' talk at Phil. Tech Startups MeetupMelvin Vivas' talk at Phil. Tech Startups Meetup
Melvin Vivas' talk at Phil. Tech Startups Meetup
 
Mobile Development with uPortal and Infusion
Mobile Development with uPortal and InfusionMobile Development with uPortal and Infusion
Mobile Development with uPortal and Infusion
 
The Chinese Jingpin Kecheng project - a story of lending and borrowing, or in...
The Chinese Jingpin Kecheng project - a story of lending and borrowing, or in...The Chinese Jingpin Kecheng project - a story of lending and borrowing, or in...
The Chinese Jingpin Kecheng project - a story of lending and borrowing, or in...
 
IE9 для разработчиков
IE9 для разработчиковIE9 для разработчиков
IE9 для разработчиков
 
Cities 3.0
Cities 3.0Cities 3.0
Cities 3.0
 
HTML5 offline
HTML5 offlineHTML5 offline
HTML5 offline
 
Social Media recipes for your online kitchen
Social Media recipes for your online kitchenSocial Media recipes for your online kitchen
Social Media recipes for your online kitchen
 
Campus Visit Basics
Campus Visit BasicsCampus Visit Basics
Campus Visit Basics
 
Information Ergonomics By Web Speaking
Information Ergonomics By Web SpeakingInformation Ergonomics By Web Speaking
Information Ergonomics By Web Speaking
 
Google App Engine - Devfest India 2010
Google App Engine -  Devfest India 2010Google App Engine -  Devfest India 2010
Google App Engine - Devfest India 2010
 

Plus de Astrails

Plus de Astrails (6)

Building and deploying React applications
Building and deploying React applicationsBuilding and deploying React applications
Building and deploying React applications
 
Accounting For Hackers
Accounting For HackersAccounting For Hackers
Accounting For Hackers
 
Migrating from Flux to Redux. Why and how.
Migrating from Flux to Redux. Why and how.Migrating from Flux to Redux. Why and how.
Migrating from Flux to Redux. Why and how.
 
Ruby is Awesome
Ruby is AwesomeRuby is Awesome
Ruby is Awesome
 
Rails missing features
Rails missing featuresRails missing features
Rails missing features
 
Performance - When, What and How
Performance - When, What and HowPerformance - When, What and How
Performance - When, What and How
 

Dernier

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
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Dernier (20)

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...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 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
 
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...
 
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...
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
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...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 

WTF is NoSQL

  • 1. Who am I? Vitaly Kushner • Founder of Astrails • 19 years of industry experience • Building Web Apps since 2005 Wednesday, June 16, 2010
  • 2. NoSQL when, why and how? Vitaly Kushner astrails.com Wednesday, June 16, 2010
  • 4. Yahoo Google Wednesday, June 16, 2010
  • 5. Yahoo Google Amazon Wednesday, June 16, 2010
  • 6. Yahoo Facebook Google Amazon Wednesday, June 16, 2010
  • 7. Yahoo Facebook Twitter Google Amazon Wednesday, June 16, 2010
  • 8. Yahoo Digg Facebook Twitter Google Amazon Wednesday, June 16, 2010
  • 9. Yahoo Digg Facebook Twitter Google Amazon Rackspace Wednesday, June 16, 2010
  • 10. Yahoo Digg Facebook Twitter Google LinkedIn Amazon Rackspace Wednesday, June 16, 2010
  • 11. Yahoo Digg Facebook Twitter Everybody Google LinkedIn Amazon Rackspace Wednesday, June 16, 2010
  • 12. NoSQL NoSQL NoSQL NoSQL NoSQL NoSQL NoSQL NoSQL NoSQL NoSQL Wednesday, June 16, 2010
  • 13. WTF is NoSQL? and why should you care? Wednesday, June 16, 2010
  • 15. Document based Non relational Wednesday, June 16, 2010
  • 16. Document based Key-Value store Non relational Wednesday, June 16, 2010
  • 17. Document based Key-Value store Non relational column-based Wednesday, June 16, 2010
  • 18. Document based Key-Value store Non relational column-based Graph DB Wednesday, June 16, 2010
  • 19. Document based Key-Value store Non relational column-based Distributed Graph DB Wednesday, June 16, 2010
  • 20. Schema-less Document based Key-Value store Non relational column-based Distributed Graph DB Wednesday, June 16, 2010
  • 21. Schema-less Document based Key-Value store Non relational column-based Distributed BASE is not ACID Graph DB Wednesday, June 16, 2010
  • 22. Why & When Wednesday, June 16, 2010
  • 23. Massive Data Volume 100K servers in a cluster Wednesday, June 16, 2010
  • 24. Massive Data Volume 100K servers in a cluster Twitter: 7+T/day Wednesday, June 16, 2010
  • 25. High query workload MongoDB: 8M operations/sec Wednesday, June 16, 2010
  • 26. Flexible Schema on the fly schema changes Wednesday, June 16, 2010
  • 29. Everyone want Availability Wednesday, June 16, 2010
  • 30. RDBMS can deliver Wednesday, June 16, 2010
  • 33. CAP theorem Pick two • Consistent • Available • Partition tolerant Wednesday, June 16, 2010
  • 34. Scale How? Wednesday, June 16, 2010
  • 35. Throw hardware money at it! Wednesday, June 16, 2010
  • 37. MySQL + Memcached = “square wheel” cassandra Wednesday, June 16, 2010
  • 39. Which one? • document based • column or key-value store • advanced storage schemas Wednesday, June 16, 2010
  • 40. Cassandra • built by Facebook • very high write throughput • OLTP • automatic horizontal scaling • no single point of failure Wednesday, June 16, 2010
  • 41. HBase • Apache project • Consistent • Optimized for analytics (OLAP) • Has single point of failure Wednesday, June 16, 2010
  • 42. MongoDB • probably easiest to move to from SQL • document based • on-demand queries • automatic sharding • no single-node durability Wednesday, June 16, 2010
  • 43. CoachDB • document based • map-reduce javascript querying/filtering. • has some replication and scaling problems Wednesday, June 16, 2010
  • 44. REDIS • key-value store • advanced data types: list, set • atomic operations Wednesday, June 16, 2010
  • 46. Users: { vitaly: { email: vitaly@astrails.com, company: astrails, password: secret }, michael: { email: michael@astrails.com, company: astrails, password: superduper }, ... } Wednesday, June 16, 2010
  • 47. UsersByEmail: { "vitaly@astrails.com": "vitaly", "michael@astrails.com": "michael", ... } Wednesday, June 16, 2010
  • 50. NoSQL can help You Wednesday, June 16, 2010
  • 51. WTF is NoSQL? Q &A Vitaly Kushner astrails.com @astrails @vkushner Wednesday, June 16, 2010