Showing
1 changed file
with
3 additions
and
6 deletions
@@ -15,13 +15,10 @@ import com.yoho.search.service.utils.SearchRequestParams; | @@ -15,13 +15,10 @@ import com.yoho.search.service.utils.SearchRequestParams; | ||
15 | import com.yoho.search.service.vo.SuggestApiResult; | 15 | import com.yoho.search.service.vo.SuggestApiResult; |
16 | import org.apache.commons.collections.CollectionUtils; | 16 | import org.apache.commons.collections.CollectionUtils; |
17 | import org.apache.commons.lang.StringUtils; | 17 | import org.apache.commons.lang.StringUtils; |
18 | -import org.elasticsearch.common.lucene.search.function.FieldValueFactorFunction; | ||
19 | import org.elasticsearch.index.query.MatchQueryBuilder; | 18 | import org.elasticsearch.index.query.MatchQueryBuilder; |
20 | import org.elasticsearch.index.query.MultiMatchQueryBuilder; | 19 | import org.elasticsearch.index.query.MultiMatchQueryBuilder; |
21 | import org.elasticsearch.index.query.QueryBuilder; | 20 | import org.elasticsearch.index.query.QueryBuilder; |
22 | import org.elasticsearch.index.query.QueryBuilders; | 21 | import org.elasticsearch.index.query.QueryBuilders; |
23 | -import org.elasticsearch.index.query.functionscore.FunctionScoreQueryBuilder; | ||
24 | -import org.elasticsearch.index.query.functionscore.ScoreFunctionBuilders; | ||
25 | import org.elasticsearch.search.sort.SortBuilder; | 22 | import org.elasticsearch.search.sort.SortBuilder; |
26 | import org.elasticsearch.search.sort.SortBuilders; | 23 | import org.elasticsearch.search.sort.SortBuilders; |
27 | import org.elasticsearch.search.sort.SortOrder; | 24 | import org.elasticsearch.search.sort.SortOrder; |
@@ -330,15 +327,15 @@ public class SuggestServiceImpl implements ISuggestService, ApplicationEventPubl | @@ -330,15 +327,15 @@ public class SuggestServiceImpl implements ISuggestService, ApplicationEventPubl | ||
330 | final String countField = getCountField(paramMap); | 327 | final String countField = getCountField(paramMap); |
331 | SearchParam searchParam = new SearchParam(); | 328 | SearchParam searchParam = new SearchParam(); |
332 | MultiMatchQueryBuilder queryBuilder = QueryBuilders.multiMatchQuery(paramMap.get(SearchRequestParams.PARAM_SEARCH_KEYWORD)); | 329 | MultiMatchQueryBuilder queryBuilder = QueryBuilders.multiMatchQuery(paramMap.get(SearchRequestParams.PARAM_SEARCH_KEYWORD)); |
333 | - queryBuilder.field("keyword").field("keyword.keyword_ik").field("keyword.keyword_pinyin").field("keyword.keyword_jianpin") | 330 | + queryBuilder.field("keyword").field("keyword.keyword_ik", 10F).field("keyword.keyword_pinyin").field("keyword.keyword_jianpin") |
334 | .analyzer("ik_smart") | 331 | .analyzer("ik_smart") |
335 | .type(MultiMatchQueryBuilder.Type.BEST_FIELDS) | 332 | .type(MultiMatchQueryBuilder.Type.BEST_FIELDS) |
336 | .operator(MatchQueryBuilder.Operator.OR) | 333 | .operator(MatchQueryBuilder.Operator.OR) |
337 | .minimumShouldMatch("20%"); | 334 | .minimumShouldMatch("20%"); |
338 | 335 | ||
339 | // 根据关联的数量增加打分 _score = _score * 0.05 * log(count + 2) | 336 | // 根据关联的数量增加打分 _score = _score * 0.05 * log(count + 2) |
340 | - FunctionScoreQueryBuilder functionScoreQueryBuilder = new FunctionScoreQueryBuilder(queryBuilder); | ||
341 | - functionScoreQueryBuilder.add(ScoreFunctionBuilders.fieldValueFactorFunction(countField).factor(0.05F).modifier(FieldValueFactorFunction.Modifier.LOG2P).missing(0)); | 337 | + // FunctionScoreQueryBuilder functionScoreQueryBuilder = new FunctionScoreQueryBuilder(queryBuilder); |
338 | + // functionScoreQueryBuilder.add(ScoreFunctionBuilders.fieldValueFactorFunction(countField).factor(0.05F).modifier(FieldValueFactorFunction.Modifier.LOG2P).missing(0)); | ||
342 | 339 | ||
343 | searchParam.setQuery(queryBuilder); | 340 | searchParam.setQuery(queryBuilder); |
344 | searchParam.setPage(1); | 341 | searchParam.setPage(1); |
-
Please register or login to post a comment