【问题标题】:How to query Solr shard如何查询 Solr 分片
【发布时间】:2014-11-22 10:44:26
【问题描述】:

我已关注this 在 Solr 中设置分片。根据本主题“在两个本地服务器上测试索引分片”,我能够查询分片并获得结果(somehose:port1/solr/select?shards=somehost:port1/solr,somehost:port2/solr&indent=true&q=你好世界 )。

在该页面中还提到“与其要求用户明确包含分片参数,不如在 solrconfig.xml 的 RequestHandler 部分中将此参数配置为默认值。” 因此,我在 port1 上运行的 solr 实例的 solrconfig.xml 中进行了更改

    <requestHandler name="/select" class="solr.SearchHandler">

      <lst name="defaults">
       <str name="echoParams">explicit</str>
       <int name="rows">10</int>
        <str name="df">text</str>
       </lst>
    <lst name="shards.info">
     <lst name="localhost:port2/solr">
     <long name="numFound">1333</long>
    <float name="maxScore">1.0</float>
    <str name="shardAddress">http://localhost:port2/solr</str>
   <long name="time">686</long>
   </lst>
  <lst name="localhost:port1/solr">
   <long name="numFound">342</long>
   <float name="maxScore">1.0</float>
   <str name="shardAddress">http://localhost:port1/solr</str>
   <long name="time">602</long>
  </lst>
  </lst>

现在,我正在尝试访问 somehost:port1/solr/collection1/select?q=helloworld&wt=json&indent=true 但我没有得到想要的回应。请让我知道我在这里缺少什么?

【问题讨论】:

    标签: solr sharding


    【解决方案1】:

    您不能只将响应中的内容复制到您的配置文件中——这两种格式完全不同。该参考是指 defaults 部分中的每个条目都添加到查询字符串中(除非它们已经在那里提供 - 如果您想强制某个不能被覆盖的值,还有一些选项)。

    <requestHandler name="/selectdistributed" class="solr.SearchHandler">
        <lst name="defaults">
            [...]
            <str name="shards">somehost:port1/solr,somehost:port2/solr</str>
        </lst>
    </requestHandler>
    

    .. 应该做你想做的事。这会将 shards=somehost:port1/solr,somehost:port2/solr 添加到通过该处理程序的所有请求的查询字符串中。

    【讨论】:

    • 如果我按照您的建议执行此操作,则查询将进入 apache 站点中提到的无限循环。 “不要将 shards 参数添加到标准 requestHandler 中;否则,搜索查询可能会进入无限循环。而是定义一个使用 shards 参数的新 requestHandler,并将分布式搜索请求传递给该处理程序。”
    • 是的,定义一个新的处理程序——我没有提到,抱歉。我也会将其添加到定义中。只是为了解释一下 - 您在配置文件中添加的内容是分布式搜索返回的示例,而不是如何配置它。
    猜你喜欢
    • 1970-01-01
    • 2015-04-12
    • 1970-01-01
    • 2018-05-08
    • 2023-03-27
    • 2014-05-29
    • 2014-05-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多