Elasticsearch 认证模拟题 - 16

一、题目

创建一个搜索模版,要求 match_prase 查询,并且用指定的格式高亮,并排序

rust 复制代码
# 创建索引
PUT my_index
{
  "settings": {
    "number_of_replicas": 0,
    "number_of_shards": 1
  },
  "mappings": {
    "properties": {
      "a":{
        "type": "text"
      },
      "b":{
        "type": "integer"
      }
    }
  }
}

# 灌入数据
POST my_index/_bulk
{"index":{}}
{"a":"elasticsearch in action", "b":1}
{"index":{}}
{"a":"kibana in action", "b":2}
1.1 考点
  1. 搜索模板
  2. 高亮
  3. 排序
1.2 答案
rust 复制代码
# 创建索引模板
PUT _scripts/my_search_template
{
  "script": {
    "lang": "mustache",
    "source": {
      "query": {
        "match_phrase": {
          "a": "{{query_string}}"
        }
      },
      "highlight": {
        "fields": {
          "a": {
            "pre_tags": [
              "<em>"
            ],
            "post_tags": [
              "</em>"
            ]
          }
        }
      },
      "sort": [
        {
          "b": "desc"
        }
      ]
    }
  }
}

# 查询索引模板预览
POST _render/template
{
  "id": "my_search_template",
  "params": {
    "query_string": "hello world"
  }
}

# 查询结果验证
GET my_index/_search/template
{
  "id": "my_search_template",
  "params": {
    "query_string": "kibana is action"
  }
}

二、题目

查询索引 task1,获取每个月 price 字段的平均值,并返回 2022 年的数据。

rust 复制代码
PUT task1
{
  "settings": {
    "number_of_replicas": 0,
    "number_of_shards": 1
  },
  "mappings": {
    "properties": {
      "rq":{
        "type": "date"
      },
      "price":{
        "type": "integer"
      }
    },
    "runtime":{
      "price_flag":{
        "type":"long",
        "script":{
          "source":
          """
          if(doc['price'].value<=100 && doc['price'].value>0) 
          emit(-1);
          if(doc['price'].value>100 && doc['price'].value<=200) 
          emit(1);
          """
        }
      }
    }
  }
}

POST task1/_bulk
{"index":{}}
{"rq":"2021-01-01","price":"50"}
{"index":{}}
{"rq":"2021-02-01","price":"150"}
{"index":{}}
{"rq":"2021-03-01","price":"250"}
{"index":{}}
{"rq":"2021-04-01","price":"50"}
{"index":{}}
{"rq":"2021-05-01","price":"250"}
{"index":{}}
{"rq":"2021-06-01","price":"150"}
{"index":{}}
{"rq":"2021-07-01","price":"50"}
{"index":{}}
{"rq":"2021-08-01","price":"450"}
{"index":{}}
{"rq":"2021-09-01","price":"80"}
{"index":{}}
{"rq":"2021-10-01","price":"550"}
{"index":{}}
{"rq":"2021-11-01","price":"50"}
{"index":{}}
{"rq":"2021-12-01","price":"500"}
{"index":{}}
{"rq":"2021-12-01","price":"50"}
{"index":{}}
{"rq":"2022-01-01","price":"200"}
2.1 考点
  1. 聚合
  2. 聚合后通过查询过滤结果(这个知识点真的是一顿好找)
2.2 答案
rust 复制代码
GET task1/_search
{
  "aggs": {
    "every_month": {
      "date_histogram": {
        "field": "rq",
        "calendar_interval": "month"
      },
      "aggs": {
        "avg_price": {
          "avg": {
            "field": "price"
          }
        }
      }
    }
  },
  "post_filter": {
    "range": {
      "rq": {
        "gte": "2021-12-31",
        "lte": "2023-01-01"
      }
    }
  }
}
相关推荐
好家伙VCC19 分钟前
数学建模模型 全网最全 数学建模常见算法汇总 含代码分析讲解
大数据·嵌入式硬件·算法·数学建模
2301_781668613 小时前
Elasticsearch 02
大数据·elasticsearch·搜索引擎
isfox4 小时前
Google GFS 深度解析:分布式文件系统的开山之作
大数据·hadoop
用户Taobaoapi20144 小时前
京东店铺所有商品API技术开发文档
大数据·数据挖掘·数据分析
在未来等你5 小时前
Kafka面试精讲 Day 8:日志清理与数据保留策略
大数据·分布式·面试·kafka·消息队列
江畔独步6 小时前
Flink TaskManager日志时间与实际时间有偏差
大数据·flink
TDengine (老段)6 小时前
TDengine 选择函数 Last() 用户手册
大数据·数据库·sql·物联网·时序数据库·tdengine·涛思数据
TDengine (老段)7 小时前
TDengine 选择函数 First 用户手册
大数据·数据库·物联网·时序数据库·iot·tdengine·涛思数据
沧海一粟青草喂马8 小时前
抖音批量上传视频怎么弄?抖音矩阵账号管理的专业指南
大数据·人工智能·矩阵
理智的煎蛋8 小时前
CentOS/Ubuntu安装显卡驱动与GPU压力测试
大数据·人工智能·ubuntu·centos·gpu算力