solr - 使用 solrj 进行分布式搜索?

标签 solr solrj

我可以使用 solrj 执行分布式搜索吗?如果是这样怎么办? (注意:不是solr)

我没有找到这方面的任何文档。如果您发现任何/以前使用过,请帮助我。

最佳答案

假设您的分片是:

“本地主机:8983/solr”和“本地主机: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);

关于solr - 使用 solrj 进行分布式搜索?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9665688/

相关文章:

Solr 使用 ContentStreamUpdateRequest 上传文件时出错

mysql - django + 在数据库中搜索

java - Solr 编码/解码数据

solr - 如何通过Gradle运行Solr 4.4?

apache - 如何使用 SolrJ 重新加载 Solr 核心?

java - solrj 无法提升结果

solr - 尝试通过 Solrj 向服务器添加文档时出现错误请求错误

solr - 来自 Solrj 的引用格式 json

高可用性的 Solr 主从故障转移设置

solr - 如何在 SolrCloud 上强制领导者?