【发布时间】:2013-06-18 03:59:55
【问题描述】:
我有一个业务案例,我需要检查搜索查询是否与展示业务有关
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 变为 new_york。 在查询期间,我将获得纽约夜总会的多种组合
例如:night night_clubs night_clubs_new night_clubs_new_york clubs_new clubs_new_york new_york york 并查询地点。
为上述位置的文档设置一个单独的核心以提高速度是个好主意吗?
这是一个好的解决方案吗?
【问题讨论】: