ES常用查询命令
一、基本命令
1、获取所有_cat命令
curl -X GET localhost:9200/_cat
2、获取es集群服务健康状态
curl -X GET localhost:9200/_cat/health?v
epoch: 时间戳的 Unix 时间戳格式,表示快照生成的时间。
timestamp: 可读性更强的时间戳格式,表示快照生成的时间(08:06:34)。
cluster: Elasticsearch 集群的名称,这里是 "es-cluster"。
status: 集群的健康状态,这里是 "yellow"。Elasticsearch 集群状态通常有三种:green(绿色,健康),yellow(黄色,部分健康),red(红色,不健康)。"yellow" 状态表示集群中的某些副本不可用,但主分片是可用的。
node.total: 集群中节点的总数,这里是 1 个节点。
node.data: 充当数据节点的节点数,这里是 1 个节点。
shards: 集群中分片的总数,这里是 98 个分片。
pri: 主分片(primary shard)的数量,这里是 98 个主分片。
relo: 正在进行重新定位的分片数量,这里是 0。
init: 初始化的分片数量,这里是 0。
unassign: 未分配的分片数量,这里是 27。
pending_tasks: 挂起的任务数,这里是 0。
max_task_wait_time: 最大任务等待时间,这里是没有具体数值。
active_shards_percent: 活动分片的百分比,这里是 78.4%。这表示在集群中,有 78.4% 的分片是活动的,而剩下的可能是不可用或者正在恢复的。
3、查看es节点信息
curl -X GET localhost:9200/_cat/nodes?v
ip: 节点的IP地址,这里是"192.168.52.11"。
heap.percent: 节点的堆内存使用百分比,这里是67%。
ram.percent: 节点的系统内存使用百分比,这里是98%。
cpu: 节点的CPU使用率,这里是10%。
load_1m: 1分钟负载平均值,这里是0.69。
load_5m: 5分钟负载平均值,这里是0.36。
load_15m: 15分钟负载平均值,这里是0.50。
node.role: 节点的角色,这里是"*",表示这是一个主节点(master node)。
master: 指示该节点是否是主节点,这里是"*",表示它是主节点。
name: 节点的名称,这里是"node-1"。
4、查看es指定节点信息
curl -X GET localhost:9200/_nodes/node-1?pretty=true
二、索引操作
1、查看ES中所有的索引
curl -X GET localhost:9200/_cat/indices?v
health: 索引的健康状态,这里是 "yellow"。Elasticsearch 索引的健康状态有三种:green(绿色,健康),yellow(黄色,部分健康),red(红色,不健康)。"yellow" 状态表示索引的某些分片处于未分配状态,但主分片是可用的。
status: 索引的状态,这里是 "open"。这表示索引处于打开状态,可以进行读取和写入操作。
index: 索引的名称,这里是 "nginx-access-log-2023.09.13"。
uuid: 索引的唯一标识符。
pri: 主分片(primary shard)的数量,这里是 1 个主分片。
rep: 副本分片(replica shard)的数量,这里也是 1 个副本分片。
docs.count: 索引中文档的总数,这里是 20。
docs.deleted: 索引中已删除的文档数量,这里是 0。
store.size: 索引的存储大小,这里是 34.1KB。
pri.store.size: 主分片的存储大小,这里也是 34.1KB。
2、新建索引
curl -X PUT localhost:9200/testyf
3、新建索引并增加数据 POST /索引/端点
POST /data/_bulk
{ "index": { "_id": 1 }}
{ "articleID" : "XHDK-A-1293-#fJ3", "userID" : 1, "hidden": false, "postDate": "2022-01-01" }
{ "index": { "_id": 2 }}
{ "articleID" : "KDKE-B-9947-#kL5", "userID" : 1, "hidden": false, "postDate": "2022-01-02" }
4、追加数据
# 追加新增字段
POST /data/_bulk
{"update":{"_id":"1"}}
{"doc":{"title":"this is java and elasticsearch blog"}}
5、删除索引
curl -X DELETE localhost:9200/testyf
6、查看指定索引信息
curl -X GET localhost:9200/nginx-access-log-2023.09.13?pretty
7、查看索引的统计信息
curl -X GET localhost:9200/nginx-access-log-2023.09.13/_stats?pretty
三、文档操作
一)查询索引中的全部文档
curl -X GET localhost:9200/nginx-access-log-2023.09.13/_search?pretty
注意:?pertty 表示让数据格式化,更好的展示
2)根据条件查询索引中的文档
单一条件搜索:
1、搜索 response_code 包含 200
POST /nginx-access-log-2023.09.13/_search?pretty
{"query": {"match": {"response_code": "200"}}
}
2、搜索 message 包含 34 或者 包含 36
POST /nginx-access-log-2023.09.25/_search?pretty
{"query": {"match": {"message": "34 36"}},"size": 1000
}
3、搜索 message 包含 34 并且 包含 36
POST /nginx-access-log-2023.09.25/_search?pretty
{"query": { "match": { "message": {"query": "34 36","operator": "and"}} },"size": 1000
}
4、搜索 message 包含 34 36 15 22 中超过 50% 以上比例的
POST /nginx-access-log-2023.09.25/_search?pretty
{"query": { "match": { "message": {"query": "34 36 15 22","minimum_should_match": "50%"}} },"size": 1000
}
5、使用sort对查询数据排序,并按照size返回查询的数量(desc:降序 / asc:升序)
GET /data/_search?size=2
{"query": {"match": {"title": "java elasticsearch"}},"sort": {"postDate": {"order": "desc"}}
}
多条件搜索:
1、(&&使用 must )搜索 response_code 包含 200,并且 @timestamp 包含 "2023-09-25T12:43:46.000Z"
POST /nginx-access-log-2023.09.25/_search?pretty
{"query": {"bool": {"must": [{"match": {"response_code": "200"}},{"match": {"@timestamp": "2023-09-25T12:43:46.000Z"}}]}},"size": 100
}
2、(|| 使用 should )搜索 response_code 包含 200,或者 @timestamp 包含 "2023-09-25T12:43:46.000Z"
POST /nginx-access-log-2023.09.25/_search?pretty
{"query": {"bool": {"should": [{"match": {"response_code": "200"}},{"match": {"@timestamp": "2023-09-25T12:43:46.000Z"}}]}},"size": 100
}
3、(|| 使用 should )搜索 response_code 包含 200,或者 @timestamp 包含 "2023-09-25T12:43:46.000Z",或者 message 包含 "Windows",至少满足2个以上
POST /nginx-access-log-2023.09.25/_search?pretty
{"query": {"bool": {"should": [{"match": {"response_code": "200"}},{"match": {"@timestamp": "2023-09-25T12:43:46.000Z"}},{"match": {"message": "Windows"}}],"minimum_should_match": 2}},"size": 100
}
4、搜索 response_code 包含 200,并且 @timestamp 不包含 "2023-09-25T12:43:46.000Z"
POST /nginx-access-log-2023.09.25/_search?pretty
{"query": {"bool": {"must": [{"match": {"response_code": "200"}}],"must_not": [{"match": {"@timestamp": "2023-09-25T12:43:46.000Z"}}]}},"size": 100
}
5、统计 response_code 包含 200 的有多少个
POST /nginx-access-log-2023.09.25/_count?pretty
{"query": {"bool": {"must": [{"match": {"response_code": "200"}}]}}
}
3)转换
term:不分词,直接匹配字段的完整值
match:根据字段的分词器对搜索文本进行分词
1、普通match如何转换为term+should
转换前:
GET /data/_search
{"query": {"match": {"title": "java elasticsearch"}}
}
转换后:
GET /data/_search
{"query": {"bool": {"should": [{"term": {"title": "java"}},{"term": {"title": "elasticsearch"}}]}}
}
2、and match如何转换为term+must
转换前:
GET /data/_search
{"query": {"match": {"title": {"query": "java elasticsearch","operator": "and"}}}
}
转换后:
GET /data/_search
{"query": {"bool": {"must": [{"term": {"title": "java"}},{"term": {"title": "elasticsearch"}}]}}
}
3、minimum_should_match如何转换
转换前:
GET /data/_search
{"query": {"match": {"title": {"query": "java elasticsearch hadoop spark","minimum_should_match": "75%"}}}
}
转换后:
GET /data/_search
{"query": {"bool": {"should": [{"term": {"title": "java"}},{"term": {"title": "elasticsearch"}},{"term": {"title": "hadoop"}},{"term": {"title": "spark"}}],"minimum_should_match": 3}}
}
相关文章:
ES常用查询命令
一、基本命令 1、获取所有_cat命令 curl -X GET localhost:9200/_cat 2、获取es集群服务健康状态 curl -X GET localhost:9200/_cat/health?v epoch: 时间戳的 Unix 时间戳格式,表示快照生成的时间。 timestamp: 可读性更强的时间戳格式,表示快照生…...
【Qt之元对象系统】
描述 Qt的元对象系统(Meta-Object System)是Qt框架的核心机制之一,它提供了运行时类型信息(RTTI)和信号与槽(Signals and Slots)机制的支持。元对象系统在Qt中扮演了很重要的角色,它…...
基于FPGA的EMAC模块与FIFO模块:高速数据传输与存储
基于FPGA的EMAC模块与FIFO模块:高速数据传输与存储 在现代社会,高速数据传输和存储是信息技术领域的关键问题之一。而基于FPGA的EMAC模块与FIFO模块则成为了解决这些问题的重要途径。本文将介绍这两个模块的原理、实现方法以及如何在FPGA中应用它们。 …...
大数据毕业设计选题推荐-农作物观测站综合监控平台-Hadoop-Spark-Hive
✨作者主页:IT毕设梦工厂✨ 个人简介:曾从事计算机专业培训教学,擅长Java、Python、微信小程序、Golang、安卓Android等项目实战。接项目定制开发、代码讲解、答辩教学、文档编写、降重等。 ☑文末获取源码☑ 精彩专栏推荐⬇⬇⬇ Java项目 Py…...
高校教务系统登录页面JS分析——长沙理工大学教务系统
高校教务系统密码加密逻辑及JS逆向 本文将介绍高校教务系统的密码加密逻辑以及使用JavaScript进行逆向分析的过程。通过本文,你将了解到密码加密的基本概念、常用加密算法以及如何通过逆向分析来破解密码。 本文将是本专栏最后一篇文章,我看了绝大多数高…...
element-ui的form校验失败
数值与字符串混淆 数值 <el-input type"number" v-model.number"form.averageFruitWeight" placeholder"请输入平均单果重"/>字符串 fruitDevelopmentStage: [{pattern: ^[-\\]?([0-9]\\.?)?[0-9]$, message: 输入必须为数字, trigge…...
java数据结构--阻塞队列
目录 一.概念 二.生产者消费者问题 三.阻塞队列接口BlockingQueue 四.基于数组实现单锁的阻塞队列 1.加锁方式 2.代码实现 3.解释说明 (1).offer添加元素 (2)poll取出元素 4.timeout超时时间 5.测试 五.基于数组实现双锁的阻塞队列 1.问题 …...
使用p2p实现Linux内网快速分发文件
安装opentracker 方法一:编译安装 参考如下官方文档进行操作即可,国内下载源码会比较慢 https://erdgeist.org/arts/software/opentracker/ 编译完成后会生成可执行文件opentracker和opentracker.debug 可以直接./opentracker.debug进行验证 方法二&a…...
Android Studio报错:connect refused
参考链接: https://blog.csdn.net/qq_43213783/article/details/113936012 参考文章中说报错主要是由于代理导致的,在文件->设置->外观与行为->系统设置->HTTP代理。 方法一: 查看打开代理(前提是代理可以通网&#x…...
ubuntu 源码编译安装make过程很慢问题解决
一般下载的时候有两种方式 使用wget 下载后使用tar命令解压直接git clone 源代码 下载完成之后,进入目录,新建一个文件夹build,防止影响码源结构第三步,进入到build目录,使用cmake编译 cmake ..第四步直接make编译 …...
深度学习 opencv python 实现中国交通标志识别 计算机竞赛
文章目录 0 前言1 yolov5实现中国交通标志检测2.算法原理2.1 算法简介2.2网络架构2.3 关键代码 3 数据集处理3.1 VOC格式介绍3.2 将中国交通标志检测数据集CCTSDB数据转换成VOC数据格式3.3 手动标注数据集 4 模型训练5 实现效果5.1 视频效果 6 最后 0 前言 🔥 优质…...
希尔排序原理
目录: 一、希尔排序与插入排序 1)希尔排序的概念 2)插入排序实现 二、希尔排序实现 一、希尔排序与插入排序 1)希尔排序的概念 希尔排序(Shells Sort)是插入排序的一种又称“缩小增量排序”(Diminishing Incremen…...
测试用例的设计方法(全):判定表驱动分析方法
目录 判定表驱动分析方法 一. 方法简介 二. 实战演习 判定表驱动分析方法 一. 方法简介 1.定义:判定表是分析和表达多逻辑条件下执行不同操作的情况的工具。 2.判定表的优点 能够将复杂的问题按照各种可能的情况全部列举出来,简明并避免遗漏。因此…...
node 第十七天 使用rsa非对称加密 实现前后端加密通信 JSEncrypt和node-rsa
什么是非对称加密 加密过程需要两个钥匙, 公钥和私钥 其中公钥用于加密明文, 私钥用于解密公钥加密的密文, 解密只可以用私钥 公钥和私钥是一对一的关系 公钥可以发送给用户, 不用担心泄露 私钥需要保存在服务端, 不能泄露 例如: 战场上,B要给A传递一条消息…...
Spring-依赖注入findAutowireCandidates源码实现
findAutowireCandidates()实现 1、找出BeanFactory中类型为type的所有的Bean的名字,根据BeanDefinition就能判断和当前type是不是匹配,不用生成Bean对象 2、把resolvableDependencies中key为type的对象找出来并添加到result中 3、遍历根据type找出的b…...
单页面应用与多页面应用的区别?
单页面应用(SPA)与多页面应用(MPA)的主要区别在于页面数量和页面跳转方式。单页面应用只有一个主页,而多页面应用包含多个页面。 单页面应用的优点有: 用户体验好:内容的改变不需要重新加载整…...
模型预处理的ToTensor和Normalize
模型预处理的ToTensor和Normalize flyfish import torch import numpy as np from torchvision import transformsmean (0.485, 0.456, 0.406) std (0.229, 0.224, 0.225)# data0 np.random.randint(0,255,size [4,5,3],dtypeuint8) # data0 data0.astype(np.float64) da…...
nodejs express multer 保存文件名为中文时乱码,问题解决 originalname
nodejs express multer 保存文件名为中文时乱码,问题解决 originalname 一、问题描述 用 express 写了个后台,在接收文件并保存的时候 multer 接收到的文件名为乱码。 二、解决 找了下解决方法,在 github 的 multer issue 中找到了答案 参…...
大数据之LibrA数据库系统告警处理(ALM-12035 恢复任务失败后数据状态未知)
告警解释 执行恢复任务失败后,系统会自动回滚,如果回滚失败,可能会导致数据丢失等问题,如果该情况出现,则上报告警,如果下一次该任务恢复成功,则恢复告警。 告警属性 告警ID 告警级别 可自动…...
汽车生产RFID智能制造设计解决方案与思路
汽车行业需求 汽车行业正面临着快速变革,传统的汽车制造方式正在向柔性化、数字化、自动化和数据化的智能制造体系转变,在这个变革的背景下,汽车制造企业面临着物流、生产、配送和资产管理等方面的挑战,为了应对这些挑战…...
PX4定点漂移别急着调参!先学会用Flight Review分析飞行日志定位问题
PX4定点漂移问题深度诊断:用Flight Review从数据中揪出真凶 无人机在定点模式下出现水平漂移,就像汽车在平坦路面上无故偏离车道一样令人困扰。许多飞手的第一反应是盲目调整控制器参数,这往往治标不治本。真正的高手会先打开飞行日志&#x…...
告别BurpSuite?手把手教你用Yakit社区版搞定Web渗透测试(附国密证书配置)
从BurpSuite迁移到Yakit:Web渗透测试新范式实战指南 如果你已经习惯了BurpSuite的工作流程,但正在寻找一个更轻量、更符合国内安全需求的替代方案,Yakit社区版可能正是你需要的工具。它不仅继承了BurpSuite的核心功能,还针对中国开…...
89张电力供应线路黑匣子目标检测数据集-包含完整原始图像与YOLO格式标注-适用于电力系统运维自动化与智能电网故障预警
电力供应线路黑匣子目标检测数据集分析 引言与背景 在电力系统运维与安全监测领域,黑匣子作为记录关键运行数据的重要设备,其准确识别与定位对于保障电力供应稳定性具有重要意义。本数据集专注于电力供应线路黑匣子的目标检测任务,提供了高…...
SAP MM | 如何解决汇率报错及合同主数据配置?
问题背景在 SAP 系统的日常运维中,采购业务往往涉及跨国贸易或多币种结算。当我们在创建采购订单(PO)、合同(Contract)或进行发票校验时,系统如果无法找到交易日期对应的有效汇率,业务流程就会中…...
SQLite JDBC驱动:Java开发者应对嵌入式数据库挑战的终极方案
SQLite JDBC驱动:Java开发者应对嵌入式数据库挑战的终极方案 【免费下载链接】sqlite-jdbc SQLite JDBC Driver 项目地址: https://gitcode.com/gh_mirrors/sq/sqlite-jdbc 想象一下这样的场景:你正在开发一个需要轻量级数据存储的Java应用&#…...
Linux服务器上配置gfortran:从零部署到高效编译你的Fortran代码
Linux服务器上配置gfortran:从零部署到高效编译你的Fortran代码 在科学计算和高性能计算领域,Fortran语言因其卓越的数值计算性能和成熟的数学库支持,依然是许多研究机构和实验室的首选工具。当我们需要在远程Linux服务器(如实验室…...
三步解锁硬件隐藏性能:Universal x86 Tuning Utility完全指南
三步解锁硬件隐藏性能:Universal x86 Tuning Utility完全指南 【免费下载链接】Universal-x86-Tuning-Utility Unlock the full potential of your Intel/AMD based device. 项目地址: https://gitcode.com/gh_mirrors/un/Universal-x86-Tuning-Utility 你是…...
HTTrack跨平台实战手册:从环境配置到高级镜像的完整指南
HTTrack跨平台实战手册:从环境配置到高级镜像的完整指南 【免费下载链接】httrack HTTrack Website Copier, copy websites to your computer (Official repository) 项目地址: https://gitcode.com/gh_mirrors/ht/httrack HTTrack网站镜像工具是一款功能强大…...
别再手动查表了!用Python脚本自动匹配PyTorch、torchvision、torchaudio版本(附代码)
解放双手!用Python自动化获取PyTorch生态兼容版本的全套方案 每次新建PyTorch项目时,最头疼的莫过于手动查找torchvision、torchaudio等配套库的兼容版本。官方文档的版本对应表不仅更新频繁,不同子项目还分散在各个仓库。更糟的是࿰…...
浪潮NF5280M6服务器上ESXi 6.7双网卡聚合实战:从交换机LACP到ESXi IP哈希的完整避坑指南
浪潮NF5280M6服务器ESXi 6.7双网卡聚合实战:从交换机配置到主机调优的全链路解析 当两台Intel X710光纤网卡在浪潮NF5280M6服务器机箱里闪烁绿灯时,大多数运维工程师可能不会想到,这个看似标准的硬件组合会在LACP聚合配置中引发持续数小时的网…...
