与 solr 中的字符串相比,整数搜索速度较慢

Search of integer is slow when comapared to string in solr

我有一个文件,其中包含由管道分隔的整数和字符串,如下所示

abc|182|2rt|jd
yre|123|7yd|op
ifs|132|24d|oe

我创建了一个新的字段类型,如下所示

<fieldType name="pipedelimited" class="solr.TextField" sortMissingLast="true" omitNorms="true">
         <analyzer>
             <tokenizer class="solr.PatternTokenizerFactory" pattern="|"/>
             <filter class="solr.LowerCaseFilterFactory"/>
          </analyzer>
    </fieldType>

问题是当我搜索一个整数时,搜索将花费太多时间来响应, 但如果我搜索字符串响应以毫秒为单位。

请帮忙解答一下原因

就 Solr 而言,您的两个搜索示例都是文本。所以,他们应该被同等对待。

所以,要么您在描述情况时遗漏了某些内容,要么特定记录中有一些非常有趣的地方。您是否尝试搜索应该 return 相同记录的字符串和 "integer" 值。你得到相同的速度?你应该。

尝试使用调试标志,看看您能注意到什么不同。

基本上,应该通过尝试使所有其他参数尽可能相等来评估并排比较。然后关注可见的差异。