【发布时间】:2020-09-03 11:38:48
【问题描述】:
这是一个示例文档 -
{
"id": "AIRPORT-LAS",
"RANK": 80.0,
"TYPE": "AIRPORT",
"COUNTRY_NAME": "United States",
"COUNTRY_CODE": "US",
"ISO_COUNTRY_CODE": "US",
"LATITUDE": "36.08047103880001",
"LONGITUDE": "-115.14331054699983",
"LATLON": [
"36.08047103880001,-115.14331054699983"
],
"CITY_CODE": "LAS",
"CITY_NAME": "Las Vegas",
"PROVINCE_CODE": "NV",
"PROVINCE_NAME": "NEVADA",
"AIRPORT_NAME": "McCarran Intl Airport",
"AIRPORT_CODE": "LAS"
}
现在,根据客户搜索的位置(地理位置),我将使用上述每个文档的州和国家/地区组合获得多个 RANK。
例如-
For AIRPORT-LAS, I'll have the following -
USA - CA - 100
USA - NJ - 80
USA - NY - 75
.... rest of combinations
我正在尝试理解以下内容 -
- 将这组新等级索引到现有文档的最佳方法是什么?作为一个单独的集合?还是作为嵌套数据集?
- 如何在搜索时使用新的排名集提升我的结果? [所以基本上,如果用户从美国 - 加州搜索,我应该使用 RANK=100 来提升我的搜索结果。我会在搜索时知道州和国家/地区。]
谢谢!
【问题讨论】:
-
您现在从哪里获得提升?我不确定您是否需要为它们编制索引;因为您在创建查询时知道国家 + 州,所以查找提升然后为与
bq或boost匹配的文档添加提升? -
如果您看到示例文档,则有一个 RANK 字段。这就是用于匹配相关性的字段。
标签: solr autocomplete solrj solr-boost