网站大量收购独家精品文档,联系QQ:2885784924

04es搜索详解查询建议.pptx

  1. 1、本文档共15页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
04-搜索详解补充Suggest-查询建议作者:Mike讲师介绍 动脑学院 -Mike老师系统架构师、研发经理◆十余年Java行业经验。◆曾就职华为、网易、当当。◆从事企业、互联网应用、电商平台、大数据平台等的架构设计、研发。◆精通java、javaEE、擅长高并发、分布式、大数据、高可用系统的架构设计。◆ QQ: 3266399810目 录 1学习目标23Suggester 介绍查询建议介绍学习目标学完本课题,你应达成如下目标:掌握词项、短语查询建议器的用法掌握自动补全建议器的用法目 录 1学习目标23Suggester 介绍查询建议介绍Suggest 查询建议介绍查询建议是什么?查询建议,为用户提供良好的使用体验。主要包括: 拼写检查; 自动建议查询词(自动补全)Suggest 查询建议介绍ES中查询建议的API查询建议也是使用_search端点地址。在DSL中suggest节点来定义需要的建议查询。POST _search{ suggest: { my-suggest-1 : { text : tring out Elasticsearch, term : { field : message } }, my-suggest-2 : { text : kmichy, term : { field : user } } }}POST twitter/_search{ query : { match: { message: tring out Elasticsearch } }, suggest : { my-suggestion : { text : tring out Elasticsearch, term : { field : message } } }}定义建议查询一个建议查询名查询文本使用词项建议器指定在哪个字段上获取建议词Suggest 查询建议介绍ES中查询建议的API多个建议查询可以使用全局的查询文本POST _search{ suggest: { text : tring out Elasticsearch, my-suggest-1 : { term : { field : message } }, my-suggest-2 : { term : { field : user } } }}目 录 1学习目标23Suggester 介绍查询建议介绍Suggester 介绍Term suggesterterm 词项建议器,对给入的文本进行分词,为每个词进行模糊查询提供词项建议。对于在索引中存在词默认不提供建议词,不存在的词则根据模糊查询结果进行排序后取一定数量的建议词。常用的建议选项:text 指定搜索文本field 获取建议词的搜索字段analyzer 指定分词器size 每个词返回的最大建议词数 sort 如何对建议词进行排序,可用选项:score: 先按评分排序、再按文档频率排、term顺序;frequency: 先按文档频率排,再按评分、term顺序排。suggest_mode 建议模式,控制提供建议词的方式:missing: 仅在搜索的词项在索引中不存在时才提供建议词,默认值;popular: 仅建议文档频率比搜索词项高的词 . always: 总是提供匹配的建议词。Suggester 介绍phrase suggesterphrase 短语建议,在term的基础上,会考量多个term之间的关系,比如是否同时出现在索引的原文里,相邻程度,以及词频等POST /ftq/_search{ query: { match_all: {} }, suggest : { myss:{ text: java sprin boot, phrase: { field: title } } }}Suggester 介绍Completion suggester自动补全针对自动补全场景而设计的建议器。此场景下用户每输入一个字符的时候,就需要即时发送一次查询请求到后端查找匹配项,在用户输入速度较高的情况下对后端响应速度要求比较苛刻。因此实现上它和前面两个Suggester采用了不同的数据结构,索引并非通过倒排来完成,而是将analyze过的数据编码成FST和索引一起存放。对于一个open状态的索引,FST会被ES整个装载到内存里的,进行前缀查找速度极快。但是FST只能用于前缀查找,这也是Completion Suggester的局限所在。https://www.elastic.co/guide/en/elasticsearch/reference/current/search-suggesters-completion.htmlSuggester 介绍Completion suggester自动补全为了使用自动补全,索引中用

文档评论(0)

+ 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档