Elasticsearch命令总结

174 阅读2分钟
  1. 查看索引相关信息

GET my_index

  1. 查看索引的文档总数

GET my_index/_count

  1. 查看索引indices

GET /_cat/indices/my_index*?v&s=index

  1. 查看状态为绿色的索引

GET /_cat/indices?v&health=green

  1. 按照文档个数排序

GET /_cat/indices?v&s=docs.count.desc

  1. 查看具体的字段

GET /_cat/indices/my_index*?pri&v&h=health,index,pri,rep,docs,count,mt

  1. 查看每个索引占多少内存

GET /_cat/indices?v&h=i,tm&s=tm:desc

  1. 设置索引分片与副本数

PUT /my_index {"settings":{ "number_of_shards": 3, "number_of_replicas": 1, } }

  1. 查看集群的健康状况

GET _cluster/health

  1. 查看node节点信息

GET _cluster/nodes

  1. 查看分片信息

GET _cluster/shards

  1. 创建doc,自动生成id

POST my_index/_doc {}

  1. 创建doc,指定id。如果id已经存在,报错

PUT my_index/_doc/1?op_type=create {}

PUT my_index/_create/1 {}

  1. 更新文档,id存在则先删除,后创建,version+1

PUT my_index/_doc/1 {}

  1. 在原文档上增加字段

POST my_index/_update/1 {"新字段":"value"}

  1. 指定ID读取文档

GET my_index/_doc/1

  1. 批量操作bulk,支持增删改查。单条记录失败不会影响其他操作,返回每一条操作执行的结果

image.png

  1. 批量操作mget,可以减少网络连接所产生的开销,根据id来获取文档

image.png

  1. 批量操作msearch,批量查询,对不同索引进行查询

image.png

  1. 分词器api analyzer

image.png

  • standard 默认分词器;按词切分;小写处理
  • simple 按照非字母切分,非字母的都被去除;小写处理
  • whitespace 按照空格切分
  • stop 相比simple多了stop filter;会把the,a,is等修饰词去掉
  • keyword 不分词,直接把输入当成一个term来输出
  • pattern 通过正则表达式进行分词;默认是\W+,非字符的符号进行分割;小写处理
  • language 可以指定语言来处理;"alalyzer":"english"
  • icu 中文分词器;需要安装plugin(Elasticsearch-plugin install analysis-icu);提供unicode的支持,更好的支持亚洲语言;"alalyzer":"icu_analyzer"
  • ik 中文分词器;支持自定义词库;支持热更新分词字典; github
  • thulac 清华大学自然语言处理和社会人文计算实验室的一套中文分词器 21 启动多个实例

image.png