SlideShare ist ein Scribd-Unternehmen logo
1 von 15
Optimizing Solr for Performance  & User Experience SFBay Apache Lucene/Solr Meetup - Jan 2010                        Brian Doll :@briandoll
[object Object]
12 year old online business
600k+ SKUs
1.5M Songs
Faceted navigation with Solr
On-site search with Solr
Lots of needles in a huge haystackSFBay Apache Lucene/Solr Meetup - Jan 2010                        Brian Doll : @briandoll
[object Object]
2k app requests per minute
MySQL database
5 memcache instancesSFBay Apache Lucene/Solr Meetup - Jan 2010                        Brian Doll :@briandoll
[object Object]
~100ms average response time
3 Solr hosts on VMWare

Weitere ähnliche Inhalte

Mehr von Brian Doll

The Ultimate Productivity Hack, Having Kids
The Ultimate Productivity Hack, Having KidsThe Ultimate Productivity Hack, Having Kids
The Ultimate Productivity Hack, Having KidsBrian Doll
 
The Performance and Scalability Mindset
The Performance and Scalability MindsetThe Performance and Scalability Mindset
The Performance and Scalability MindsetBrian Doll
 
Finding and fixing top performance issues with new relic rpm
Finding and fixing top performance issues with new relic rpmFinding and fixing top performance issues with new relic rpm
Finding and fixing top performance issues with new relic rpmBrian Doll
 
New Relic .NET Agent Overview
New Relic .NET Agent OverviewNew Relic .NET Agent Overview
New Relic .NET Agent OverviewBrian Doll
 
New Relic: Optimizing The Database SQL and NoSQL Alike
New Relic: Optimizing The Database SQL and NoSQL AlikeNew Relic: Optimizing The Database SQL and NoSQL Alike
New Relic: Optimizing The Database SQL and NoSQL AlikeBrian Doll
 
Rit. the anti-cms
Rit. the anti-cmsRit. the anti-cms
Rit. the anti-cmsBrian Doll
 
What should we work on next?
What should we work on next?What should we work on next?
What should we work on next?Brian Doll
 
Get Fit to Win
Get Fit to WinGet Fit to Win
Get Fit to WinBrian Doll
 
Optimizing Your Online Store for the Holidays
Optimizing Your Online Store for the HolidaysOptimizing Your Online Store for the Holidays
Optimizing Your Online Store for the HolidaysBrian Doll
 

Mehr von Brian Doll (9)

The Ultimate Productivity Hack, Having Kids
The Ultimate Productivity Hack, Having KidsThe Ultimate Productivity Hack, Having Kids
The Ultimate Productivity Hack, Having Kids
 
The Performance and Scalability Mindset
The Performance and Scalability MindsetThe Performance and Scalability Mindset
The Performance and Scalability Mindset
 
Finding and fixing top performance issues with new relic rpm
Finding and fixing top performance issues with new relic rpmFinding and fixing top performance issues with new relic rpm
Finding and fixing top performance issues with new relic rpm
 
New Relic .NET Agent Overview
New Relic .NET Agent OverviewNew Relic .NET Agent Overview
New Relic .NET Agent Overview
 
New Relic: Optimizing The Database SQL and NoSQL Alike
New Relic: Optimizing The Database SQL and NoSQL AlikeNew Relic: Optimizing The Database SQL and NoSQL Alike
New Relic: Optimizing The Database SQL and NoSQL Alike
 
Rit. the anti-cms
Rit. the anti-cmsRit. the anti-cms
Rit. the anti-cms
 
What should we work on next?
What should we work on next?What should we work on next?
What should we work on next?
 
Get Fit to Win
Get Fit to WinGet Fit to Win
Get Fit to Win
 
Optimizing Your Online Store for the Holidays
Optimizing Your Online Store for the HolidaysOptimizing Your Online Store for the Holidays
Optimizing Your Online Store for the Holidays
 

Kürzlich hochgeladen

GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
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
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
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 educationjfdjdjcjdnsjd
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
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 2024The Digital Insurer
 
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
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 

Kürzlich hochgeladen (20)

GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
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
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
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
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
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
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 

Optimizing Solr for Performance & User Experience

  • 1. Optimizing Solr for Performance & User Experience SFBay Apache Lucene/Solr Meetup - Jan 2010 Brian Doll :@briandoll
  • 2.
  • 3. 12 year old online business
  • 8. Lots of needles in a huge haystackSFBay Apache Lucene/Solr Meetup - Jan 2010 Brian Doll : @briandoll
  • 9.
  • 10. 2k app requests per minute
  • 12. 5 memcache instancesSFBay Apache Lucene/Solr Meetup - Jan 2010 Brian Doll :@briandoll
  • 13.
  • 15. 3 Solr hosts on VMWare
  • 16. 50% CPU load, 2GB memory each
  • 17. 1.00 Apdex ScoreSFBay Apache Lucene/Solr Meetup - Jan 2010 Brian Doll :@briandoll
  • 18. We love that the structure of your data is part of your Solr environment (schema.xml) And the way you query against that data is part of your app SFBay Apache Lucene/Solr Meetup - Jan 2010 Brian Doll :@briandoll
  • 19. on-site search is not as varied as we had thought SFBay Apache Lucene/Solr Meetup - Jan 2010 Brian Doll :@briandoll
  • 20. Surprisingly, lots of people search like this: Piano SFBay Apache Lucene/Solr Meetup - Jan 2010 Brian Doll :@briandoll
  • 21. What if we applied a strategy pattern to our search queries? SFBay Apache Lucene/Solr Meetup - Jan 2010 Brian Doll :@briandoll
  • 22. “Instrument” searches could get their own strategy. “Artist” searches could get their own. … SFBay Apache Lucene/Solr Meetup - Jan 2010 Brian Doll :@briandoll
  • 23. Make sure your default search is working well first! Subtle changes to our algorithm provided a 32% increase in per-search value, with some phrases seeing an increase of over 3000%! SFBay Apache Lucene/Solr Meetup - Jan 2010 Brian Doll :@briandoll
  • 24. We construct various strategies: ... DEFAULT_SEARCH_HASH = { :id_codes => { :search_type => :phrase, :boost => 1024, :slop => 2 }, :bucket_proper_names => { :search_type => :phrase, :boost => 500, :slop => 2 }, :bucket_titles => { :search_type => :phrase, :boost => 450, :slop => 100 }, :bucket_songs => { :search_type => :phrase, :boost => 64, :slop => 5 }, :bucket_primary_cats => { :search_type => :phrase, :boost => 32, :slop => 100}, :bucket_secondary_cats => { :search_type => :phrase, :boost => 16, :slop => 100 }, :bucket_binding => { :search_type => :phrase, :boost => 2, :slop => 100}, :bucket_lead_time => { :search_type => :phrase, :boost => 1, :slop => 100}, :bucket_blurbs => { :search_type => :phrase, :boost => 0.05, :slop => 7 }, :text => { :search_type => :term, :boost => 0.005 } } ... def self.popular_instrument_strategy(search_phrase) params = {:instrument_text => {:search_type => :phrase, :boost => 600, :slop => 2 } } Strategy.new("default-instrument", search_phrase, params , :top_selling) end ... SFBay Apache Lucene/Solr Meetup - Jan 2010 Brian Doll :@briandoll
  • 25. And then we have an algorithm to help determine which strategy we should apply to an incoming search request: [redacted] SFBay Apache Lucene/Solr Meetup - Jan 2010 Brian Doll :@briandoll
  • 26. Implementing these strategies provided an 86% increase in per-search value. We can now fine-tune individual categories of searches, as well as specific phrases. SFBay Apache Lucene/Solr Meetup - Jan 2010 Brian Doll :@briandoll
  • 27. Rule of thumb: Don't try to please everybody. Please the people who make you money. Tuning your search algorithm is an endless game, but if you focus on pleasing customer X, it'll cost you. SFBay Apache Lucene/Solr Meetup - Jan 2010 Brian Doll :@briandoll
  • 28. In order to make all this happen, we relied heavily on two tools: SFBay Apache Lucene/Solr Meetup - Jan 2010 Brian Doll :@briandoll