The Suggester “FileDictionaryFactory” resolves the sourceLocation parameter
against the SolrResourceLoader, and in SolrCloud that’s
ZkSolrResourceLoader.  The base SolrResourceLoader supports
a solr.allow.unsafe.resourceloading=true system property to be set which
basically allows you to refer to any file on the file system without being
limited to the instance directory of the current core.  The
ZkSolrResourceLoader is pretty straight-forward and doesn’t have this
option.  So effectively, if you’re using SolrCloud, your suggester input
file needs to go into ZooKeeper.  AFAIK, ZooKeeper’s data is all in-memory
and, I may be mistaken, but there are limits, like 2G for the whole
ZooKeeper state?  I’d *really* like to avoid putting this data into
ZooKeeper.  Does anyone have any suggestions or further input?

I think at this point I may have to approach this by creating a special
collection that exists purely for suggest so that I could then
use DocumentDictionaryFactory.

~ David

Reply via email to