SlideShare a Scribd company logo
1 of 22
Y NoSQL
Jim Van Fleet                @bigfleet

Jan 2010        http://jimvanfleet.com/
Congratulations




✤   You just landed a really sweet gig.




Y NoSQL                                   http://jimvanfleet.com/
Congratulations

✤   You’re doing a baseball app

✤   Twitter and OAuth, so no authentication worries

✤   They only have the MLBPA on board, so no team names or logos

✤   Free mobile apps focusing on great design, where you have help

✤   Twitter DM’s for the premium package



Y NoSQL                                               http://jimvanfleet.com/
Feeling Good?




Y NoSQL         http://jimvanfleet.com/
Feeling Good?
Where’s my cocktail?
Not So Fast, My Friend

✤   Your boss comes in one day, he’s ecstatic

✤   You got the MLB license!

✤   You’re going to allow fans to follow a team, or particular games.

✤   They also signed a contract with some marketers, the target is 100k
    users




Y NoSQL                                               http://jimvanfleet.com/
This isn’t so bad...




Y NoSQL                http://jimvanfleet.com/
This isn’t so bad...




Y NoSQL                http://jimvanfleet.com/
This isn’t so bad...




Y NoSQL                http://jimvanfleet.com/
One more thing...

✤   Things are looking great! But...

✤   We want our user’s notifications on their user page

✤   We got a bug report, users are getting some notifications twice




Y NoSQL                                              http://jimvanfleet.com/
Why is that?




Y NoSQL        http://jimvanfleet.com/
One more thing...




Y NoSQL             http://jimvanfleet.com/
... you’re screwed.




Y NoSQL               http://jimvanfleet.com/
... you’re screwed.




Y NoSQL               http://jimvanfleet.com/
Math time

✤   100k user target

✤   Some teams will be more popular than others

✤   Red Sox in ’09: ~ 6050 events over 162 games

✤   Roughly 80 a game

✤   If 20k users follow the Red Sox, you have 160k notifications per game

✤   ... and that’s just when they’re at bat!

Y NoSQL                                             http://jimvanfleet.com/
The math gets worse

✤   You’ll come to hate good pitchers.

✤   They’re owned universally, so the top 30 will all be 10% owned

✤   In 2009, Josh Beckett generated 28 events in an average trip to the
    mound

✤   At 10k users, that’s 280k for one game.

✤   Good pitchers usually pitch against each other


Y NoSQL                                               http://jimvanfleet.com/
So what now?

✤   Let’s take a document-based approach to the modeling the problem

✤   For this particular example, we’ll use MongoDB.

✤   The mantra I heard: “Focus on what you want to show”

✤   Schemaless or relational: row scans are what kill you




Y NoSQL                                               http://jimvanfleet.com/
Picking up the pieces




Y NoSQL                 http://jimvanfleet.com/
Picking up the pieces




Y NoSQL                 http://jimvanfleet.com/
How does that help?

✤   200k plays in an entire season.

✤   MongoDB has indexes, maintaining all query richness and staying
    fast.

✤   Linear user growth is a non-issue

✤   Single-item popularity is similarly a non-issue




Y NoSQL                                               http://jimvanfleet.com/
Postlude (NO LOLLIPOPS)

✤   There’s a popular conception that NoSQL is about everything and a
    pony.

✤   It’s bleeding edge

✤   Talk about this decision with your ops team or your host




Y NoSQL                                              http://jimvanfleet.com/
To Learn More...

✤   Ben Scofield’s overview of the field:
    http://www.slideshare.net/bscofield/nosql-death-to-relational-
    databases

✤   One-stop shop for NoSQL overview:
    http://www.vineetgupta.com/2010/01/nosql-databases-part-1-
    landscape.html




Y NoSQL                                           http://jimvanfleet.com/

More Related Content

Viewers also liked

Программа поддержки экспорта инновационной и высокотехнологичной продукции, р...
Программа поддержки экспорта инновационной и высокотехнологичной продукции, р...Программа поддержки экспорта инновационной и высокотехнологичной продукции, р...
Программа поддержки экспорта инновационной и высокотехнологичной продукции, р...Ingria. Technopark St. Petersburg
 
Akademi Klasik Türk Müziği Korosu 2016 Ocak 18 Konseri resimleri
Akademi Klasik Türk Müziği Korosu 2016 Ocak 18 Konseri resimleriAkademi Klasik Türk Müziği Korosu 2016 Ocak 18 Konseri resimleri
Akademi Klasik Türk Müziği Korosu 2016 Ocak 18 Konseri resimleriaokutur
 
10 способов сделать подпись к иллюстрации
10 способов сделать подпись к иллюстрации10 способов сделать подпись к иллюстрации
10 способов сделать подпись к иллюстрацииVadim Zhartun
 
Mbc Consulting Group
Mbc Consulting GroupMbc Consulting Group
Mbc Consulting GroupKevin Cook
 
10.Local Database & LINQ
10.Local Database & LINQ10.Local Database & LINQ
10.Local Database & LINQNguyen Tuan
 
Contratacion
ContratacionContratacion
Contratacion250k
 
Cloud and the Future of Networked Systems
Cloud and the Future of Networked SystemsCloud and the Future of Networked Systems
Cloud and the Future of Networked SystemsJames Urquhart
 
Defining Terms Of The Lymphatic & Immune System
Defining Terms Of The Lymphatic & Immune SystemDefining Terms Of The Lymphatic & Immune System
Defining Terms Of The Lymphatic & Immune Systemguestff1b67
 
Unit 8c Taxation strategies
Unit 8c Taxation strategiesUnit 8c Taxation strategies
Unit 8c Taxation strategiesAndrew Hingston
 
Serap Mutlu Akbulut Korosu 1 Mart 2016 Konser Resimleri
Serap Mutlu Akbulut Korosu 1 Mart 2016 Konser ResimleriSerap Mutlu Akbulut Korosu 1 Mart 2016 Konser Resimleri
Serap Mutlu Akbulut Korosu 1 Mart 2016 Konser Resimleriaokutur
 
Трансфер технологий в вузах_глобализация академических инноваций, Т. Поспелова
Трансфер технологий в вузах_глобализация академических инноваций, Т. Поспелова Трансфер технологий в вузах_глобализация академических инноваций, Т. Поспелова
Трансфер технологий в вузах_глобализация академических инноваций, Т. Поспелова Ingria. Technopark St. Petersburg
 
Как запустить рекламную кампанию?
Как запустить рекламную кампанию?Как запустить рекламную кампанию?
Как запустить рекламную кампанию?Ingria. Technopark St. Petersburg
 
Развитие инновационных экосистем_компендиум
Развитие инновационных экосистем_компендиумРазвитие инновационных экосистем_компендиум
Развитие инновационных экосистем_компендиумIngria. Technopark St. Petersburg
 
ir10 presentation on wikis
ir10 presentation on wikisir10 presentation on wikis
ir10 presentation on wikisScanenergi A/S
 

Viewers also liked (20)

Программа поддержки экспорта инновационной и высокотехнологичной продукции, р...
Программа поддержки экспорта инновационной и высокотехнологичной продукции, р...Программа поддержки экспорта инновационной и высокотехнологичной продукции, р...
Программа поддержки экспорта инновационной и высокотехнологичной продукции, р...
 
Akademi Klasik Türk Müziği Korosu 2016 Ocak 18 Konseri resimleri
Akademi Klasik Türk Müziği Korosu 2016 Ocak 18 Konseri resimleriAkademi Klasik Türk Müziği Korosu 2016 Ocak 18 Konseri resimleri
Akademi Klasik Türk Müziği Korosu 2016 Ocak 18 Konseri resimleri
 
10 способов сделать подпись к иллюстрации
10 способов сделать подпись к иллюстрации10 способов сделать подпись к иллюстрации
10 способов сделать подпись к иллюстрации
 
Mbc Consulting Group
Mbc Consulting GroupMbc Consulting Group
Mbc Consulting Group
 
10.Local Database & LINQ
10.Local Database & LINQ10.Local Database & LINQ
10.Local Database & LINQ
 
Mapi
MapiMapi
Mapi
 
Contratacion
ContratacionContratacion
Contratacion
 
Cloud and the Future of Networked Systems
Cloud and the Future of Networked SystemsCloud and the Future of Networked Systems
Cloud and the Future of Networked Systems
 
Meerkat by Gianna
Meerkat by GiannaMeerkat by Gianna
Meerkat by Gianna
 
Defining Terms Of The Lymphatic & Immune System
Defining Terms Of The Lymphatic & Immune SystemDefining Terms Of The Lymphatic & Immune System
Defining Terms Of The Lymphatic & Immune System
 
Unit 8c Taxation strategies
Unit 8c Taxation strategiesUnit 8c Taxation strategies
Unit 8c Taxation strategies
 
Serap Mutlu Akbulut Korosu 1 Mart 2016 Konser Resimleri
Serap Mutlu Akbulut Korosu 1 Mart 2016 Konser ResimleriSerap Mutlu Akbulut Korosu 1 Mart 2016 Konser Resimleri
Serap Mutlu Akbulut Korosu 1 Mart 2016 Konser Resimleri
 
Трансфер технологий в вузах_глобализация академических инноваций, Т. Поспелова
Трансфер технологий в вузах_глобализация академических инноваций, Т. Поспелова Трансфер технологий в вузах_глобализация академических инноваций, Т. Поспелова
Трансфер технологий в вузах_глобализация академических инноваций, Т. Поспелова
 
Voyager
VoyagerVoyager
Voyager
 
Как запустить рекламную кампанию?
Как запустить рекламную кампанию?Как запустить рекламную кампанию?
Как запустить рекламную кампанию?
 
Paul Johnson
Paul JohnsonPaul Johnson
Paul Johnson
 
Развитие инновационных экосистем_компендиум
Развитие инновационных экосистем_компендиумРазвитие инновационных экосистем_компендиум
Развитие инновационных экосистем_компендиум
 
ir10 presentation on wikis
ir10 presentation on wikisir10 presentation on wikis
ir10 presentation on wikis
 
CD Labs Webinar
CD Labs Webinar CD Labs Webinar
CD Labs Webinar
 
Hardwarea
HardwareaHardwarea
Hardwarea
 

Similar to Y NoSQL: An Example

Building Twitter in Drupal
Building Twitter in DrupalBuilding Twitter in Drupal
Building Twitter in DrupalJeff Eaton
 
Semantic Web For Distributed Social Networks
Semantic Web For Distributed Social NetworksSemantic Web For Distributed Social Networks
Semantic Web For Distributed Social NetworksDavid Peterson
 
Yanoshin Wakulab New Year Presentation
Yanoshin Wakulab New Year PresentationYanoshin Wakulab New Year Presentation
Yanoshin Wakulab New Year PresentationShin-Ichiro Yano
 
わくわくオープンラボ新年会'10 やのしん
わくわくオープンラボ新年会'10 やのしんわくわくオープンラボ新年会'10 やのしん
わくわくオープンラボ新年会'10 やのしんguestb21ccf
 
Going mobile - tip, tricks and tools for building mobile web-apps
Going mobile - tip, tricks and tools for building mobile web-appsGoing mobile - tip, tricks and tools for building mobile web-apps
Going mobile - tip, tricks and tools for building mobile web-appsJoshua May
 
SEO for the Semantic Web
SEO for the Semantic WebSEO for the Semantic Web
SEO for the Semantic WebMihai Gheza
 
Plugins Spectacular WordCamp Sydney 2012
Plugins Spectacular WordCamp Sydney 2012Plugins Spectacular WordCamp Sydney 2012
Plugins Spectacular WordCamp Sydney 2012Tony Cosentino
 
The Plugin Spectactular - Tony Cosentino - WordCamp Sydney 2012
The Plugin Spectactular - Tony Cosentino - WordCamp Sydney 2012The Plugin Spectactular - Tony Cosentino - WordCamp Sydney 2012
The Plugin Spectactular - Tony Cosentino - WordCamp Sydney 2012WordCamp Sydney
 
Open Source Secret Sauce - Lugor Sep 2011
Open Source Secret Sauce - Lugor Sep 2011Open Source Secret Sauce - Lugor Sep 2011
Open Source Secret Sauce - Lugor Sep 2011Ted Husted
 
Webspam (English Version)
Webspam (English Version)Webspam (English Version)
Webspam (English Version)Dirk Haun
 
Martin Splitt "A short history of the web"
Martin Splitt "A short history of the web"Martin Splitt "A short history of the web"
Martin Splitt "A short history of the web"Fwdays
 
[Workshop] Analyzing Your Deliverables: Developing the Optimal Documentation ...
[Workshop] Analyzing Your Deliverables: Developing the Optimal Documentation ...[Workshop] Analyzing Your Deliverables: Developing the Optimal Documentation ...
[Workshop] Analyzing Your Deliverables: Developing the Optimal Documentation ...Scott Abel
 
Analyzing Your Deliverables: Developing the Optimal Documentation Library
Analyzing Your Deliverables: Developing the Optimal Documentation LibraryAnalyzing Your Deliverables: Developing the Optimal Documentation Library
Analyzing Your Deliverables: Developing the Optimal Documentation LibraryScott Abel
 
Hacking News
Hacking NewsHacking News
Hacking Newsamclean
 
Fast and Easy Website Tune Ups
Fast and Easy Website Tune UpsFast and Easy Website Tune Ups
Fast and Easy Website Tune UpsJeff Wisniewski
 
Web2 Presentation
Web2 PresentationWeb2 Presentation
Web2 PresentationErwin Huang
 
Improving Drupal's Page Loading Performance
Improving Drupal's Page Loading PerformanceImproving Drupal's Page Loading Performance
Improving Drupal's Page Loading PerformanceWim Leers
 
Database Benchmarks: Silicon Valley SQL Server User Group Meeting May 2009
Database Benchmarks: Silicon Valley SQL Server User Group Meeting May 2009Database Benchmarks: Silicon Valley SQL Server User Group Meeting May 2009
Database Benchmarks: Silicon Valley SQL Server User Group Meeting May 2009Mark Ginnebaugh
 

Similar to Y NoSQL: An Example (20)

Building Twitter in Drupal
Building Twitter in DrupalBuilding Twitter in Drupal
Building Twitter in Drupal
 
Semantic Web For Distributed Social Networks
Semantic Web For Distributed Social NetworksSemantic Web For Distributed Social Networks
Semantic Web For Distributed Social Networks
 
Yanoshin Wakulab New Year Presentation
Yanoshin Wakulab New Year PresentationYanoshin Wakulab New Year Presentation
Yanoshin Wakulab New Year Presentation
 
わくわくオープンラボ新年会'10 やのしん
わくわくオープンラボ新年会'10 やのしんわくわくオープンラボ新年会'10 やのしん
わくわくオープンラボ新年会'10 やのしん
 
Going mobile - tip, tricks and tools for building mobile web-apps
Going mobile - tip, tricks and tools for building mobile web-appsGoing mobile - tip, tricks and tools for building mobile web-apps
Going mobile - tip, tricks and tools for building mobile web-apps
 
SEO for the Semantic Web
SEO for the Semantic WebSEO for the Semantic Web
SEO for the Semantic Web
 
Plugins Spectacular WordCamp Sydney 2012
Plugins Spectacular WordCamp Sydney 2012Plugins Spectacular WordCamp Sydney 2012
Plugins Spectacular WordCamp Sydney 2012
 
The Plugin Spectactular - Tony Cosentino - WordCamp Sydney 2012
The Plugin Spectactular - Tony Cosentino - WordCamp Sydney 2012The Plugin Spectactular - Tony Cosentino - WordCamp Sydney 2012
The Plugin Spectactular - Tony Cosentino - WordCamp Sydney 2012
 
Open Source Secret Sauce - Lugor Sep 2011
Open Source Secret Sauce - Lugor Sep 2011Open Source Secret Sauce - Lugor Sep 2011
Open Source Secret Sauce - Lugor Sep 2011
 
Rails Conf Talk Slides
Rails Conf Talk SlidesRails Conf Talk Slides
Rails Conf Talk Slides
 
Responsive Design
Responsive DesignResponsive Design
Responsive Design
 
Webspam (English Version)
Webspam (English Version)Webspam (English Version)
Webspam (English Version)
 
Martin Splitt "A short history of the web"
Martin Splitt "A short history of the web"Martin Splitt "A short history of the web"
Martin Splitt "A short history of the web"
 
[Workshop] Analyzing Your Deliverables: Developing the Optimal Documentation ...
[Workshop] Analyzing Your Deliverables: Developing the Optimal Documentation ...[Workshop] Analyzing Your Deliverables: Developing the Optimal Documentation ...
[Workshop] Analyzing Your Deliverables: Developing the Optimal Documentation ...
 
Analyzing Your Deliverables: Developing the Optimal Documentation Library
Analyzing Your Deliverables: Developing the Optimal Documentation LibraryAnalyzing Your Deliverables: Developing the Optimal Documentation Library
Analyzing Your Deliverables: Developing the Optimal Documentation Library
 
Hacking News
Hacking NewsHacking News
Hacking News
 
Fast and Easy Website Tune Ups
Fast and Easy Website Tune UpsFast and Easy Website Tune Ups
Fast and Easy Website Tune Ups
 
Web2 Presentation
Web2 PresentationWeb2 Presentation
Web2 Presentation
 
Improving Drupal's Page Loading Performance
Improving Drupal's Page Loading PerformanceImproving Drupal's Page Loading Performance
Improving Drupal's Page Loading Performance
 
Database Benchmarks: Silicon Valley SQL Server User Group Meeting May 2009
Database Benchmarks: Silicon Valley SQL Server User Group Meeting May 2009Database Benchmarks: Silicon Valley SQL Server User Group Meeting May 2009
Database Benchmarks: Silicon Valley SQL Server User Group Meeting May 2009
 

Recently uploaded

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 WorkerThousandEyes
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsRoshan Dwivedi
 
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 CVKhem
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
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...Miguel Araújo
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesBoston Institute of Analytics
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
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, ...apidays
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
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)wesley chun
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
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...Martijn de Jong
 
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 Scriptwesley chun
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
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
 

Recently uploaded (20)

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
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
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
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
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...
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
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, ...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
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)
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
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
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 

Y NoSQL: An Example

  • 1. Y NoSQL Jim Van Fleet @bigfleet Jan 2010 http://jimvanfleet.com/
  • 2. Congratulations ✤ You just landed a really sweet gig. Y NoSQL http://jimvanfleet.com/
  • 3. Congratulations ✤ You’re doing a baseball app ✤ Twitter and OAuth, so no authentication worries ✤ They only have the MLBPA on board, so no team names or logos ✤ Free mobile apps focusing on great design, where you have help ✤ Twitter DM’s for the premium package Y NoSQL http://jimvanfleet.com/
  • 4. Feeling Good? Y NoSQL http://jimvanfleet.com/
  • 6. Not So Fast, My Friend ✤ Your boss comes in one day, he’s ecstatic ✤ You got the MLB license! ✤ You’re going to allow fans to follow a team, or particular games. ✤ They also signed a contract with some marketers, the target is 100k users Y NoSQL http://jimvanfleet.com/
  • 7. This isn’t so bad... Y NoSQL http://jimvanfleet.com/
  • 8. This isn’t so bad... Y NoSQL http://jimvanfleet.com/
  • 9. This isn’t so bad... Y NoSQL http://jimvanfleet.com/
  • 10. One more thing... ✤ Things are looking great! But... ✤ We want our user’s notifications on their user page ✤ We got a bug report, users are getting some notifications twice Y NoSQL http://jimvanfleet.com/
  • 11. Why is that? Y NoSQL http://jimvanfleet.com/
  • 12. One more thing... Y NoSQL http://jimvanfleet.com/
  • 13. ... you’re screwed. Y NoSQL http://jimvanfleet.com/
  • 14. ... you’re screwed. Y NoSQL http://jimvanfleet.com/
  • 15. Math time ✤ 100k user target ✤ Some teams will be more popular than others ✤ Red Sox in ’09: ~ 6050 events over 162 games ✤ Roughly 80 a game ✤ If 20k users follow the Red Sox, you have 160k notifications per game ✤ ... and that’s just when they’re at bat! Y NoSQL http://jimvanfleet.com/
  • 16. The math gets worse ✤ You’ll come to hate good pitchers. ✤ They’re owned universally, so the top 30 will all be 10% owned ✤ In 2009, Josh Beckett generated 28 events in an average trip to the mound ✤ At 10k users, that’s 280k for one game. ✤ Good pitchers usually pitch against each other Y NoSQL http://jimvanfleet.com/
  • 17. So what now? ✤ Let’s take a document-based approach to the modeling the problem ✤ For this particular example, we’ll use MongoDB. ✤ The mantra I heard: “Focus on what you want to show” ✤ Schemaless or relational: row scans are what kill you Y NoSQL http://jimvanfleet.com/
  • 18. Picking up the pieces Y NoSQL http://jimvanfleet.com/
  • 19. Picking up the pieces Y NoSQL http://jimvanfleet.com/
  • 20. How does that help? ✤ 200k plays in an entire season. ✤ MongoDB has indexes, maintaining all query richness and staying fast. ✤ Linear user growth is a non-issue ✤ Single-item popularity is similarly a non-issue Y NoSQL http://jimvanfleet.com/
  • 21. Postlude (NO LOLLIPOPS) ✤ There’s a popular conception that NoSQL is about everything and a pony. ✤ It’s bleeding edge ✤ Talk about this decision with your ops team or your host Y NoSQL http://jimvanfleet.com/
  • 22. To Learn More... ✤ Ben Scofield’s overview of the field: http://www.slideshare.net/bscofield/nosql-death-to-relational- databases ✤ One-stop shop for NoSQL overview: http://www.vineetgupta.com/2010/01/nosql-databases-part-1- landscape.html Y NoSQL http://jimvanfleet.com/