Elasticsearch组合术语和匹配短语查询和性能问题

时间:2019-01-29 20:06:42

标签: elasticsearch full-text-search elasticsearch-6 match-phrase elastic-cache

在下面,我共享了一个Elastic Search原始查询。我使用了ElasticSearch 6.X版本。

在上面给定的ElasticSearch Raw查询中,我尝试在下面生成类似此t-sql命令的结果。

这是T-Sql命令

Select * from where Departman=”IT” and CountryCoude=”US” and employeeName Like’Ey%’ and employeeSurname like’Ars%’ and birthdate>=’1991-01-01’

这是ElasticSearch的原始查询

  

注意:部门和国家/地区字段标记为[关键字]以获取准确的信息   匹配。

   {
  "size": 3,
  "query": {
    "bool": {
      "must": [
        {
          "match_phrase_prefix": {
            "employeeName": {
              "query": "Ey"
            }
          }
        },
        {
          "match_phrase_prefix": {
            "emplotyeSurname": {
              "query": "Ars"
            }
          }
        },
        {
          "range": {
            "birthday": {
              "gte": "1991-01-01T00:00:00"
            }
          }
        }
      ],
      "filter": [
        {
          "terms": {
            "Departman": [
              "IT"
            ]
          }
        },
        {
          "terms": {
            "CountyryCode": [
              "US"
            ]
          }
        }
      ]
    }
  }
}

我对此弹性搜索查询有一些疑问。

首先,我尝试结合术语和匹配查询。我是正确的还是您有什么建议吗?

在那儿,我在departman和country中使用了filter关键字。我的目标是通过Department和countryCode字段对过滤器使用ElasticSearch的缓存功能。我正确吗?

0 个答案:

没有答案