前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Elasticsearch 语法指南(全)

Elasticsearch 语法指南(全)

作者头像
HaydenGuo
修改2019-12-15 13:26:58
6050
修改2019-12-15 13:26:58
举报
文章被收录于专栏:东隅已逝东隅已逝

所有的语句默认都是没有用户名和密码,如果你的 es 集群做了安全认证的话,请在每一个 crul 后面加上 -u username:password

例如:

curl -u admin:123456 -XGET "http://172.0.0.52:9200/_cat"

1集群支持的选项

curl -XGET "http://172.0.0.52:9200/_cat"

2查看节点信息

curl -XGET "http://172.0.0.52:9200/_cat/nodes?v"

3查看master节点信息

curl -XGET "http://172.0.0.52:9200/_cat/master?v"

4查看所有节点上的热点线程

curl -XGET "http://172.0.0.52:9200/_nodes/hot_threads"

5查看有问题的分片或索引

curl -XGET "http://172.0.0.52:9200/_cluster/allocation/explain?pretty"

6查看线程池设置

curl -XGET "http://172.0.0.52:9200/_nodes/thread_pool/"

7统计全部信息

curl -XGET "http://172.0.0.52:9200/_cluster/stats?human&pretty"

8查看集群状态

curl -XGET "http://172.0.0.52:9200/_cluster/health?pretty"

9查看ES信息

curl -XGET "http://172.0.0.52:9200/"

10获取所有索引的信息

curl -XGET "http://172.0.0.52:9200/_cat/indices?v&pretty"
curl -XGET "http://172.0.0.52:9200/_cat/nodes?v"
curl -XGET "http://172.0.0.52:9200/_cat/segments?v&h=shard,segment,size,size.memory"

11获取所有文档数量

curl -XGET "http://172.0.0.52:9200/_count?pretty" -H 'Content-Type: application/json' -d'
{

    "query": {

        "match_all": {}

    }

}'

12查看集群的健康状态

  1. green:所有功能都是完好的;
  2. yellow:所有数据是可用的,但是一些副本还没有被分配;
  3. red代表一些数据由于某些原因已经不可用。

注意尽管一个集群是red状态,它仍然可以提供部分服务(比如,它会继续从可用的切片数据里搜索),但是在失去部分数据后,需要尽快去修复。

curl -XGET "http://172.0.0.52:9200/_cat/health?v"

13创建索引

  • test_one 索引名
  • pretty 参数表示输出格式良好的JSON响应(如果存在)
curl -XPUT "http://172.0.0.52:9200/test_one?pretty"

14查看索引列表

curl -XGET "http://172.0.0.52:9200/_cat/indices?v"
curl -XGET "http://172.0.0.52:9200/test_one"

15删除索引

根据索引名称删除。

curl -XDELETE "http://172.0.0.52:9200/test_one?pretty"
  • 可以一次删除多个索引(以逗号间隔)
  • 删除所有索引_all或通配符 *

16创建文档

使用PUT来创建文档,需要指定id。

  • 索引 index:test_one
  • 类型 type:test_type
  • _id:1
curl -XPUT "http://172.0.0.52:9200/test_one/test_type/1?pretty" -H 'Content-Type: application/json' -d'
{"name": "ghl", "age": 24, "sex": "male"}'

使用POST来创建文档,可以不指定id(不指定时随机生成id)

curl -XPOST "http://172.0.0.52:9200/test_one/test_type?pretty" -H 'Content-Type: application/json' -d'
{"name": "Jack"}'

17查看文档

curl -XGET "http://172.0.0.52:9200/test_one/test_type/1?pretty"

18替换文档

使用PUT并指定id时,es会使用新的文档替换原文档。

curl -XPUT "http://172.0.0.52:9200/test_one/test_type/1?pretty" -H 'Content-Type: application/json' -d'
{"name": "Jack"}'

19更新文档

curl -XPOST "http://172.0.0.52:9200/test_one/test_type/1/_update?pretty" -H 'Content-Type: application/json' -d'
{"doc":{"name": "Lucy"}}'

20删除文档

curl -XDELETE "http://172.0.0.52:9200/test_one/test_type/1?pretty"

索引的增删改查有一个类似的格式下:

  • REST风格的语法谓词
  • 节点ip
  • 节点端口号,默认9200
  • 索引名
  • 索引类型
  • 操作对象的ID号
curl -XGET "http://172.0.0.52:9200/<Index>/<Type>/<ID>"

21判断索引是否存在

curl -XHEAD "http://172.0.0.52:9200/test_one"

22查看索引模板

curl -XGET "http://172.0.0.52:9200/_template/template_1"
curl -XGET "http://172.0.0.52:9200/_template/temp*"
curl -XGET "http://172.0.0.52:9200/_template/template_1,template_2"
curl -XGET "http://172.0.0.52:9200/_template"

23删除模板

curl -XDELETE "http://172.0.0.52:9200/_template/template_1"

24打开/关闭索引

curl -XPOST "http://172.0.0.52:9200/test_one/_close"
curl -XPOST "http://172.0.0.52:9200/test_one/_open"
curl -XGET "http://172.0.0.52:9200/_cat/indices?v"

25查看索引状态信息

curl -XGET "http://172.0.0.52:9200/_stats"
curl -XGET "http://172.0.0.52:9200/logstash-nginx-access-2019.08.07,test_one/_stats"

26查看索引段信息

curl -XGET "http://172.0.0.52:9200/test_one/_segments"
curl -XGET "http://172.0.0.52:9200/logstash-nginx-access-2019.08.07,test_one/_segments"
curl -XGET "http://172.0.0.52:9200/_segments"
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-11-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 有暗香盈袖c 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1集群支持的选项
  • 2查看节点信息
  • 3查看master节点信息
  • 4查看所有节点上的热点线程
  • 5查看有问题的分片或索引
  • 6查看线程池设置
  • 7统计全部信息
  • 8查看集群状态
  • 9查看ES信息
  • 10获取所有索引的信息
  • 11获取所有文档数量
  • 12查看集群的健康状态
  • 13创建索引
  • 14查看索引列表
  • 15删除索引
  • 16创建文档
  • 17查看文档
  • 18替换文档
  • 19更新文档
  • 20删除文档
  • 21判断索引是否存在
  • 22查看索引模板
  • 23删除模板
  • 24打开/关闭索引
  • 25查看索引状态信息
  • 26查看索引段信息
相关产品与服务
Elasticsearch Service
腾讯云 Elasticsearch Service(ES)是云端全托管海量数据检索分析服务,拥有高性能自研内核,集成X-Pack。ES 支持通过自治索引、存算分离、集群巡检等特性轻松管理集群,也支持免运维、自动弹性、按需使用的 Serverless 模式。使用 ES 您可以高效构建信息检索、日志分析、运维监控等服务,它独特的向量检索还可助您构建基于语义、图像的AI深度应用。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档