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

elasticsearch rest api操作相关推荐

  1. Elasticsearch java api操作(一)(Java Low Level Rest Client)

    一.说明: 一.Elasticsearch提供了两个JAVA REST Client版本: 1.java low level rest client: 低级别的rest客户端,通过http与集群交互, ...

  2. elasticsearch restful api操作使用指南

    一.创建索引 PUT twitter { "settings" : { "index" : { "number_of_shards" : 3 ...

  3. Elasticsearch Java API 6.2(java client)

    前言 本节描述了Elasticsearch提供的Java API,所有的Elasticsearch操作都使用客户端对象执行,所有操作本质上都是完全异步的(要么接收监听器,要么未来返回). 此外,客户端 ...

  4. Elasticsearch Javascript API增删改查

    查询 根据索引.类型.id进行查询: client.get({ index:'myindex', type:'mytype', id:1 },function(error, response){// ...

  5. es java_JAVA API操作ES详解

    一:运行环境 JDK:1.8 ES:5.6.4 二:JAVA依赖环境 elasticsearch.jar  5.6.4版本: xsi:schemaLocation="http://maven ...

  6. python elasticsearch模块_Python 操作 ElasticSearch

    Python操作ElasticSearch Python批量向ElasticSearch插入数据 Python 2的多进程不能序列化类方法, 所以改为函数的形式. 直接上代码: #!/usr/bin/ ...

  7. 【转载】Elasticsearch客户端API使用Demo

    Elasticsearch客户端API使用Demo, 转载自官方文档, 以索引雇员文档为示例, 在命令行使用curl演示了一系列的Restful API操作. 1.索引雇员文档 第一个业务需求就是存储 ...

  8. Elasticsearch Java API四种实现方式

    0.题记 之前Elasticsearch的应用比较多,但大多集中在关系型.非关系型数据库与Elasticsearch之间的同步.以上内容完成了Elasticsearch所需要的基础数据量的供给.但想要 ...

  9. 大数据技术之_20_Elasticsearch学习_01_概述 + 快速入门 + Java API 操作 + 创建、删除索引 + 新建、搜索、更新删除文档 + 条件查询 + 映射操作

    大数据技术之_20_Elasticsearch学习_01 一 概述 1.1 什么是搜索? 1.2 如果用数据库做搜索会怎么样? 1.3 什么是全文检索和 Lucene? 1.4 什么是 Elastic ...

最新文章

  1. David与Vincent的博弈游戏[树型DP]
  2. Exchange Server 2013 安装完成后配置外部URL
  3. 树链剖分(轻重链剖分) 讲解 (模板题目 P3384 【模板】轻重链剖分 )
  4. 10个用于处理日期和时间的 Python 库
  5. 第十周项目1-程序填空与阅读(一)
  6. 【渝粤题库】陕西师范大学400013 组织行为学 作业(专升本)
  7. android menuitem 字体颜色,安卓更改Menu的字体颜色(使用actionLayout,适用于多个fragment)...
  8. 用MVC做可拖拽的留言板,利用 Jquery模板 -- JsRender
  9. Vue中判断对象属性是否存在
  10. DbVisualizer 12.0.* Ubuntu
  11. PAT (Basic Level) Practice1024 科学计数法
  12. js赋值时特殊字符完美处理方案
  13. 蓝桥杯省赛——杨辉三角java
  14. PDCN循环 与 GTD时间管理
  15. python 改变图片像素值
  16. Golang入门之——文件锁操作flock
  17. 75 ----平面二次曲线方程的化简: 移轴变换、转轴变换、伸缩变换
  18. 聊聊ADAMoracle去中心化预言机网络服务介绍
  19. python找最长的单词_318. 最长单词长度乘积(Python)
  20. 分布式算法原理(转)

热门文章

  1. 10行代码AC——L1-018 大笨钟 (10分)(~解题报告~)
  2. 最全!最完整的求first集和follow的代码!!!编译原理 FIRST集和FOLLOW集的求法 代码,程序,实验报告
  3. idea2019运行php项目,新版IntelliJ phpstrom IDEA 2019.2版本的使用方法
  4. java 实现 tcp_java实现TCP通信
  5. java虚拟机监控_Java虚拟机监控工具
  6. python笔记之while循环
  7. python legend位置_关于matplotlib-legend 位置属性 loc 使用说明
  8. java学jdk几_Java系列学习(一)-JDK下载与安装
  9. windows mysql 免安装_windows 免安装mysql
  10. 好想学python下载_Python | 从零开始学(1)