While going through SpellCheck feature in Solr, I found following types of solr SpellChecker
- IndexbasedSpellChecker
- DirectSolrSpellChecker
- FileBasedSpellChecker
What I understood from solr docs definition "The DirectSolrSpellChecker uses terms from the Solr index without building a parallel index like the IndexBasedSpellChecker" is, IndexbasedSpellChecker creates a parallel index and we need to rebuild this parallel index whenever there is a change in base index using which parallel index is built
But in DirectSolrSpellChecker no parallel index will be created so no need to rebuild again and again
My question is if creating parallel index is the only difference between these two spellcheck types, why did solr created new type DirectSolrSpellChecker in Solr4.0 release instead of updating IndexbasedSpellChecker.
Since they have not updated IndexbasedSpellChecker but created new type called DirectSolrSpellChecker my question is :
What is the advantage of building parallel index(as in IndexbasedSpellChecker) and advantage of spell check without building parallel index(as in DirectSolrSpellChecker)
What is the actual difference between IndexbasedSpellChecker and DirectSolrSpellChecker
When should one use IndexbasedSpellChecker and DirectSolrSpellChecker