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

Elasticsearch 8.1官网文档梳理 - 十三、Search your data(数据搜索)

Search your data

这里有两个比较有用的参数需要注意一下

  1. Search timeout:设置每个分片的搜索超时时间。从集群级别可以通过 search.default_search_timeout 来设置超时时间。如果在 search.default_search_timeout 设置的时间段内未完成搜索请求,就会取消该任务。search.default_search_timeout 的默认值为 -1 ,表示无超时时间限制。
GET /my-index-000001/_search
{"timeout": "2s","query": {"match": {"user.id": "kimchy"}}
}
  1. track_total_hits:设置搜索过程中匹配文档的数量。如果需要匹配所有文档,track_total_hits 设置为 true,如果需要匹配的文档为 1000 条,则 track_total_hits 设置为 1000。数据量大时 track_total_hits 设置为 true 会拖慢查询速度。
GET my-index-000001/_search
{"track_total_hits": true,"query": {"match" : {"user.id" : "elkbee"}}
}

注意:
这强调一下 Response 中的 tooktook 代表处理该请求所耗费的毫秒数。从节点收到查询后开始,到返回客户端之前,包括在线程池中等待、在集群中执行分布式搜索和收集、排序所有结果所花费的时间。

一、Collapse search results

没看懂有啥用呢。。。考完试再研究

二、Filter search results

  1. post_filterfilter 过滤会将符合条件的文档留下,之后进行 聚合,而 post_filter 是在聚合后过滤结果,不影响聚合结果。
# 创建索引,添加数据
PUT /shirts
{"mappings": {"properties": {"brand": { "type": "keyword"},"color": { "type": "keyword"},"model": { "type": "keyword"}}}
}POST /shirts/_bulk
{"index":{}}
{"brand": "gucci", "color": "red", "model": "slim"}
{"index":{}}
{"brand": "gucci", "color": "back", "model": "slim"}
{"index":{}}
{"brand": "gucci", "color": "back", "model": "large"}

直接使用 filter

GET /shirts/_search
{"query": {"bool": {"filter": [{ "term": { "color": "red"   }},{ "term": { "brand": "gucci" }}]}},"aggs": {"models": {"terms": { "field": "model" } }}
}

在这里插入图片描述
使用 post_filter

GET /shirts/_search
{"post_filter": {"bool": {"filter": [{ "term": { "color": "red"   }},{ "term": { "brand": "gucci" }}]}}, "aggs": {"models": {"terms": { "field": "model" } }}
}

在这里插入图片描述

  1. rescore:对每个分片的查询结果的前 window_size 个文档重新评分。
POST /_search
{"query" : {"match" : {"message" : {"operator" : "or","query" : "the quick brown"}}},"rescore" : {"window_size" : 50,"query" : {"rescore_query" : {"match_phrase" : {"message" : {"query" : "the quick brown","slop" : 2}}},"query_weight" : 0.7,"rescore_query_weight" : 1.2}}
}

三、Highlighting

四、Long-running searches

五、Near real-time search

六、Paginate search results

七、Retrieve inner hits

八、Retrieve selected fields

九、Search across clusters

十、Search multiple data streams and indices

十一、Search shard routing

十二、Search templates

十三、Sort search results

十四、kNN search

相关文章:

  • 卡码网笔试 | 118 小y删数字、119 小红的字符串切割、120 小红的数字匹配
  • 如何用ai打一场酣畅淋漓的数学建模比赛? 给考研加加分!
  • Crontab 自动脚本实例 | 校园网保持联网
  • 宝石收集,tarjan
  • 佩戴安全头盔监测识别摄像机
  • 15 VUE学习:插槽slot
  • leetcode刷题
  • 数据库连接项目
  • 池的概念以及数据库连接池 Druid
  • 深入理解 Mysql 分层架构:从存储引擎到查询优化器的内部机制解析
  • 1738. 找出第 K 大的异或坐标值
  • 嵌入式进阶——舵机控制PWM
  • 辐射度技术在AI去衣中的魅力与科学
  • 基于长短期记忆网络 LSTM 的送餐时间预测
  • 1960-2022年世界银行WDI面板数据(1400+指标)
  • “寒冬”下的金三银四跳槽季来了,帮你客观分析一下局面
  • 【159天】尚学堂高琪Java300集视频精华笔记(128)
  • 【跃迁之路】【699天】程序员高效学习方法论探索系列(实验阶段456-2019.1.19)...
  • Angular Elements 及其运作原理
  • Linux后台研发超实用命令总结
  • Lsb图片隐写
  • quasar-framework cnodejs社区
  • Redis字符串类型内部编码剖析
  • sessionStorage和localStorage
  • Spark VS Hadoop:两大大数据分析系统深度解读
  • storm drpc实例
  • 从0实现一个tiny react(三)生命周期
  • 对JS继承的一点思考
  • 高度不固定时垂直居中
  • 机器学习学习笔记一
  • 每天10道Java面试题,跟我走,offer有!
  • 前端代码风格自动化系列(二)之Commitlint
  • 数组的操作
  • scrapy中间件源码分析及常用中间件大全
  • 如何在招聘中考核.NET架构师
  • ​一些不规范的GTID使用场景
  • #14vue3生成表单并跳转到外部地址的方式
  • (1)bark-ml
  • (1)无线电失控保护(二)
  • (2)(2.4) TerraRanger Tower/Tower EVO(360度)
  • (Bean工厂的后处理器入门)学习Spring的第七天
  • (C语言)深入理解指针2之野指针与传值与传址与assert断言
  • (delphi11最新学习资料) Object Pascal 学习笔记---第7章第3节(封装和窗体)
  • (Matalb时序预测)WOA-BP鲸鱼算法优化BP神经网络的多维时序回归预测
  • (Redis使用系列) SpirngBoot中关于Redis的值的各种方式的存储与取出 三
  • (vue)el-checkbox 实现展示区分 label 和 value(展示值与选中获取值需不同)
  • (附源码)springboot 个人网页的网站 毕业设计031623
  • (限时免费)震惊!流落人间的haproxy宝典被找到了!一切玄妙尽在此处!
  • (一)【Jmeter】JDK及Jmeter的安装部署及简单配置
  • .NET CORE 3.1 集成JWT鉴权和授权2
  • .net framework 4.0中如何 输出 form 的name属性。
  • .NET与java的MVC模式(2):struts2核心工作流程与原理
  • .Net转Java自学之路—基础巩固篇十三(集合)
  • @Mapper作用
  • @SuppressWarnings(unchecked)代码的作用