在将 6 条记录插入到我的弹性搜索数据库后,我正在尝试一个弹性搜索示例。
插入的记录是简单的 json,有两个属性 Id 和 text
"OCC-001","Car Damaged During Loading"
"OCC-002","Car jango jango jango Damaged Loading"
"OCC-003","hjjkhjkasd hjkhjklhas d Cars asdasd jango asdsas jango jango Damaged asdsad asdasdasd Loading"
"OCC-004","This should not come at all "
"OCC-005","This may come Car"
"OCC-006","Will this come Cars"
我正在做如下搜索
SearchQuery searchQuery = new NativeSearchQueryBuilder().withQuery(
matchQuery("title","Car Damaged"))
.build();
FacetedPage<Occurrence> occurrences = myElasticSearchRepository.search(searchQuery);
return occurrences;
我得到了错误的结果和错误的顺序
"OCC-005","This may come Car"
"OCC-001","Car Damaged During Loading"
"OCC-002","Car jango jango jango Damaged Loading"
当我使用以下查询进行相同的搜索时,我得到了正确的结果,但顺序不同
http://localhost:9200/myIndex/cars/_search?q=Car%20Damaged
"OCC-001","Car Damaged During Loading"
"OCC-002","Car jango jango jango Damaged Loading"
"OCC-005","This may come Car"
"OCC-003","hjjkhjkasd hjkhjklhas d Cars asdasd jango asdsas jango jango Damaged asdsad asdasdasd Loading"
看起来我在做一些根本不正确的事情。
好心提醒。
我在这个例子中使用了嵌入式弹性搜索。调试一段时间后,我尝试删除并重新创建索引。
您可以使用http://localhost:9200/_cat/indices?v 监控索引。有一个用于弹性搜索所有主要功能的备忘单 - 清除缓存,刷新索引等。
我的索引可能已损坏。我删除了旧索引并以不同的名称重新创建了索引,并且它按预期工作。
搜索结果是相关的,分数与预期结果相匹配。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句