标签:http 9200 bigdata cat master 常用命令 curl ES
Elasticsearch中信息很多,同时ES也有很多信息查看命令,可以帮助开发者快速查询Elasticsearch的相关信息。
_cat
$ curl localhost:9200/_cat
=^.^=
/_cat/allocation
/_cat/shards
/_cat/shards/{index}
/_cat/master
/_cat/nodes
/_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/plugins
/_cat/fielddata
/_cat/fielddata/{fields}
/_cat/nodeattrs
/_cat/repositories
/_cat/snapshots/{repository}
verbose
每个命令都支持使用?v参数,来显示详细的信息:
$ curl localhost:9200/_cat/master?v
id host ip node
yBet3cYzQbC68FRzLZDmFg 127.0.0.1 127.0.0.1 lihao
help
每个命令都支持使用help参数,来输出可以显示的列:
$ curl localhost:9200/_cat/master?help
id | | node id
host | h | host name
ip | | ip address
node | n | node name
CURL的操作
curl是利用URL语法在命令行方式下工作的开源文件传输工具,使用curl可以简单实现常见的get/post请求。简单的认为是可以在命令行下面访问url的一个工具。在centos的默认库里面是有curl工具的,如果没有请yum安装即可。
curl
-X 指定http的请求方法 有HEAD GET POST PUT DELETE
-d 指定要传输的数据
-H 指定http请求头信息
通过curl 操作Elasticsearch常用命令
注意elasticseach-6.3 需要增加 : curl -H "Content-Type: application/json" -XPOST http://node1:9200/twitter/doc/ -d '{"author" : "Doug Cutting"}'
ES创建索引库和索引时的注意点
1)索引库名称必须要全部小写,不能以下划线开头,也不能包含逗号
2)如果没有明确指定索引数据的ID,那么es会自动生成一个随机的ID,需要使用POST参数
$ curl http://node1:9200/_cat/indices?v #indices 可以替换上文中的所有命令
#创建索引库 bigdata_p
$ curl -XPUT http://master:9200/bigdata_p
#POST和PUT都可以用于创建,二者之间的区别:
#PUT是幂等方法,POST不是。所以PUT用于更新,POST用于新增比较合适。
$ curl -XPOST http://localhost:9200/bigdata/product/ -d '{"author" : "Doug Cutting"}'
$ curl -XPUT http://master:9200/bigdata_p/product/ -d '{"name":"hadoop", "author": "Doug Cutting", "c_version": "2.7.3"}'
#查询某一个索引库中的数据
$ curl -XGET http://master:9200/bigdata_p/_search?pretty
#如果要查询多个字段,使用","进行隔开。eg.
$ curl -XGET http://master:9200/bigdata_p/product/1?_source=name,author&pretty
#获取source所有数据
$ curl -XGET http://master:9200/bigdata_p/product/1?_source&pretty
#根据条件进行查询
$ curl -XGET http://master:9200/bigdata_p/product/_search?q=name:hbase,hive&pretty
ES更新
ES可以使用PUT或者POST对文档进行更新,如果指定ID的文档已经存在,则执行更新操作
注意:执行更新操作的时候,ES首先将旧的文档标记为删除状态,然后添加新的文档,旧的文档不会立即消失,但是你也无法访问,ES会继续添加更多数据的时候在后台清理已经标记为删除状态的文档。
局部更新
可以添加新字段或者更新已经存在字段(必须使用POST)
$ curl -XPOST http://master:9200/bigdata_p/product/2/_update -d '{"doc":{"c_version": "2.0.0", "publish_time": "2017-03-23"}}'
删除
#根据主键删除
$ curl -XDELETE http://master:9200/bigdata_p/product/3/
查看映射信息
curl -XGET "http://127.0.0.1:9200/productindex/_mapping?pretty"
{
"productindex" : {
"mappings" : { }
}
}
————————————————
版权声明:本文为CSDN博主「bluesort」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/dengwenqi123/article/details/82863545
标签:http,9200,bigdata,cat,master,常用命令,curl,ES 来源: https://blog.csdn.net/dl2277130327/article/details/103987441
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。