上一页 1 2 3 4 5 6 7 8 9 10 ··· 18 下一页
摘要: 我们可以做到自定义一个function_score函数,自己将某个field的值,跟es内置算出来的分数进行运算,然后由自己指定的field来进行分数的增强 一、准备数据 给所有的帖子数据增加follower数量 POST /forum/article/_bulk { "update": { "_id": "1"} } { "doc" : {"follower_num" ... 阅读全文
posted @ 2018-03-08 19:57 outback123 阅读(1016) 评论(0) 推荐(0) 编辑
摘要: 对相关度评分进行调节和优化的常见的4种方法 一、query-time boost, 如果认为某一个term的比较重要,就把这个term的权重设的大一点,也就是把boost的值设的大一点。 GET /forum/article/_search { "query": { "bool": { "should": [ { ... 阅读全文
posted @ 2018-03-08 16:14 outback123 阅读(441) 评论(0) 推荐(0) 编辑
摘要: 主要知识点: boolean model IF/IDF vector space model 一、boolean model 在es做各种搜索进行打分排序时,会先用boolean model 进行初步的筛选,boolean model类似and这种逻辑操作符,先过滤出包含指定term的doc。must/must not/should(过滤、包含、不包含 、可能包含)这几种情... 阅读全文
posted @ 2018-03-08 12:34 outback123 阅读(760) 评论(0) 推荐(0) 编辑
摘要: 一、ngram和index-time搜索推荐原理 1、什么是ngram 假设有一个单词:quick,在5种长度下的ngram情况如下: ngram length=1,q u i c k ngram length=2,qu ui ic ck ngram length=3,qui uic ick ngram length=4,quic uick ngram length=5,qu... 阅读全文
posted @ 2018-03-08 11:52 outback123 阅读(856) 评论(0) 推荐(0) 编辑
摘要: 主要知识点: 搜索推荐的使用场景 用法 原理 一、搜索推荐的使用场景 搜索推荐,就是在你做搜索时,当你写出一部搜索词时,es会自提示接下来要写的词,比如当你在搜索hello w 时,如果es中有如下文档,则es会自动提示hello word、hello we、hello wind。类似我们在用百度时的自动搜索提示。 hello world hello we ... 阅读全文
posted @ 2018-03-08 10:42 outback123 阅读(498) 评论(0) 推荐(0) 编辑
摘要: 主要知识点: 前缀搜索 通配符搜索 正则搜索 一、前缀搜索 假如有如下doc数据: C3D0-KD345 C3K5-DFG65 C4I8-UI365 现在搜索前缀为C3数据,会把前两个都搜索出来 1、语法: GET my_index/my_type/_search { "query": { "prefix": { "t... 阅读全文
posted @ 2018-03-08 10:19 outback123 阅读(814) 评论(0) 推荐(0) 编辑
摘要: 一、match和phrase match(proximity match)区别 1、match:只要简单的匹配到了一个term,就会将term对应的doc作为 结果返回。 2、phrase match : 首先扫描到所有term的doc list; 找到包含所有term的doc list; 然后对每个doc都计算每个term的position,然后进行复杂的计算... 阅读全文
posted @ 2018-03-08 09:03 outback123 阅读(175) 评论(0) 推荐(0) 编辑
摘要: 主要知识点: 召回率的慨念 精准度的慨念 match和近似匹配混合使用方法 召回率(recall):比如你搜索一个java spark,总共有100个doc,能返回多少个doc作为结果,就是召回率。 精准度(precision):比如你搜索一个java spark,能不能尽可能让包含java spark,或者是java和spark离的很近的doc... 阅读全文
posted @ 2018-03-08 09:02 outback123 阅读(448) 评论(0) 推荐(0) 编辑
摘要: 主要知识点: slop的含义(内在原理) slop的用法 一、slop的含义是什么? query string(搜索文本)中的几个term,要经过几次移动才能与一个document匹配,这个移动的次数,就是slop 举例如下:一个query string经过几次移动之后可以匹配到一个document,然后设置slop 假如有如下一句话:hello world, java i... 阅读全文
posted @ 2018-03-08 09:01 outback123 阅读(534) 评论(0) 推荐(0) 编辑
摘要: 主要知识点: match_phrase的使用场景 match_phrase的用法 match_phrase的原理 一、什么是近似匹配 match_phrase的使用场景 现假设有两个句子 1、java is my favourite programming language, and I also think spark is a very good bi... 阅读全文
posted @ 2018-03-08 09:00 outback123 阅读(10894) 评论(0) 推荐(3) 编辑
上一页 1 2 3 4 5 6 7 8 9 10 ··· 18 下一页