我在schema.xml中添加了一个新的排序字段,并在SOLR配置中上传了DIHConfigFile.xml和Schema.xml。<field name="recommendationRank" type="string" indexed="true" stored="true" multiValued="false" required="false"/>
在这之后,我运行了zkcli,重新启动了SOLR和zookeeper,并在solr中重新索引。
基于新字段的排序确实给予了结果,但我在响应中看不到新字段本身。
查询结果更新
{
"responseHeader":{
"zkConnected":true,
"status":0,
"QTime":11,
"params":{
"q":"recommendationRank_EN_US:2",
"indent":"on",
"wt":"json",
"debugQuery":"on",
"_":"1638448595617"}},
"response":{"numFound":0,"start":0,"docs":[]
},
"debug":{
"rawquerystring":"recommendationRank_EN_US:2",
"querystring":"recommendationRank_EN_US:2",
"parsedquery":"recommendationRank_EN_US:2",
"parsedquery_toString":"recommendationRank_EN_US:`\b\u0000\u0000\u0000\u0002",
"explain":{},
"QParser":"LuceneQParser",
"timing":{
"time":11.0,
"prepare":{
"time":0.0,
"query":{
"time":0.0},
"facet":{
"time":0.0},
"facet_module":{
"time":0.0},
"mlt":{
"time":0.0},
"highlight":{
"time":0.0},
"stats":{
"time":0.0},
"expand":{
"time":0.0},
"terms":{
"time":0.0},
"debug":{
"time":0.0}},
"process":{
"time":9.0,
"query":{
"time":8.0},
"facet":{
"time":0.0},
"facet_module":{
"time":0.0},
"mlt":{
"time":0.0},
"highlight":{
"time":0.0},
"stats":{
"time":0.0},
"expand":{
"time":0.0},
"terms":{
"time":0.0},
"debug":{
"time":1.0}}}}}
1条答案
按热度按时间zzzyeukh1#
显示的字段名称是
recommendationRank
,而在您的查询中,排序选项是recommendationRank_EN_US
。这是一个复制字段吗?我建议您执行一个简单的查询,以查看在重新索引文档后,文档是否正确地填充了新的字段值。
比如recommendationRank:xyz(根据源系统的索引逻辑,您将知道某个值)。
您是否可以与
debugQuery=on
共享上述查询的输出,以便进一步调试。此外,我建议您为您正在使用或计划用于排序/面/透视/统计/突出显示等的字段启用docValue,以避免高字段缓存并提高查询性能。