Welcome to the Apache Solr Wiki
The rest of this wiki is community edited and captures version agnostic information, User submitted Tips & Tricks, historical information on Solr, as well as some areas of Solr not yet covered in the Reference Guide.
- Solr Website
- Download latest Solr Release
- Introduction to Solr
- Solr Tutorial
- SOLR mailing lists: Sign-up or Search/Browse the Mailing List Archives
- Please read these tips on using the mailing lists effectively before posting.
- The Solr Relevancy FAQ] and the Solr [SolrRelevancyFAQ
- SolrResources - Books, Blogs, Reviews, Articles, Product Sheet, Presentations, etc...
- Powered by Solr
- Support - People and companies for hire
- Solr Change Log with all the juicy info about recently committed features.
- HackingSolr – Info for people interested in hacking and customizing the Solr application
- TestingSolr – Information for running Solr unit tests
- NightlyBuilds – Jenkins hosts nightly Solr builds
- Latest stable code for 6.x branch (github URL)
- TaskList of ideas for future development
- HowToContribute improvements
- Info For Committers
- HowToCompileSolr – steps tested under Windows 7 / Windows 8
- Guice + Restlet – Docs on experimental refactoring of Solr to use Guice and Restlet
Installation and Configuration
- General Installation Steps
- Includes information about useful settings in specific environments
Search and Indexing
- Indexing Documents
- Adding Documents in XML format - Covers XML syntax for adds, deletes, commits and optimizes
- Adding Documents in JSON format - Covers JSON syntax for adds, deletes, commits and optimizes
- Adding Documents in CSV format
- DataImportHandler - Solr contrib that supports full and delta indexing directly from SQL databases, and local or REST accessible XML files.
- AnalysisRequestHandler - Analyzing documents without indexing
- Solr Content Extraction Library (Solr Cell) - Covers how to index MS Word, PDF, etc. using Solr Cell (a.k.a. ExtractingRequestHandler). Also see the older version at UpdateRichDocuments
- Update Processors - Update Processors define how an update request is processed.
- Deduplication - Prevent or tag duplicate documents
- Searching Solr
- Request Handlers - Control the logic used to process requests. Several different Request Handlers are included with Solr, or you can write your own custom implementation.
- Response Writers - Control the formatting of the responses generated by Request Handlers. Several different Response Writers are included with Solr, or you can write your own custom implementation.
- Input Parameters
- Search Components - Search Components provide core functionality to a Request Handler.
- Query Syntax - Syntax for default query parsing, and how to specify a Query Parser.
- Function Queries - Using the values in fields in functions and as factors in scoring
- Faceted search - Category counts for search results
- (Geo)Spatial Search - Find results near a point
- Field Collapsing / Result Grouping - documents with a common field value are grouped
- Join - Do joins (similar to database) on documents
- Carrot2-based Document Clustering - Summarize/compare all documents returned by a query
- Language Detection - Deduce the language of a document
- Language Translation - Based upon language identification, undertake document language translation
- UIMA Natural Language Processing - Sophisticated NLP suite, originally from IBM Research
- Lucene Document Classification Integration - Index time classification integration
- OpenNLP Natural Language Processing - Simple NLP suite
- Business Rules - Alter stored documents and query results with flexible dynamic rules engine
Tips, Tricks and Use Cases
- Auto-complete - Use either Faceting with facet.prefix or Suggester or TermsComponent
- UniqueKey - Covers tips about unique keys in the schema
- Japanese Language Support - How to search Japanese text, best practices and various considerations
- Serbian Language Support - about support for Serbian language
- Using PreAnalyzedField type and PreAnalyzedUpdateProcessorFactory for integration with external document processing pipelines
- IntegratingSolr - includes information about accessing Solr from a variety of programming languages and existing third party applications.
Operations and Production
- Index Replication
- Built in SolrRequestHandler based SolrReplication
- Unix script based CollectionDistribution
- SolrJmx and SolrMonitoring
- Translations - Unofficial translations of the official documentation, in hope of easing the review process.
- :TODO: How to implement basic indexing in Tomcat