Elasticsearch的查询语法——DSL 查询

ops/2024/11/18 12:04:00/

控制台打印日志:

index-name: local_es_staff_info202404021352
DSL:{“size”:10000,“query”:{“bool”:{“must”:[{“terms”:{“emplId”:[“001756”,“000043”,“004193”],“boost”:1.0}}],“adjust_pure_negative”:true,“boost”:1.0}},“track_total_hits”:2147483647}

esStaffMapper 是与 Elasticsearch 数据库交互的 Mapper。
Elasticsearch 使用自己的查询语言 DSL(Domain Specific Language),这是一种 JSON 格式的查询语言。DSL 查询比传统 SQL 更符合 Elasticsearch 的分布式、全文搜索引擎的特性。

例如,在日志中:

 {"size": 10000,"query": {"bool": {"must": [{"terms": {"emplId": ["001756", "000043", "004193"],"boost": 1.0}}],"adjust_pure_negative": true,"boost": 1.0}},"track_total_hits": 2147483647}
这段 JSON 表示一个 Elasticsearch 查询,其中:terms 查询用于匹配 emplId 字段的特定值。boost 用于提升查询的相关性。track_total_hits 用于控制结果的最大计数。为什么打印的是 DSL,而不是 SQL?MyBatis-Plus 不是直接用于 Elasticsearch。它主要用于关系型数据库(如 MySQL、PostgreSQL),而在使用的是与 Elasticsearch 交互的框架或库(如 Spring Data Elasticsearch 或其他自定义的 Elasticsearch Mapper)。因此,查询语句是基于 Elasticsearch 的查询 DSL,而不是 SQL。

如何调试或查看 Elasticsearch 的查询

如果想调试或查看 Elasticsearch 的查询执行过程,可以使用以下方式:

查看日志:Elasticsearch 提供了丰富的日志输出,可以在 Elasticsearch 的配置中设置日志级别为 DEBUG 或 TRACE,从而查看查询的执行细节。查看请求:如果使用的是 Spring Data Elasticsearch,可以启用 org.springframework.data.elasticsearch.core 的日志来查看查询请求。还可以在代码中手动查看或打印出构建的 Elasticsearch 请求体。查看 Elasticsearch 请求:如果有访问 Elasticsearch 的 REST API,可以直接将 DSL 查询通过 HTTP 请求发送到 Elasticsearch 集群,然后查看返回的响应结果。比如通过 curl 或 Postman 发起查询请求。

http://www.ppmy.cn/ops/134694.html

相关文章

基于Java Springboot宠物领养救助平台

一、作品包含 源码数据库设计文档万字PPT全套环境和工具资源部署教程 二、项目技术 前端技术:Html、Css、Js、Vue、Element-ui 数据库:MySQL 后端技术:Java、Spring Boot、MyBatis 三、运行环境 开发工具:IDEA/eclipse 数据…

【iOS】iOS的轻量级数据库——FMDB

文章目录 前言FMDB一、特点二、关于SQLite什么是 SQLite? 三、FMDB库的导入四、FMDB库的使用1. 核心类2.使用步骤 总结 前言 在完成知乎日报仿写项目时,在文章详情页进行点赞和收藏,在个人账号页面的收藏里需要展现出来,这里使用到…

⾃动化运维利器 Ansible-最佳实战

Ansible-最佳实战 一、ansible调试二、优化 Ansible 执行速度2.1 设置 SSH 为长连接2.1.1 设置 ansible 配置⽂件2.1.2 建⽴⻓连接并测试 2.2 开启 pipelining2.2.1 在 ansible.cfg 配置⽂件中设置 pipelining 为 True2.2.2 配置被控主机的 /etc/sudoers 文件 2.3 设置 facts 缓…

【Istio】Istio原理

第一章 Istio原理 一、服务网格(servicemesh)1、六个时代2、服务网格定义及优缺点二、Istio1、Istio定义2、Istio安装3、Istio架构1.5版本之前1.5版本之后4、bookinfo案例架构部署5、CRD一、服务网格(servicemesh) 微服务:架构风格,职责单一,api通信 服务网格:微服务时代的…

使用真实 Elasticsearch 进行更快的集成测试

作者:来自 Elastic Piotr Przybyl 了解如何使用各种数据初始化和性能改进技术加快 Elasticsearch 的自动化集成测试速度。 在本系列的第 1 部分中,我们探讨了如何编写集成测试,让我们能够在真实的 Elasticsearch 环境中测试软件,并…

海康大华宇视视频平台EasyCVR私有化视频平台服务器选购主要参数有哪些?

在构建现代服务器和视频监控系统时,选择合适的硬件配置和关键技术是确保系统性能和稳定性的基础。服务器选购涉及到多个关键参数,这些参数直接影响到服务器的处理能力、数据存储、网络通信等多个方面。 同时,随着视频监控技术的发展&#xf…

wife_wife

进入环境后需要登录,输入几个弱口令不行 先注册一个账号,然后再进入 这有一个假的flag, 往下滑发现有一个下载wife的按钮 但是下载这个图片什么也没有 上网查了一下,用到了Javascript原型链污染攻击 用这个漏洞的前提是后端使…

10款音频剪辑工具的个人实践体验感受!!

如今,视频拍摄已不是什么遥不可及的事情了。只需要一部手机,就能随心所欲的记录下美好的瞬间。不过,由于我们对实拍的视频不满意,为了追求更美好。于是出现了音频剪辑工具。如今,市面上的音频剪辑工具数不胜数。现在我…