elasticsearch7实战(二)——ES元信息查询

前言

在上一篇文章中着重介绍了ES的数据读写模型。是一篇纯理论的文章,为什么先写这样一篇文章呢,主要与我个人的学习习惯有关——学习任何东西首先要大致明白他的基本概念和原理。ES中涉及的基本概念相对比较少就没有单独摘出来讲,如果有必要后期可能会加上。所以上一篇文章主要介绍了数据读写,从本章开始进入查询语法的介绍。

元信息查询

本章节中为了统一风格和避免敏感信息泄露,我会将es的ip:port字符串使用{{ _.es_url }}代替。
所有元信息查询的api都以_cat开头。

1.查询所有元信息api。
顾名思义该api的返回结果为所有可用的,用于查询元信息的api地址。

http://{{ _.es_url }}/_cat/

查询结果如下:

=^.^=
/_cat/allocation
/_cat/shards
/_cat/shards/{index}
/_cat/master
/_cat/nodes
/_cat/tasks
/_cat/indices
/_cat/indices/{index}
/_cat/segments
/_cat/segments/{index}
/_cat/count
/_cat/count/{index}
/_cat/recovery
/_cat/recovery/{index}
/_cat/health
/_cat/pending_tasks
/_cat/aliases
/_cat/aliases/{alias}
/_cat/thread_pool
/_cat/thread_pool/{thread_pools}
/_cat/plugins
/_cat/fielddata
/_cat/fielddata/{fields}
/_cat/nodeattrs
/_cat/repositories
/_cat/snapshots/{repository}
/_cat/templates
/_cat/ml/anomaly_detectors
/_cat/ml/anomaly_detectors/{job_id}
/_cat/ml/trained_models
/_cat/ml/trained_models/{model_id}
/_cat/ml/datafeeds
/_cat/ml/datafeeds/{datafeed_id}
/_cat/ml/data_frame/analytics
/_cat/ml/data_frame/analytics/{id}
/_cat/transforms
/_cat/transforms/{transform_id}

以上是全部元信息查询相关api,下面会摘出几个常用的元信息查询api
单独讲解。

2.查看分片信息
该接口为查询到关于分片的七个字段,如下:

  • index:分片所在索引
  • shard:分片编号,从0开始
  • prierp:分片类型,p表示主副本,r表示普通副本
  • state:分片状态
  • docs:分片中文档数
  • store:分片大小
  • ip:分片所在主机
  • node:同上
http://{{ _.es_url }}/_cat/shards?v

3.查询集群节点信息
api

http://{{ _.es_url }}/_cat/nodes?v

下面是该接口可以返回的信息,master字段表示主节点。下面可以看到5是主节点。

ip heap.percent ram.percent cpu load_1m load_5m load_15m node.role master name
192.168.0.5 36 99 3 2.53 2.45 2.21 dilmrt * slave5
192.168.0.3 65 99 0 0.23 0.23 0.31 dilmrt - slave3
192.168.0.7 69 99 2 2.15 1.75 1.58 dilmrt - slave7
192.168.0.6 67 94 1 1.66 1.30 1.06 dilmrt - slave6
192.168.0.14 61 99 3 1.32 1.55 1.73 dilmrt - slave14
192.168.0.8 67 99 2 3.54 2.36 1.92 dilmrt - slave8

04.查询磁盘分配情况

api

http://{{ _.es_url }}/_cat/allocation?v

集群分配情况主要包含,集群分片数量、集群占用磁盘空间大小等信息。

shards disk.indices disk.used disk.avail disk.total disk.percent host ip node
3125 490tb 539tb 546tb 1085tb 49 192.168.0.8 192.168.0.8 slave8

05.查询索引信息
api

http://{{ _.es_url }}/_cat/indices?v

结果如下:

health status index uuid pri rep docs.count docs.deleted store.size pri.store.size
yellow open test-20210112 seASt97o5SkCF1hupv3ix4A 5 1 123537 3 13.7gb 4.7gb
yellow open test-20210111 3fwxq3-S7Sx6eEIpfCJ5kjQ 5 1 123648 7 13.9gb 6gb
green open test-20210114 Okbcne7fT7uaFrXiRlJbt6w 5 1 128605 14 10.9gb 5.4gb
green open test-20210113 IJ9ov8s45TyKFjjyT1tqOIQ 5 1 126131 6 12.2gb 6.1gb
green open test-20210110 SqxHe3gV5QcGckz0G1ISS8A 5 1 125840 16 58.8gb 7.4gb

06.查看master信息
这个信息显示的非常简单,查看集群节点信息的api不仅可以查看master节点,还可以查看其它节点。
api

http://{{ _.es_url }}/_cat/master?v

查询结果如下

id host ip node
N3dwvGKLQ445GlP972R-DXqg 192.168.0.6 192.168.0.6 slave6

07.查看集群和单个索引的文档总数
查询文档总数不一定必须使用元信息查询api进行查询,以后还会讲到track_total_hits参数,用它也是可以查的。
api

http://{{ _.es_url }}/_cat/count/zhy-detect*?v

注意:
http://localhost:9200/_cat/count?v查看集群文档总数
http://localhost:9200/_cat/count/test*?v查看test开头的所有索引的文档总数

你可能感兴趣的:(ES,elasticsearch,es,分布式)