Query Parsers

Bmax Query Parser

A boosting dismax query parser for Apache Solr. The bmax query parser relies on field types and tokenizer chains to parse the user query, discover synonyms, boost and penalize terms at query time. Hence it is highly configurable. The lucene query composed is a boosted and reranked dismax query with a minimum must match of 100%.

  • For E-Commerce centric applications
  • Used in production
  • Native Lucene query syntax not supported
  • Solr Plugin (JAR)

Querqy

Querqy is a framework for query preprocessing in Java-based search engines. It comes with a powerful, rule-based preprocessor named 'Common Rules Preprocessor', which provides query-time synonyms, query-dependent boosting and down-ranking, and query-dependent filters.

  • Used in production
  • Solr Plugin (JAR)

Lucene/Solr Synonym-Expanding EDisMax Parser

Solr query parser plugin that performs proper query-time synonym expansion.

  • Supports phrases in query-time synonyms
  • Apply same synonyms across all fields
  • Simple setup
  • Cannot tune synonyms per field
  • May generate huge queries
  • Solr Plugin (JAR)

Query Segmenter

The QuerySegmenter core library is used to find typed segments within a user query. For example, for the query “Pizza New York”, the segment “New York” can be extracted as a segment of type “city”. The typed segments are matched against a dictionary, which is usually a text file.

  • Used in production
  • Supported Text, Geo, Date Segmenter
  • Solr Plugin (JAR)

Query Redis

This extension is a ParserPlugin that provides a Solr query parser based on data stored in Redis. RedisQParserPlugin creates a connection with Redis and passes the connection object to RedisQParser responsible for fetching data and building a query.

  • Used in production
  • Highlight redis query
  • Solr Plugin (JAR)

Analyzers

solr-analyzers

A Solr analyzer collection of tokenizers and filters.

  • AnalyzingSentenceTokenizer to remove bad sentences from text
  • Used in production
  • Solr Plugin (JAR)

solr-JDBC

A Solr synonym and stopword filter for reading synonyms out of JDBC.

  • Pull synonyms via JDBC out of databases
  • Highly configurable, use SQL to retrieve synonyms
  • Used in production
  • Solr Plugin (JAR)

SearchComponents

Language Detection Component

Solr search component for language detection.

  • Build Your Own

Request Sanitizer Component

Solr search component for avoiding insane request params such as too large rows or offset params

  • Override client request params in config
  • Harden RequestHandler endpoints without code
  • Solr Plugin (JAR)

Solr Researcher

The AutoComplete (AC) enhances the search experience through suggest-as-you-type and auto-complete functionality built into the search form. As one starts to enter search terms, the module detects a pause in typing and offers a list of suggested searches. One can then easily pick one of the suggestions or continue refining the suggestions by typing in more of the query. For example, if you type "bass" AC might offer suggestions that include "bass fishing" or "bass guitar", and even "sea bass" (note how "bass" is not necessarily the first word)

  • Used in production
  • Automatic mispelling correction
  • Suggestion group by a field
  • Full word match boosting, "word order" boost
  • Supported distributed search
  • Solr Plugin (JAR)

Solr AutoComplete

Solr SearchComponent for altering and re-executing queries that product poor results. It contains two components: Relaxer & DYM (aka Did You Mean ReSearcher). They can be used to improve user's search experience.

  • Used in production
  • Relax phrase query, mm parameter, term
  • Correct mispell query
  • Supported distributed search
  • Solr Plugin (JAR)

Other

Thymeleaf response writer

A Solr response writer to use the Thymeleaf templating engine for HTML templating.

  • Easy templating in Thymeleaf
  • Used in production
  • Solr Plugin (JAR)

SolRDF: Apache Solr meets RDF

SolRDF (i.e. Solr + RDF) is a set of Solr extensions for managing (index and search) RDF data.

  • Solr Plugin (JAR)

Mapping Update Processor

The MappingUpdateProcessor lets you map value of a field to some other value based on a dictionary

  • Build Your Own

SearchSchemer

SearchSchemer is a simple application which allows to convert index structure between the following search engines: Solr, ElasticSearch, SenseiDB

  • Build Your Own

Contributing

Got a cool Solr plugin that is missing in the list? Want it added to the list above? Shoot us a line, create a pull request or open an issue! We’re happy for every new plugin!