当前位置: 首页 > news >正文

Elasticsearch 认证模拟题 -2

一、题目

有一个索引 task3,其中有 fieldafieldbfieldcfielde 现要求对 task3 重建索引,重建后的索引新增一个字段 fieldg 其值是fieldafieldbfieldcfielde 的值拼接而成。

# 创建符合条件的 task3 索引,设置 field字段,并写入数据
PUT task3
{"mappings": {"properties": {"fielda":{"type": "keyword"},"fieldb":{"type": "keyword"},"fieldc":{"type": "keyword"},"fielde":{"type": "keyword"}}}
}POST task3/_bulk
{"index":{}}
{"fielda":"aa","fieldb":"bb","fieldc":"cc","fielde":"dd"}
{"index":{}}
{"fielda":"中华","fieldb":"人民","fieldc":"共和国","fielde":"万岁"}
1.1 考点
  1. 重建索引
  2. 脚本
    • 在重建索引的文档中有此例
  3. 或可以通过 管道 来解
1.2 答案
# 定义新的索引
PUT task4
{"mappings": {"properties": {"fielda":{"type": "keyword"},"fieldb":{"type": "keyword"},"fieldc":{"type": "keyword"},"fielde":{"type": "keyword"},"fieldg":{"type": "keyword"}}}
}#  重建索引
POST _reindex
{"source": {"index": "task3"},"dest": {"index": "task4"},"script": {"source": """ctx._source.fieldg = "";ctx._source.fieldg = ctx._source.fieldg + ctx._source.fielda + "-";ctx._source.fieldg = ctx._source.fieldg + ctx._source.fieldb + "-";ctx._source.fieldg = ctx._source.fieldg + ctx._source.fieldc + "-";ctx._source.fieldg = ctx._source.fieldg + ctx._source.fielde;"""}
}

在这里插入图片描述

二、题目

在集群上有一个索引 task1,编写一个查询并满足以下要求:
1. 定义一个名为 a 的运行时字段,通过 a 字段实现以下聚合(a 字段的值等于 b 字段减去 c 字段)
2. 聚合a值小于-2的文档
3. 聚合-5到5之间的文档
4. 聚合大于5的文档
5. 建立测试索引

# 创建索引
PUT task1
{"mappings": {"properties": {"b":{"type": "double"},"c":{"type": "double"}}}
}# 写入数据
POST task1/_bulk
{"index":{}}
{"b":2,"c":3}
{"index":{}}
{"b":5,"c":1}
{"index":{}}
{"b":6,"c":1}
{"index":{}}
{"b":1,"c":7}
2.1 考点
  1. 聚合:这里用到的范围聚合
  2. 运行时字段
2.2 答案
# 使用 runtime_mappings 进行聚类
GET task1/_search
{"runtime_mappings": {"a": {"type": "double","script": {"source": """emit(doc['b'].value - doc['c'].value)"""}}},"aggs": {"bucket_ranges": {"range": {"field": "a","ranges": [{ "to": -2 },{ "from": -5, "to": 5 },{ "from": 5 }]}}}
}
http://www.lryc.cn/news/358626.html

相关文章:

  • Java-----Comparable接口和Comparator接口
  • 通信技术体会
  • Linux系统安全及其应用
  • JVM内存划分类加载的过程双亲委派模型的详解
  • Java异常详解
  • C++入门3——类与对象2(类的6个默认成员函数)
  • CobaltStrike基本渗透
  • 【linux深入剖析】进程间通信
  • 关系数据库:关系模式
  • 医学图像处理质量的评价方法
  • Ehcache Java 缓存框架
  • 详解Spring IoCDI(二)
  • 说明白计算机网络之TCP的流量控制与拥塞控制之慢开始算法与拥塞避免算法
  • 这款信创FTP软件,可实现安全稳定的文件传输
  • 代码随想录算法训练营第十天|232.用栈实现队列、225. 用队列实现栈
  • STM32 IIC协议
  • Java生成随机数的几种方式
  • 【面试】什么是Java虚拟机
  • Go 语言的基本构成、要素与编写规范
  • 从了解到掌握 Spark 计算框架(二)RDD
  • 香橙派OrangePi AIpro上手笔记——之USB摄像头目标检测方案测试(三)
  • 【git】常用命令
  • JavaWeb_MySQL数据库
  • 中国BI步入增长大周期,腾讯云ChatBI加速AI+BI融合
  • 揭秘Python:下划线的特殊用法,你绝对想不到!
  • 深入探索Java世界中的Jackson魔法:玩转JsonNode
  • 为什么要使用动态代理IP?
  • 【PB案例学习笔记】-09滚动条使用
  • C++中常见的构造函数类别
  • 万界星空科技MES系统功能介绍