记录 Elasticsearch 常用的操作,如索引、查询、分词及调试等等相关的操作。
运维相关
查看集群健康状态
1 | GET _cat/health?v |
说明:v 是表示结果中返回表头
查看集群结点
1 | GET _cat/nodes?v |
查看所有索引
1 | GET _cat/indices?v |
文档操作
创建一个文档
1 | POST twitter/_doc/1 |
修改一个文档
1 | PUT twitter/_create/1 |
部分更新一个文档(更新部分字段)
1 | POST twitter/_update/1 |
插入或更新操作
1 | POST /catalog/_update/3 |
使用 doc_as_upsert
合并到 ID 为 3 的文档中,或者如果不存在则插入一个新文档。
检查一个文档是否存在
1 | HEAD twitter/_doc/1 |
删除一个文档
1 | DELETE twitter/_doc/1 |
查询删除(删除满足查询的 doc)
1 | POST twitter/_delete_by_query |
索引
检查一个索引是否存在
1 | HEAD twitter |
删除一个索引
1 | DELETE twitter |
查询 settings
1 | GET twitter/_settings |
修改 settings
1 | PUT twitter |
查询 mapping
1 | GET twitter/_mapping |
修改 mapping
1 | DELETE twitter |
批量添加 doc
1 | POST _bulk |
查询
查询所有文档
1 | POST twitter/_search |
查询行数
1 | GET twitter/_count |
指定分页
1 | GET twitter/_search?size=2&from=2 |
指定分页
1 | GET twitter/_search?size=2&from=2 |
带条件查询数量
1 | GET twitter/_count |
查询字段是否可以被聚合/搜索所有的文档
1 | GET twitter/_field_caps?fields=country |
分词
查看分词结果(使用标准分词器进行分词)
1 | GET twitter/_analyze |
对 Happy Birthday 使用 standard 分词器进行分词
调试
打开Profile 调试工具
1 | GET twitter/_search |
添加"profile": "true"
属性。
参考: