elasticsearch下划线接口示例
$ curl http://xx.xx.xx.xx:9200/${index_name}/_search?pretty \
-H "Content-Type:application/json" \
--user username:passwd \
-d '{
"query": {
"match": {
"content": "测试"
}
}
}'
es 这类接口中有很多_xxx 下划线 格式的接口,有什么特殊含义?
在Elasticsearch中,以单个下划线(_)开头的接口通常是特殊的系统级别接口,用于执行一些特殊的操作或返回特殊的信息。
这些接口通常不用于常规的数据操作,而是用于管理和监控Elasticsearch集群。
例如,_cat接口用于返回有关集群中各种节点、索引和分片的信息,_cluster接口用于管理集群级别的设置和操作,_nodes接口用于返回有关集群中各个节点的信息等等。
在使用这些接口时,需要谨慎操作,以免影响Elasticsearch集群的正常运行。
以下是一些常见的下划线接口:
1. _search:执行搜索操作,查询索引中的文档。
2. _bulk:批量操作,可以同时执行多个索引、更新、删除等操作。
3. _delete_by_query:根据查询条件删除索引中的文档。
4. _mappings:获取索引的映射信息,包括字段类型、分词器等。
5. _settings:获取或修改索引的配置信息,如分片数量、副本数量等。
6. _cat:获取集群、节点、索引等的信息,包括状态、健康度、分片情况等。
7. _aliases:获取或修改索引的别名信息。
8. _reindex:将一个或多个索引中的文档复制到另一个索引中。
9. _refresh:刷新索引,使得最近的文档变化生效。
10. _update_by_query:根据查询条件更新索引中的文档。
11. _validate/query:验证查询语句是否合法。
12. _analyze:分析文本,展示分词器的效果。
13. _field_caps:获取索引中某个字段的属性信息,如类型、是否可搜索等。
14. _explain:解释一个查询语句为什么匹配或者不匹配某个文档。
15. _source:指定查询结果中应该包含哪些字段或者不包含哪些字段。
16. _count:查询匹配某个查询条件的文档数量。
17. _shard_stores:获取某个索引中所有分片的存储状态。
18. _cluster/state:获取集群的状态信息,包括节点、索引、分片等的状态。
19. _cluster/health:获取集群的健康度信息,包括状态、分片状态等。
20. _cluster/pending_tasks:获取集群中尚未完成的任务列表,如分片重分配、索引创建等。
21. _analyze:用于分析指定的文本并返回分析结果,包括分词、过滤器等信息。
22. _field_caps:用于返回指定字段的属性信息,包括数据类型、分词器、搜索分析器等。
23. _field_caps:用于返回指定字段的属性信息,包括数据类型、分词器、搜索分析器等。
24. _segments:用于返回有关指定索引的分片信息,包括分片数量、存储大小、文档数量等。
这些下划线接口在 Elasticsearch 中都有特定的用途,可以帮助用户更好地管理和操作索引。
同样需要注意,这些接口可能会对 Elasticsearch 的性能和稳定性造成影响,因此需要谨慎使用。
总之,下划线 _ 开头的接口通常是 Elasticsearch 内部使用的,不建议直接使用,除非你非常清楚它们的作用和用法。
$ curl -s --user username:passwd http://192.168.2.23:9200/_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}
对 curl -s --user username:passwd http://192.168.2.23:9200/_cat 输出做解读
这些是 Elasticsearch 中的 _cat 接口,用于获取集群、索引、节点等的基本信息。
下面是对每个接口的详细解释说明:
1. /_cat/allocation:获取所有节点上分片的分配情况,包括节点、索引、分片状态等。
2. /_cat/shards:获取所有索引的分片信息,包括索引名称、分片编号、状态等。
3. /_cat/shards/{index}:获取指定索引的分片信息,包括索引名称、分片编号、状态等。
4. /_cat/master:获取当前集群的主节点信息。
5. /_cat/nodes:获取所有节点的基本信息,如名称、IP、状态、负载等。
6. /_cat/tasks:获取集群中正在执行的任务信息,如分片重分配、索引创建等。
7. /_cat/indices:获取所有索引的基本信息,如名称、状态、文档数、存储大小等。
8. /_cat/indices/{index}:获取指定索引的基本信息,如名称、状态、文档数、存储大小等。
9. /_cat/segments:获取所有索引的分段信息,包括索引名称、分段编号、文档数、存储大小等。
10. /_cat/segments/{index}:获取指定索引的分段信息,包括索引名称、分段编号、文档数、存储大小等。
11. /_cat/count:获取所有索引的文档数量。
12. /_cat/count/{index}:获取指定索引的文档数量。
13. /_cat/recovery:获取正在恢复的分片信息,包括源节点、目标节点、恢复状态等。
14. /_cat/recovery/{index}:获取正在恢复的指定索引的分片信息,包括源节点、目标节点、恢复状态等。
15. /_cat/health:获取集群的健康度信息,包括状态、分片状态等。
16. /_cat/pending_tasks:获取集群中尚未完成的任务列表,如分片重分配、索引创建等。
17. /_cat/aliases:获取所有索引的别名信息。
18. /_cat/aliases/{alias}:获取指定别名对应的索引信息。
19. /_cat/thread_pool:获取所有节点的线程池信息,包括线程池名称、大小、队列长度等。
20. /_cat/thread_pool/{thread_pools}:获取指定节点的线程池信息,包括线程池名称、大小、队列长度等。
21. /_cat/plugins:获取所有已安装的插件信息。
22. /_cat/fielddata:获取所有索引的字段数据大小信息,包括字段名称、大小等。
23. /_cat/fielddata/{fields}:获取指定字段的数据大小信息,包括字段名称、大小等。
24. /_cat/nodeattrs:获取所有节点的属性信息。
25. /_cat/repositories:获取所有备份仓库的信息。
26. /_cat/snapshots/{repository}:获取指定备份仓库的快照信息。
27. /_cat/templates:获取所有索引模板的信息。
28. /_cat/ml/anomaly_detectors:获取所有异常检测作业的信息。
29. /_cat/ml/anomaly_detectors/{job_id}:获取指定异常检测作业的信息。
30. /_cat/ml/trained_models:获取所有已训练的模型的信息。
31. /_cat/ml/trained_models/{model_id}:获取指定已训练的模型的信息。
32. /_cat/ml/datafeeds:获取所有数据源的信息。
33. /_cat/ml/datafeeds/{datafeed_id}:获取指定数据源的信息。
34. /_cat/ml/data_frame/analytics:获取所有数据帧分析的信息。
35. /_cat/ml/data_frame/analytics/{id}:获取指定数据帧分析的信息。
36. /_cat/transforms:获取所有转换的信息。
37. /_cat/transforms/{transform_id}:获取指定转换的信息。
这些接口提供了丰富的集群、索引、节点等信息,可以帮助用户更好地了解 Elasticsearch 集群的状态、性能等情况。
参考
通过API操作es集群
https://www.jianshu.com/p/ead7a1e88503
网友评论