我有一个业务案例,我需要检查搜索查询是否与展示业务有关
eg: q="night clubs new york"
我的数据库中有 300 万+条记录,其中包含国家、州城市和地区的列表,并且我有一个业务类别列表。
我要做的就是检查查询中是否有商业类别(夜总会),是否有城市、州或国家/地区的名称(纽约)。所以我正在检查为以下查询重新调整的结果数量。如果我得到 2 numResults 那么这是一个业务查询,然后我查询我的 Solr 索引来搜索业务。
query: places_ss:(night clubs new york) OR categories_ss:(night clubs new york)
速度问题:我应该如何在 SOLR 中保存城市、州和国家的列表以获得最大的搜索速度?
- 有一个文档 id:places 并在数组 places_ss 中添加不同的城市、州和国家
- 在数组中的每个文档中有多个具有不同 ID 的文档,其中包含 100,000 个地名。?
有一个或多个带有 place_s 字符串(不是数组)的文档,每个地方用空格分隔,每个空格用下划线分隔,例如:纽约变成 new_york。在查询期间,我将获得纽约夜总会的多种组合
例如: night night_clubs night_clubs_new night_clubs_new_york clubs_new clubs_new_york new_york york 并查询地点。
为上述地方的文件设置一个单独的核心以提高速度是个好主意吗?
这是一个好的解决方案吗?