Распределенный поиск с использованием Solrj? - PullRequest
4 голосов
/ 12 марта 2012

Могу ли я выполнить распределенный поиск, используя solrj? Если так, то как? (примечание: не солр)

Я не нахожу никакой документации в этом аспекте. Пожалуйста, помогите мне, если вы обнаружите / использовали это раньше.

1 Ответ

8 голосов
/ 12 марта 2012

Предполагая, что ваши шарды:

"localhost: 8983 / solr" и "localhost: 7574 / solr"

Вы можете выполнить распределенный поиск с помощью solrj, например:

String shards = "localhost:8983/solr,localhost:7574/solr";
StringBuffer request = new StringBuffer();
request.append("&q=" + query);
request.append("&shards=" + shards);
SolrParams solrParams = SolrRequestParsers.parseQueryString(request
                .toString());
QueryResponse rsp = server.query(solrParams);

альтернативно, вы можете использовать класс ModifiableSolrParams:

String shards = "localhost:8983/solr,localhost:7574/solr";
ModifiableSolrParams solrParams = new ModifiableSolrParams();
solrParams.set("q", query);
solrParams.set("shards", shards);
QueryResponse rsp = server.query(solrParams);
...