Solr suggest - a method to populate a dictionary file based on previous successful searches

I am working on providing auto-suggestion functionality in our search application (which Solr uses) based on terms used in previous successful searches. In the Solr documentation ( ) I see how to do this using a dictionary file. My question is, does Solr have any utilities to populate the dictionary file, or do I need to write my own?

I haven't found any utilities for this in the Solr documentation. But before I started writing my own work on creating a dictionary file, I decided it was worth asking this question.


source to share

1 answer

We had a similar requirement for automatic searches in popular searches.
Solr did not provide or use a search solution, it does provide one based on an index or a dictionary.
You can use Solr Suggestester and create a new index with successful searches and suggest based on that suggestion.

Otherwise, you will need to create your own popular search solution.

What have we tried -

  • Build an index with searches and their counter and provide autosuggest based on it.
  • We didn’t want to keep counting and overhead to maintain and grow, so we indexed all of the successful search terms multiple times as we searched for them.
  • We used the "Terms Component" because it provides a terms.prefix parameter to get an auto-suggestion function and when conditions are returned based on which takes care of popularity.
  • Since the field used for terms was only marked indexed and not saved, the index size did not increase significantly when the same words were clicked multiple times.


All Articles