相关性提升在 Solr 中非常慢



我有一个Solr索引,里面有大约2.5M个项目,我正在尝试使用ExternalFileField来提高相关性。不幸的是,当我尝试这样做时,它非常慢,尽管它是一台强大的机器并且 Solr 有很多可用内存。

在外部文件中,我有以下内容:

747501=3.8294805903e-07
747500=3.8294805903e-07
1718770=4.03292174724e-07
1534562=3.8294805903e-07
1956010=3.8294805903e-07
747509=3.8294805903e-07
747508=3.8294805903e-07
1718772=3.8294805903e-07
1391385=3.8294805903e-07
2089652=3.8294805903e-07
1948271=3.8294805903e-07
108368=3.84404072186e-06

每一行都是一个文档 ID,它是相应的提升因子。

在我的查询中,我使用的是 edismax,并且我正在使用 boost 参数,将其设置为 pagerank。整个查询都在这里。

在我的架构中,我有:

<!-- External File Field Type-->
<fieldType name="pagerank"
           keyField="id"
           stored="false"
           indexed="true"
           omitNorms="false"
           class="solr.ExternalFileField"
           valType="float"/>

   <field name="pagerank"
          type="pagerank"
          indexed="true"
          stored="true"
          omitNorms="false"/>

但表现只是,非常糟糕。我是否缺少设置或其他内容?

根据 javadoc

外部文件可以按键字段排序或取消排序,但它 如果不排序,速度会慢得多(未经测试)。

如我所见,您文件中的 id 未排序。你能对它进行分类并测试它是否有帮助吗?

最新更新