ElasticSearch-查询语法(结构化查询)
文章目录
- ElasticSearch-结构化查询
- 查询所有索引
- 查看es集群状态
- 查询所有索引
- 查看所有索引的分片信息
- 查询指定索引(各种信息)
- 查看指定索引分片信息
- 查看集群的节点信息
- 查询谁是主节点
- 显示每个节点分片数量、占用空间
- 显示node节点属性
- 查询索引的别名
- 查询指定索引的映射
- 查询指定索引的全部的文档
- 查询指定id的文档
- 多ID查询
- 查询返回结果个数
- URI搜索
- 显示正在等待的任务
- 查询使用的插件
- 查看线程池信息
- 响应体返回格式
ElasticSearch-结构化查询
查询所有索引
GET /_cat/indices?v
表头 | 含义 |
---|---|
health | 当前服务器健康状态:green(集群完整) yellow(单点正常、集群不完整) red(单点不正常) |
status | 索引打开、关闭状态 |
index | 索引名 |
uuid | 索引统一编号 |
pri | 主分片数量 |
rep | 副本数量 |
docs.count | 可用文档数量 |
docs.deleted | 文档删除状态(逻辑删除) |
store.size | 主分片和副分片整体占空间大小 |
pri.store.size | 主分片占空间大小 |
查看es集群状态
GET _cat/health?v
名称 | 描述 |
---|---|
epoch: | 自标准时间(1970-01-01 00:00:00)以来的秒数 |
timestamp: | 时间 |
cluster: | 集群名称 |
status: | 集群状态 |
node.total: | 节点总数 |
node.data: | 数据节点总数 |
shards: | 分片总数 |
pri: | 主分片总数 |
repo: | 复制节点的数量 |
init: | 初始化节点的数量 |
unassign: | 未分配分片的数量 |
pending_tasks: | 待定任务数 |
max_task_wait_time: | 等待最长任务的等待时间 |
active_shards_percent: | 活动分片百分比 |
查询所有索引
GET _cat/indices?pretty
名称 | 描述 |
---|---|
health: | 索引的健康状态 |
status: | 索引的开启状态 |
index: | 索引名字 |
uuid: | 索引的uuid |
pri: | 索引的主分片数量 |
rep: | 索引的复制分片数量 |
docs.count: | 索引下的文档总数 |
docs.deleted: | 索引下删除状态的文档数 |
store.size: | 主分片+复制分片的大小 |
pri.store.size: | 主分片的大小 |
查看所有索引的分片信息
GET _cat/shards?v
名称 | 描述 |
---|---|
index: | 索引名称 |
shard: | 分片序号 |
prirep: | 分片类型,p表示是主分片,r表示是复制分片 |
state: | 分片状态 |
docs: | 该分片存放的文档数量 |
store: | 该分片占用的存储空间大小 |
ip: | 该分片所在的服务器ip |
node: | 该分片所在的节点名称 |
查询指定索引(各种信息)
GET 索引名称
查看指定索引分片信息
GET _cat/shards/索引名称?v
查看集群的节点信息
GET _cat/nodes?v
名称 | 描述 |
---|---|
ip: | node节点的IP |
heap.percent: | 堆内存占用百分比 |
ram.percent: | 内存占用百分比 |
cpu: | CPU占用百分比 |
load_1m: | 1分钟的系统负载 |
load_5m: | 5分钟的系统负载 |
load_15m: | 15分钟的系统负载 |
node.role: | node节点的角色 |
master: | 是否是master节点 |
name: | 节点名称 |
查询谁是主节点
GET _cat/master
名称 | 描述 |
---|---|
id: | 节点ID |
host: | 主机名称 |
ip: | 主机IP |
node: | 节点名称 |
显示每个节点分片数量、占用空间
GET _cat/allocation?v
名称 | 描述 |
---|---|
shards: | 节点承载的分片数量 |
disk.indices: | 索引占用的空间大小 |
disk.used: | 节点所在机器已使用的磁盘空间大小 |
disk.avail: | 节点可用空间大小 |
disk.total: | 节点总空间大小 |
disk.percent: | 节点磁盘占用百分比 |
host: | 节点的host地址 |
ip: | 节点的ip地址 |
node: | 节点名称 |
显示node节点属性
GET _cat/nodeattrs?v
名称 | 描述 |
---|---|
node: | 节点名称 |
host: | 主机地址 |
ip: | 主机ip |
attr: | 属性描述 |
value: | 属性值 |
查询索引的别名
GET 索引名称/_alias
查询指定索引的映射
GET 索引名称/_mapping
查询指定索引的全部的文档
GET 索引名称/_search
查询指定id的文档
GET 索引名称/_doc/1
注意: 在8+版本_doc
`就被取消了 在7版本只是过度
多ID查询
GET /student_info/_search
{"query":{"ids":{"values":[11001,11002,11003]}}
}
查询返回结果个数
GET /testindex/_count
{"query": {"multi_match": {"query": "elasticsearch","fields": ["question","answer"]}}
}
URI搜索
Elasticsearch支持用uri搜索,可用get请求里面拼接相关的参数,并用curl相关的命令就可以进行测试。
GET twitter/_search?q=user:kimchy
如下是上一个请求的相应实体:
{"timed_out": false,"took": 62,"_shards":{"total" : 1,"successful" : 1,"skipped" : 0,"failed" : 0},"hits":{"total" : 1,"max_score": 1.3862944,"hits" : [{"_index" : "twitter","_type" : "_doc","_id" : "0","_score": 1.3862944,"_source" : {"user" : "kimchy","date" : "2009-11-15T14:12:12","message" : "trying out Elasticsearch","likes": 0}}]}
}
URI中允许的参数:
名称 | 描述 |
---|---|
q | 查询字符串,映射到query_string查询 |
df | 在查询中未定义字段前缀时使用的默认字段 |
analyzer | 查询字符串时指定的分词器 |
analyze_wildcard | 是否允许通配符和前缀查询,默认设置为false |
batched_reduce_size | 应在协调节点上一次减少的分片结果数。如果请求中潜在的分片数量很大,则应将此值用作保护机制,以减少每个搜索请求的内存开销 |
default_operator | 默认使用的匹配运算符,可以是AND或者OR,默认是OR |
lenient | 如果设置为true,将会忽略由于格式化引起的问题(如向数据字段提供文本),默认为false |
explain | 对于每个hit,包含了具体如何计算得分的解释 |
_source | 请求文档内容的参数,默认true;设置false的话,不返回_source字段,可以使用**_source_include和_source_exclude**参数分别指定返回字段和不返回的字段 |
stored_fields | 指定每个匹配返回的文档中的存储字段,多个用逗号分隔。不指定任何值将导致没有字段返回 |
sort | 排序方式,可以是fieldName、fieldName:asc或者fieldName:desc的形式。fieldName可以是文档中的实际字段,也可以是诸如_score字段,其表示基于分数的排序。此外可以指定多个sort参数(顺序很重要) |
track_scores | 当排序时,若设置true,返回每个命中文档的分数 |
track_total_hits | 是否返回匹配条件命中的总文档数,默认为true |
timeout | 设置搜索的超时时间,默认无超时时间 |
terminate_after | 在达到查询终止条件之前,指定每个分片收集的最大文档数。如果设置,则在响应中多了一个terminated_early的布尔字段,以指示查询执行是否实际上已终止。默认为no terminate_after |
from | 从第几条(索引以0开始)结果开始返回,默认为0 |
size | 返回命中的文档数,默认为10 |
search_type | 搜索的方式,可以是dfs_query_then_fetch或query_then_fetch。默认为query_then_fetch |
allow_partial_search_results | 是否可以返回部分结果。如设置为false,表示如果请求产生部分结果,则设置为返回整体故障;默认为true,表示允许请求在超时或部分失败的情况下获得部分结果 |
显示正在等待的任务
GET _cat/pending_tasks?v
名称 | 描述 |
---|---|
insertOrder: | 任务插入顺序 |
timeInQueue: | 任务排队了多长时间 |
priority: | 任务优先级 |
source: | 任务源 |
查询使用的插件
GET _cat/plugins?v
名称 | 描述 |
---|---|
name: | 节点名称 |
component: | 插件名称 |
version: | 插件版本 |
查看线程池信息
GET _cat/thread_pool?v
名称 | 描述 |
---|---|
node_name: | 节点名称 |
name: | 线程池名称 |
active: | 活跃线程数量 |
queue: | 当前队列中的任务数 |
rejected: | 被拒绝的任务数 |
响应体返回格式
响应体返回格式,支持json,yaml,text(default),smile,cbor
GET /_cat/indices?format=json&pretty
[{"health" : "green","status" : "open","index" : ".monitoring-kibana-6-2018.12.24","uuid" : "vkJltBs1T8qEfdUDdyDYzA","pri" : "1","rep" : "0","docs.count" : "1345","docs.deleted" : "0","store.size" : "453.3kb","pri.store.size" : "453.3kb"},{"health" : "green","status" : "open","index" : "user2","uuid" : "xo9Zb2OkRWeqV5bRKNDKGg","pri" : "1","rep" : "0","docs.count" : "12","docs.deleted" : "0","store.size" : "7.9kb","pri.store.size" : "7.9kb"},.....
]
点赞 -收藏-关注-便于以后复习和收到最新内容 有其他问题在评论区讨论-或者私信我-收到会在第一时间回复 在本博客学习的技术不得以任何方式直接或者间接的从事违反中华人民共和国法律,内容仅供学习、交流与参考 免责声明:本文部分素材来源于网络,版权归原创者所有,如存在文章/图片/音视频等使用不当的情况,请随时私信联系我、以迅速采取适当措施,避免给双方造成不必要的经济损失。 感谢,配合,希望我的努力对你有帮助^_^
ElasticSearch-查询语法(结构化查询)相关推荐
- ElasticSearch【有与无】【搜索引擎】【ES7】结构化查询
目录 1.简介 1.1.请求体查询(request body search) 空查询 1.2.结构化查询 Query DSL 空查询 查询子句 合并多子句 1.3.查询与过滤 1.4.最重要的查询过 ...
- ElasticSearch权威指南学习(结构化查询)
请求体查询 简单查询语句(lite)是一种有效的命令行adhoc查询.但是,如果你想要善用搜索,你必须使用请求体查询(request body search)API. 空查询 我们以最简单的 sear ...
- Elasticsearch进行and,or多条件组合DSL结构化查询
[问题] 需要查询表中的条件sql语句如下: SELECT * FROM tablename WHERE (md5='000000000000000000000000' AND dstip=' ...
- 结构化查询语句简称mysql_整理MySql常用查询语句
MySql的性能优化 性能优化是通过某些有效的方法提高MySQL数据库的性能.性能优化的目的是为了是MySQL数据运行速度更快.占用的磁盘空间更小.性能优化包括很多方面,例如优化查询速度.优化更新速度 ...
- mysql非结构化查询_Mysql(2.3) 简单查询(SELECT)、子查询
结构化查询语言(sql) SQL概念和规则 关键字:SQL语言保留的字符串(SELECT FORM) 语句:一条完整的SQL命令(SELECT * FROM dept) 子句:部分的SQL语句,通常由 ...
- MySQL结构化查询,SQL结构化查询语言(二)
根据上一章节SQL结构化查询语言(一),创建数据库和数据表后,可以增加自己想要的数据: https://www.jianshu.com/p/7aa34c91efa7 insert into my_co ...
- Kibana 使用 KQL 查询语法-kibana 常用查询语法
Kibana 查询语言 (KQL) 是一种使用自由文本搜索或基于字段的搜索过滤 Elasticsearch 数据的简单语法. KQL 仅用于过滤数据,并没有对数据进行排序或聚合的作用. KQL 能够在 ...
- mysql数据类型查询命令_Linux命令:MySQL系列之三--mysql数据类型及SQL结构化查询语句使用...
MySQL 存储引擎,也被称为表类型: MyISAM表:无事务处理功能,支持表锁 .frm:表结构定义文件 .MYD:表数据文件 .MYI:表索引文件 InnoDB表:支持事务处理功能,支持行锁 .f ...
- mysql查询数据库结构_mysql查询数据库下的表结构
mysql查询数据库下的表结构 方法:1.使用DESCRIBE命令以表格的形式展示表结构,语法"DESCRIBE 表名;":2.使用"SHOW CREATE TABLE& ...
最新文章
- 兼容低版本迅雷的js调用
- SSH框架之Spring4专题4:Spring与DAO
- UA MATH564 概率论VI 数理统计基础2 多元正态分布
- python 状态机教程_python 实用工具状态机transitions
- ue4相机_[UE4]偏门实用技巧合集
- wordpress 添加小工具分类
- C点滴成海------Dev C++怎么修改成简体中文
- 深入剖析cpp对象模型
- linux windows死机,linux死机的处理方式
- HDOJ-1050-Moving Tables(nyoj220)
- 真的存在网络钓鱼吗?网络钓鱼技术之HTML走私分析
- DTW算法Python实现
- 美服fgo显示服务器异常,FGO日服美服错误代码合集_FGO日服美服错误代码汇总_牛游戏网...
- windows7系统安装,Ultimate(旗舰版)
- 清除电脑bios密码
- vue 前端传图片文件,后端接收
- 5个商用字体网站分享
- 自己照片怎么做成漫画头像?照片变漫画效果方法分享
- Java 进程启停及诊断 Jarboot大改版、焕然一新
- 4. 寻找两个正序数组的中位数