SlideShare a Scribd company logo
1 of 16
Tomás Fernández Löbbe Plugtree LLC [email_address] October 7th 2010
Installing Solr
What is SolrMeter? An open source stress test tool specifically designed to test Solr installations.
Technically Speaking A standalone Java Swing application that will emulate N users executing queries and updateing documents to your Solr server. Java 6 Swing Guice 2.0 SolrJ Maven 2 JUnit JFreeChart
Solr Search Servers "Apache Software Foundation“ Apache Software Foundation id:SOLR1000 Flexible and Adaptable with XML configuration and Schema Good unicode support Apache Foundation … .. How does it work ,[object Object]
manu:"Maxtor Corp" inStock:true inStock:false price:[0 TO 400] price:[0 TO 100] price:[300 TO *]  price:[300 TO *] cat:electronics weight:[0 TO 10] … .. How does it work ,[object Object],[object Object]
weight price popularity inStock content_type manu_exact … .. How does it work ,[object Object],[object Object],[object Object]
How does it work ,[object Object],[object Object],[object Object],[object Object]
How does it work ,[object Object],[object Object],[object Object],[object Object],[object Object]
How does it work ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
How does it work ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
The SolrMeter project Google Code Google Groups Apache License 2.0 Contributions
What’s coming ,[object Object],[object Object],[object Object],[object Object]
Resources and Contact info ,[object Object],[object Object],[object Object],[object Object]
Questions?
Thank you!

More Related Content

Similar to Test Solr Installations with SolrMeter

Apache Lucene: Searching the Web and Everything Else (Jazoon07)
Apache Lucene: Searching the Web and Everything Else (Jazoon07)Apache Lucene: Searching the Web and Everything Else (Jazoon07)
Apache Lucene: Searching the Web and Everything Else (Jazoon07)dnaber
 
EthicShare.org (Mostly Solr)
EthicShare.org (Mostly Solr)EthicShare.org (Mostly Solr)
EthicShare.org (Mostly Solr)libsys
 
Search Intelligence @elo7.com
Search Intelligence @elo7.comSearch Intelligence @elo7.com
Search Intelligence @elo7.comFernando Meyer
 
Rapid Prototyping with Solr
Rapid Prototyping with SolrRapid Prototyping with Solr
Rapid Prototyping with SolrErik Hatcher
 
Rapid Prototyping with Solr
Rapid Prototyping with SolrRapid Prototyping with Solr
Rapid Prototyping with SolrErik Hatcher
 
Watir Presentation Sumanth Krishna. A
Watir Presentation   Sumanth Krishna. AWatir Presentation   Sumanth Krishna. A
Watir Presentation Sumanth Krishna. ASumanth krishna
 
Solr Search Engine: Optimize Is (Not) Bad for You
Solr Search Engine: Optimize Is (Not) Bad for YouSolr Search Engine: Optimize Is (Not) Bad for You
Solr Search Engine: Optimize Is (Not) Bad for YouSematext Group, Inc.
 
Indexing Text and HTML Files with Solr
Indexing Text and HTML Files with SolrIndexing Text and HTML Files with Solr
Indexing Text and HTML Files with SolrLucidworks (Archived)
 
Indexing Text and HTML Files with Solr
Indexing Text and HTML Files with SolrIndexing Text and HTML Files with Solr
Indexing Text and HTML Files with SolrLucidworks (Archived)
 
Indexing Text and HTML Files with Solr
Indexing Text and HTML Files with SolrIndexing Text and HTML Files with Solr
Indexing Text and HTML Files with SolrLucidworks (Archived)
 
Apace Solr Web Development.pdf
Apace Solr Web Development.pdfApace Solr Web Development.pdf
Apace Solr Web Development.pdfAbanti Aazmin
 
Google Hacking Lab ClassNameDate This is an introducti.docx
Google Hacking Lab ClassNameDate This is an introducti.docxGoogle Hacking Lab ClassNameDate This is an introducti.docx
Google Hacking Lab ClassNameDate This is an introducti.docxwhittemorelucilla
 
Small wins in a small time with Apache Solr
Small wins in a small time with Apache SolrSmall wins in a small time with Apache Solr
Small wins in a small time with Apache SolrSourcesense
 
Solr and Elasticsearch, a performance study
Solr and Elasticsearch, a performance studySolr and Elasticsearch, a performance study
Solr and Elasticsearch, a performance studyCharlie Hull
 
Lab-4 Reconnaissance and Information Gathering  A hacker.docx
Lab-4 Reconnaissance and Information Gathering         A hacker.docxLab-4 Reconnaissance and Information Gathering         A hacker.docx
Lab-4 Reconnaissance and Information Gathering  A hacker.docxLaticiaGrissomzz
 
Vulners: Google for hackers
Vulners: Google for hackersVulners: Google for hackers
Vulners: Google for hackersKirill Ermakov
 
The Apache Solr Smart Data Ecosystem
The Apache Solr Smart Data EcosystemThe Apache Solr Smart Data Ecosystem
The Apache Solr Smart Data EcosystemTrey Grainger
 

Similar to Test Solr Installations with SolrMeter (20)

Apache Lucene: Searching the Web and Everything Else (Jazoon07)
Apache Lucene: Searching the Web and Everything Else (Jazoon07)Apache Lucene: Searching the Web and Everything Else (Jazoon07)
Apache Lucene: Searching the Web and Everything Else (Jazoon07)
 
EthicShare.org (Mostly Solr)
EthicShare.org (Mostly Solr)EthicShare.org (Mostly Solr)
EthicShare.org (Mostly Solr)
 
Search Intelligence @elo7.com
Search Intelligence @elo7.comSearch Intelligence @elo7.com
Search Intelligence @elo7.com
 
Rapid Prototyping with Solr
Rapid Prototyping with SolrRapid Prototyping with Solr
Rapid Prototyping with Solr
 
Rapid Prototyping with Solr
Rapid Prototyping with SolrRapid Prototyping with Solr
Rapid Prototyping with Solr
 
Watir Presentation Sumanth Krishna. A
Watir Presentation   Sumanth Krishna. AWatir Presentation   Sumanth Krishna. A
Watir Presentation Sumanth Krishna. A
 
Solr Search Engine: Optimize Is (Not) Bad for You
Solr Search Engine: Optimize Is (Not) Bad for YouSolr Search Engine: Optimize Is (Not) Bad for You
Solr Search Engine: Optimize Is (Not) Bad for You
 
Indexing Text and HTML Files with Solr
Indexing Text and HTML Files with SolrIndexing Text and HTML Files with Solr
Indexing Text and HTML Files with Solr
 
Indexing Text and HTML Files with Solr
Indexing Text and HTML Files with SolrIndexing Text and HTML Files with Solr
Indexing Text and HTML Files with Solr
 
Indexing Text and HTML Files with Solr
Indexing Text and HTML Files with SolrIndexing Text and HTML Files with Solr
Indexing Text and HTML Files with Solr
 
Meteorjs
MeteorjsMeteorjs
Meteorjs
 
Meteorjs
MeteorjsMeteorjs
Meteorjs
 
Apache Solr Workshop
Apache Solr WorkshopApache Solr Workshop
Apache Solr Workshop
 
Apace Solr Web Development.pdf
Apace Solr Web Development.pdfApace Solr Web Development.pdf
Apace Solr Web Development.pdf
 
Google Hacking Lab ClassNameDate This is an introducti.docx
Google Hacking Lab ClassNameDate This is an introducti.docxGoogle Hacking Lab ClassNameDate This is an introducti.docx
Google Hacking Lab ClassNameDate This is an introducti.docx
 
Small wins in a small time with Apache Solr
Small wins in a small time with Apache SolrSmall wins in a small time with Apache Solr
Small wins in a small time with Apache Solr
 
Solr and Elasticsearch, a performance study
Solr and Elasticsearch, a performance studySolr and Elasticsearch, a performance study
Solr and Elasticsearch, a performance study
 
Lab-4 Reconnaissance and Information Gathering  A hacker.docx
Lab-4 Reconnaissance and Information Gathering         A hacker.docxLab-4 Reconnaissance and Information Gathering         A hacker.docx
Lab-4 Reconnaissance and Information Gathering  A hacker.docx
 
Vulners: Google for hackers
Vulners: Google for hackersVulners: Google for hackers
Vulners: Google for hackers
 
The Apache Solr Smart Data Ecosystem
The Apache Solr Smart Data EcosystemThe Apache Solr Smart Data Ecosystem
The Apache Solr Smart Data Ecosystem
 

Recently uploaded

New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDGMarianaLemus7
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Neo4j
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxnull - The Open Security Community
 
Bluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfBluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfngoud9212
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsAndrey Dotsenko
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 

Recently uploaded (20)

New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDG
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
 
Bluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfBluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdf
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptxVulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 

Test Solr Installations with SolrMeter

Editor's Notes

  1. Hello, I’m Tomás and I’ll be talking about SolrMeter.
  2. This graphic shows pretty much how the process of toning Solr should be, cyclic, right? The default configuration should be just a start point, but then you have to modify the different variables according to your context and see/analyze how the server responds by testing it. You will do many different kind of tests and definitely stress test will be on your list. You need to be sure before going live with your system that it will support the real load from your users. It also becomes very important in Solr to do stress tests because some of the configuration variables need many cycles of trial and error to find the best solution. The Merge factor for example, we know that setting a bigger value would help indexing and a lower value would help searches, but what is the best number for your specific context? I’s kind of difficult to know from the scratch, its easier to try one value and see how the system responds, right? This is one of many examples, like, caches, JVM memory assigned to the web container, etc.
  3. What is SolrMeter? It’s basically a tool that will help you tune your Solr installation by doing stress test easier. It’s specifically designed for Solr and it’s open source, under the Apache License 2.0. Nada técnico Basicamente una herramienta que te va a ayudar a tunear la instalación de Solr y asegurarte que la misma soportará la carga de usuarios reales, ejecutando cualquiera de las operaciones básicas al motor de búsqueda. Licencia Apche 2.0, con todo lo que eso implica.
  4. Nothing new here, is like a JMeter, but specifically to Solr, it should be easier to configure. I’s build with Java and all this frameworks/libraries here described. It uses SolrJ to connect to Solr, Google Guice for dependency injection, Maven2, Swing for the Graphic Interface and JFreeChart for the charts.
  5. First thing to do is to create a queries file. This is just a text file with one query per line. The more queries you add and the more realistic they are, the better. These are the exact terms that are going to be added to the “q” parameter of the Solr query, you can use phrases, specify field, you could specify boosts, boolean operators, etc. One important thing is that you have to be carefull with the number of queries you add, if you use too few queries, they will be all cached and the overall results of the test are going to be wrong.
  6. Second, create a Filter Queries file. This is pretty much the same as the last one, but with the terms that are going to be added on a fq parameter. You can also leave blanc spaces to specify that sometimes the query is executed with no filters. Ofcourse, yo can also NOT use filter queries at all.
  7. Third, create the fields file, with the fields you want to use for faceting. Depending on you application, here you might put all the fields you are going to have on your real application for faceting or at least many of them. Again, the closer it is the test to the real application, the better, am I right? You can also not use faceting at all if you don’t need to.
  8. Locate the files you have just created. Right now you have to specify the exact location of the text files, we are about to put some file chooser or something more user friendrly here. Th same with other options that could be a checkbox or something like that instead of plain text.
  9. Specify the URL where you want to send your queries. Of course, you need to have all the necessary permissions for an external application running where you are running SolrMeter to query Solr.
  10. Just hit the start button of the query panel and the queries are going to start executing. How are they going to be executed? Well, up to date we have (at least on trunk) two modes of execution one is one thread executing all the queries one after the other, the other mode is N threds, executing only one query per minute. We try to keep everything that’s possible pluggable, and this “execution modes” are not the exception. We are going to add more execution modes in he future, but anyone could implement their own and use it if you download the code.
  11. There are a couple of charts available, and there are a couple more of statistics, like mode, median, mean, last minute mean, etc. There is also the log of all exceptions, last executed queries, etc. The same way the queries are simulated, you can also simulate updates. The file for updates is a litle more complicated becouse you have to put one document per line, specifying field:value pairs. Al the required fields must be present. Some of the statistics are just for queries, but, for example this one, the “Time Line” statistic will show also the updates, commits and optimize. If Solr doesn’t use autocommit, you can tell SolrMeter to commit your changes every some amount of documents or every some time (Like Solr does). The Updates uses an executor, just like queries and you can choose between the existing ones or create your own. Optimize, on the other hand, are not executed automatically, you can choose when to optimize your index with the “Optmize Now” button.
  12. The project is hosted at google code and we manage everything from there, wiki, issues, and ofcourse, the source code. We also have a google group for mailing list and as I said before, it’s licensed unther the Apache License 2.0. SolrMeter is a young project and it has a hole lot of work to do. Every new feature we add, we think in 10 more for the future. Any feedback, idea, or any way you can or want to contribute to the project is welcome.
  13. Hablar de cómo queremos que evolucione SolrMeter, de la versión 0.2.0, de engancharlo con mas request handlers y finalmente el tema de ayudar en la configuración. We are now building the 0.2.0 version. This version objective is to have a much more pluggable architecture, allow an easy way of extending the tool. That’s whay we added Guice as dependency injection framework. There are also lot’s of usability features for this version, some of them are already implemented and some of them aren’t yet. The first thing we want to add in the future, is more integration with Solr Request Handlers, be able to know all the statistics of Solr from SolrMeter during the test. This means, for example, being able to see a graph of how the caches are behaveing without needing to go to the Solr admin page and press F5. Cover as many cases of Solr installations… right now, not everithing that can be done by solr can be tested with SolrMeter, we want that gap to be every day a litle bit smaller. Another thing we think would be intresting to add is some kind of rule bases suggestion, like something that could suggest you changes on your configuration to improve performance, etc. But anyway, we have to go step by step. There are many other ideas and you can propose your own, just check the issues page of the project’s site.
  14. Here are some of the links for contact, my email and the company web page.
  15. [ver tiempo, si no hay tiempo saltear esto] Any Questions?