欢迎投稿

今日深度:

elasticsearch rest api操作,elasticsearchrest

elasticsearch rest api操作,elasticsearchrest


REST(REpresentational State Transfer)从字面看就是“表述性状态传输”,它通常是开发的一种约定,当所有的开发者都遵从这种约定的时候,可以大大简化开发的沟通成本。REST约定用HTTP的请求头POST、GET、PUT、DELETE正好可以对应CRUD(Create、Read、Update、Delete)四种数据操作。如果你设计的应用程序能符合REST原则(REST可称为"RESTful Web Service"也称"RESTful Web API"。


1.查看集群状态

GET /_cat/health?v

返回值

从以上的返回值中,我们可以得到一个名为ElasticSearch的集群,共有一个节点,没有索引数据。
ps:Epoch :时间戳 long 类型的

2.查看所有节点状态

`GET /_cat/nodes?v`

三、常见 CRUD 操作

1.新建索引

PUT /hiup?pretty

返回值

{
      "acknowledged": true,
      "shards_acknowledged": true
}
pretty参数:用来格式化返回值。类似于mysql\G 来格式化输出一样的作用。需要注意的是这个需要的操作是PUT 操作。

2.查看所有索引

GET /_cat/indices?v

这时候再使用这个命令,我们就能查看到所有索引数据。

从以上的返回值中,我们可以看见已经创建一个名为 hiup 尚未分配的索引。

3.创建文档

curl -XPUT 'localhost:9200/hiup/user/2?pretty' -d '{"name":"fu"}'

从以上的返回值,我们可以得到成功创建了一个hiup索引,类型为user,id为 2 。
需要声明的是,当你创建一个文档时,无需再这之前创建一个索引和类型,ElasticSearch会自动根据你的创建信息自动创建相应的索引、类型,直至文档。

4.查看文档

 curl -XGET 'localhost:9200/hiup/user/1?pretty'

5.删除文档

curl -XDELETE 'localhost:9200/hiup/user/1?pretty'

从返回值,我们可以发现通过操作我们已经删除了hiup索引中类型为user,id为1的文档。

6.修改文档

1.curl -XPUT 'localhost:9200/hiup/user/2?pretty' -d '{"name":"xiaoming"}'

从返回结构来看,我们可以发现修改了一个huip索引类型为user的文档。

2.curl -XPOST 'localhost:9200/hiup/user/2/_update?pretty&pretty' -d'
    {
      "doc": { "name": "xiaohong" }
    }

从返回结果来说,这两个操作时一样的。有所不同的是,上一个操作为替换操作,这个为更新操作。

7.批量新增文档

curl -XPOST 'localhost:9200/hiup/user/_bulk?pretty&pretty' -d
    '{"index":{"_id":"1"}}
    {"name": "zhaowu" }
    {"index":{"_id":"2"}}
    {"name": "wangwu" }'
  • 1

8.分页查询

curl -XGET 'localhost:9200/hiup/user/_search?pretty' -d'
    {
      "query": { "match_all": {} },
      "from": 1,
      "size": 1
    }

  • query:匹配所有
  • from:开始读取索引,从第十条开始读取
  • size:读取条数,相当于pagesize

9.过滤查询

$ curl -XGET 'localhost:9200/hiup/_search?pretty' -d'
    {
      "query": {
        "bool": {
          "must": { "match_all": {} },
          "filter": {
            "range": {
              "age": {
                "gte": 0,
                "lte": 1
              }
            }
          }
        }
      }
    }'
  • 12

查询hiup索引过滤age 大于等于0 小于等于1


www.htsjk.Com true http://www.htsjk.com/Elasticsearch/28910.html NewsArticle elasticsearch rest api操作,elasticsearchrest REST(REpresentational State Transfer)从字面看就是“表述性状态传输”,它通常是开发的一种约定,当所有的开发者都遵从这种约定的时候,可以大大...
相关文章
    暂无相关文章
评论暂时关闭