我正在使用维基百科主题名称为我的全文索引实验开发一个模型。
我在“主题”(旧版)上设置和索引,并对以下内容进行全文搜索:'united states'
:
start n=node:topic('name:(united states)') return n
第一个结果根本不相关:
'List of United States National Historic Landmarks in United States commonwealths and territories, associated states, and foreign states'
[...]
而实际的“美国”则深埋在列表的深处。
因此,它提高了problem为了找到结果的最佳匹配(例如 levenshtein、bigram 等算法),您首先必须获取所有物品匹配模式。
这将是一个严重的限制,因为在这种情况下我有 21K 行,大约 4 秒。
neo4j 使用哪些算法对全文搜索 (START) 的结果进行排序?它使用什么原理对结果进行排序以及如何使用密码更改它?
在文档中,编写了使用 JAVA api 来应用 sort() - 如果有一个教程来指定要修改的文件,并了解在进行任何调整之前使用哪个排名原理,将会非常有用。
根据以下评论进行编辑 - 结果分页可以为:
n=node:topic('名称:(美国)') return n 跳过 10 限制 50;
(在限制之前跳过)但我需要确保第一个结果是有意义的before分页。
我不知道lucene使用什么排序算法来对结果进行排序。
然而,关于分页,如果你改变限制的顺序并跳过如下,应该没问题。
start n=node:topic('name:(united states)') return n skip 10 limit 50 ;
我还要补充一点,如果您正在执行全文搜索,也许像 solr 这样的解决方案更合适。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)