Elasticsearch 쿼리 가중치(qbit)

2550 단어 elasticsearchboost

필드의 무게 증가


multi_match

  • 기본 type은 best_fields
  • GET /_search
    {
      "query": {
        "multi_match": {
          "query": "this is a test",
          "fields": ["subject^3", "message"]
        }
      }
    }
  • most_fields
  • GET /_search
    {
      "query": {
        "multi_match": {
          "query": "this is a test",
          "type": "most_fields",
          "fields": ["subject^3", "message"]
        }
      }
    }
    //  
    GET /_search
    {
      "query": {
        "bool": {
          "should": [
            {
              "match": { "subject": { "query": "this is a test", "boost": 3 }}
            },
            {
              "macth": { "message": "this is a test" }
            }
          ]
        }
      }
    }

    query_string

    GET /_search
    {
      "query": {
        "query_string": {
          "fields": ["content", "name^5"],
          "query": "this AND that OR thus"
        }
      }
    }

    simple_query_string

    GET /_search
    {
      "query": {
        "simple_query_string": {
          "query": """"fried eggs" +(eggplant | potato) -frittata""",
          "fields": ["title^5", "body"],
          "default_operator": "and"
        }
      }
    }

    자구의 권중을 높이다

  • bool 조회
  • GET /_search
    {
      "query": {
        "bool": {
          "should": [
            {
              "match": { "subject": { "query": "this is a test", "boost": 3 }}
            },
            {
              "macth": { "message": "this is a test" }
            }
          ]
        }
      }
    }

    인덱스 가중치 증가

  • indices_boost
  • GET /_search
    {
        "indices_boost" : [
            { "alias1" : 1.4 },
            { "index*" : 1.3 }
        ]
    }

    본문
    qbit snap

    좋은 웹페이지 즐겨찾기