• poettian
    2019-08-21
    老师,结合您的视频和官方文档,现在知道有多种查询方式,包括:复合查询/全文本查询/term-level查询等,现在有一些混乱,比如 什么场景下用 boolen查询,什么场景下用match查询,又是什么场景下用term查询,这个我怎么去区分和使用呢?

    作者回复: 你可以自己对查询去做一些分类。

    例如terms查询是用于结构化数据的查询。全文用match查询。而bool属于一种复合查询。可以结合terms查询和match查询。

    我建议你先把查询相关的课都听一遍,然后在去尝试做分类。有一些查询是有功能上的重合的,自己去做了分类,可能更加容易加深理解。

    
     5
  • Geek_469160
    2019-07-17
    老师,怎么解决多索引 关联查询?

    作者回复: 后面会讲父子关系的查询

     1
     3
  • 氧气🌙 🐟 🌺
    2019-10-21
    问题:如下语句为什么文档三排名靠前?
    TF/IDF
    思考:
    1、每篇文档都包含apple,IDF应该一致
    2、apple在三个文档的TF,文档1是50%,文档2是50%,文档3是3/8小于50%,照这样计算,文档1和2应该比3靠前呀。


    POST /news/_bulk
    { "index": { "_id": 1 }}
    { "content":"Apple Mac" }
    { "index": { "_id": 2 }}
    { "content":"Apple iPad" }
    { "index": { "_id": 3 }}
    { "content":"Apple employee like Apple Pie and Apple Juice" }

    GET news/_search
    {
      "query": {
        "bool": {
          "must": [
            {
              "match": {
                "content": "apple"
              }
            }
          ]
        }
      }
    }

    GET _analyze
    {
      "analyzer": "standard",
      "text": "Apple employee like Apple Pie and Apple Juice"
    }
    展开
     1
     1
  • godtrue
    2019-09-20
    打卡,数据库最难最复杂的基本都是查询的功能,ES也不例外提供了各种各样的查询方式,使用不当会有性能问题,更次的会查不出自己想要的结果。这节值得反复看,先广后深,继续看,回头可以重点再看一遍。
    
     1
  • Geek_5b8961
    2019-08-07
    老师好,请问如何查靠近的数值。比如数据库里 小李5岁;小王8岁;小赵7岁。我想查最接近9岁的是谁

    作者回复: 这个可以用function score实现,看具体章节的视频

     1
     1
  • Frank Chen
    2020-01-24
    老师你好,我想问问用painless script来筛选count的话, 性能上会不会差很多?
    {
      "query":{
       "bool":{
          "must":[
            {
              "term":{
                "genre.keyword":"Comedy"
              }
            },
            {
              "script":
              {
                "script": {
                  "inline": "doc['genre.keyword'].length==1",
                  "lang": "painless"
                }
              }
            }
          ]
        }
      }
    }
    展开
    
    
  • 喵喵喵
    2020-01-17
    打卡~
    
    
  • 故事、自己写
    2019-12-22
    老师,第一次查询很慢,后面的查询会快起来,请问大概是什么原因?

    作者回复: ES中也会对一些查询实现缓存,所以会存在第一次查询相对比较慢的情况

     1
    
  • 三木禾
    2019-11-11
    老师,您好,在关于词频TF的介绍中,您这节课说的是搜索词在文档中出现的次数除以文档总字数,但是在12课的pdf中却说tf是搜索词在文档中出现的总次数,到底哪个是正确的?
    
    
  • 金多安
    2019-11-08
    老师,在调整查询语句结构对相关度算分的内容里,测试下来bool子查询和无子查询的score是一样的。是我哪里理解错误了么?
    
    
  • lzh
    2019-11-07
    老师,_id是自定义的自增数字,请问能做range查询吗

    作者回复: 应该是不行的,如果你有这个需求,可以把这个id,映射到一个额外的字段,然后进行range查询

    
    
  • 药师
    2019-09-27
    老师
    elasticsearch filter已经忽略相关度评分了 为什么还要constant_score嵌套(我查了官网constant_score必须和filter结合使用)?
     1
    
  • 标
    2019-09-01
    老师,如何验证filter是否走cache
    
    
  • 王俊杰
    2019-08-27
    老师 post_filter与query和filter 区别是什么
    好像只能用
    GET star_document/_search
    {
      "post_filter": {
        "match": {
          "introduce": "测试"
        }
      }
    }
    不能用
    GET star_document/_search
    {
      "filter": {
        "match": {
          "introduce": "测试"
        }
      }
    }
    展开
    
    
  • HSJ,
    2019-08-08
    老师请问下,如何查出被包含的结果?比如传入参数gener:[comedy,romance].查出结果gener为[
    
    
  • HSJ,
    2019-08-07
    老师请问下,如何能查出被包含的结果?比如传入数组gener:[comedy,Romance] 查出gener为
    
    
  • 张飞洪
    2019-08-06
    "query": {
        "bool": {
          "must": [
            {
              "query_string": {
                "default_field": "Name",
                "query": "阮一鸣"
              }
            }
          ]
        }
      }
    请问阮老师,假如我搜索的关键词是阮一鸣,但是返回给我的有三个同一个公司的阮一鸣,我该如何去重?
    展开

    作者回复: 一个公司有三个同名的员工,这不算去重吧?如果是同一个人,那就不应该重复写入。

     1
    
  • ||^|||
    2019-08-06
    老师:
    如果是这样写的filter会算分吗?
    {
      "query": {
        "bool": {
          "filter": [
            {
              "bool": {
                "should": [
                  { "term": { "productID.keyword": "xxx" } },
                  { "term": { "productID.keyword": "1111" } }
                ]
              }
            }
          ]
        }
      }
    }
    展开
     1
    
  • wangdexing
    2019-08-02
    POST /animals/_bulk
    { "index": { "_id": 1 }}
    { "text": "2 running Quick brown-foxes leap over lazy dogs in the summer evening." }

    POST /animals/_search
    {
      "query": {
        "bool": {
          "should": [
            { "term": { "text": "brown"}},
            { "term": { "text": "lazy"}},
            { "term": { "text": "quick"}},
            { "term": { "text": "dog"}}
          ]
        }
      }
    }
    无意中多执行了几次 _score 一会儿0.8630463 一会儿0.5469647 我用的版本都是7.2.0 这是我环境的问题吗? 我删了animals这个索引 然后多次执行index 重建并更新文档的版本 然后问题依然存在 分数还是会变一会儿0.86 一会儿0.54 "explain"=true 太长了 我就不贴出来了.
    展开

    作者回复: 查询相同的文档集,按理算分不会变的。
    除非
    1. 每次查询,你有增加或者删除文档
    2. 你的主分片书不是1,你每次删除全部数据,重新bulk写入后再做的查询

    
    
  • 木木夕Ace
    2019-07-25
    学习打卡
    
    
我们在线,来聊聊吧