ES和关系型数据库的数据对比

1、创建索引库
PUT/POST都可以,索引库名称必须全部小写,不能以下划线开头,也不能包含逗号
curl -XPUT 'http://192.168.136.131:9200/wangxiangyu_index/'
{"acknowledged":true}[root@localhost ~]#

在Marvel中查看:http://localhost:5601/app/marvel

2、创建索引

curl -XPOST http://192.168.136.131:9200/wangxiangyu_index/employee/1 -d '{
"first_name":"john",
"last_name":"smith",
"age":"25",
"about":"I love to go rock climbing"
}'

如果没有明确指定索引数据的ID,ES会自动生成一个随机的ID,需要使用POST参数

PUT和POST用法

PUT是幂等方法,POST不是。所以PUT用于更新、POST用于新增比较合适。
PUT,DELETE操作是幂等的。所谓幂等是指不管进行多少次操作,结果都一样。比如我用PUT修改一篇文章,然后在做同样的操作,每次操作后的结果并没有不同,DELETE也是一样。
POST操作不是幂等的,比如常见的POST重复加载问题:当我们多次发出同样的POST请求后,其结果是创建出了若干的资源。

还有一点需要注意的就是,创建操作可以使用POST,也可以使用PUT,区别在于POST是作用在一个集合资源之上的(/articles),而PUT操作是作用在一个具体资源之上的(/articles/123),比如说很多资源使用数据库自增主键作为标识信息,而创建的资源的标识信息到底是什么只能由服务端提供,这个时候就必须使用POST。

GET查询索引

查询所有
curl -XGET http://192.168.136.131:9200/wangxiangyu_index/employee/_search
按条件查询
curl -XGET http://192.168.136.131:9200/wangxiangyu_index/employee/_search?q=last_name:smith

curl -XGET http://192.168.136.131:9200/wangxiangyu_index/employee/1?pretty
在任意查询字符串中加pretty参数,es可以得到易于识别的json结果

curl后添加-i参数,可以得到反馈头文件
curl -i 'http://192.168.136.131:9200/wangxiangyu_index/employee/1?pretty'

检索文档中一部分数据
curl -XGET http://192.168.136.131:9200/wangxiangyu_index/employee/1?_source=age,about&pretty

只查询source部分的数据
curl -XGET http://192.168.136.131:9200/wangxiangyu_index/employee/1?_source

ES的更新

ES可以使用PUT或者POST对文档进行更新,如果指定ID的文档已经存在,则执行更新操作
注意:执行更新操作的时候
1、ES首先将旧的文档标记为删除状态
2、然后添加新的文档
3、旧的文档不会立即消失,但是也无法访问
4、ES会在你继续添加更多数据时在后台清理已经标记为删除状态的文档

局部更新

可以添加新字段或者更新已有的字段(必须使用POST)
curl -XPOST http://192.168.136.131:9200/wangxiangyu_index/employee/3/_update -d '{
"doc":{
"city":"beijing",
"car":"havel"
}
}'

ES的删除

curl -XDELETE http://192.168.136.131:9200/wangxiangyu_index/employee/4
curl -XDELETE 'http://192.168.136.131:9200/wangxiangyu_index/employee/_query?q=user:kimchy'
删除一个文档也不会立即生效,它只是被标记成已删除,ES将会在你之后添加更多索引的时候才会在后台进行删除内容的清理。

转载于:https://www.cnblogs.com/xyhero/p/9339186.html

elasticsearch如何使用?相关推荐

  1. Elasticsearch学习之路(一)

    一.前序 1.1正向索引和倒排索引 ** 正向索引通常用于数据库中,在搜索引擎领域使用的最多的就是倒排索引 ** 通过例子表示: 我爱编程, 我爱编程,我是小码农 1.1.1 正向索引 假设我们使用m ...

  2. 2021年大数据ELK(二十五):添加Elasticsearch数据源

    全网最详细的大数据ELK文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点. 目录 添加Elasticsearch数据源 一.Kibana索引模式 添加Elast ...

  3. 2021年大数据ELK(十九):使用FileBeat采集Kafka日志到Elasticsearch

    全网最详细的大数据ELK文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点. 目录 使用FileBeat采集Kafka日志到Elasticsearch 一.需求分 ...

  4. 2021年大数据ELK(十七):Elasticsearch SQL 订单统计分析案例

    全网最详细的大数据ELK文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点. 目录 订单统计分析案例 一.案例介绍 二.创建索引 三.导入测试数据 四.统计不同支 ...

  5. 2021年大数据ELK(十六):Elasticsearch SQL(职位查询案例)

    全网最详细的大数据ELK文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点. 目录 职位查询案例 一.查询职位索引库中的一条数据 二.将SQL转换为DSL 三.职 ...

  6. 2021年大数据ELK(十五):Elasticsearch SQL简单介绍

    全网最详细的大数据ELK文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点. 目录 Elasticsearch SQL简单介绍 一.SQL与Elasticsear ...

  7. 2021年大数据ELK(十三):Elasticsearch编程(添加职位数据)

    全网最详细的大数据ELK文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点. 目录 Elasticsearch编程 一.添加职位数据 1.初始化客户端连接 2.实 ...

  8. 2021年大数据ELK(十二):Elasticsearch编程(环境准备)

    全网最详细的大数据ELK文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点. 目录 Elasticsearch编程 一.环境准备 1.准备IDEA项目结构 2.准 ...

  9. 2021年大数据ELK(十一):Elasticsearch架构原理

    全网最详细的大数据ELK文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点. 目录 Elasticsearch架构原理 一.Elasticsearch的节点类型 ...

  10. 2021年大数据ELK(八):Elasticsearch安装IK分词器插件

    全网最详细的大数据ELK文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点. 目录 系列历史文章 安装IK分词器 一.下载Elasticsearch IK分词器 ...

最新文章

  1. mingle_大众汽车品牌SUV之夜,数千平米的mingle区和超长弧面屏了解一下?
  2. SQLAlchemy按降序排列?
  3. linux内核时间second,闰秒(leap second)和linux/unix时间
  4. python现在版本强势英雄_当前版本有哪些强势英雄?
  5. mac或者linux磁力下载方法:远离渣雷
  6. 这样子称象你试过没有?
  7. Numpy根据某一列进行排序
  8. 用计算机为题目写作400字,电脑课作文400字
  9. 中国电信中兴 B860AV 1.1-T线刷及卡刷固件和刷机教程.zip
  10. 人工智能对智能建筑有哪些影响,智能建筑发展存在哪些问题?
  11. 表示美元的符号html代码,美元符号HTML属性名称
  12. 海外邮件收发阻碍多?网易企业邮箱为您保驾护航【网易企业邮箱怎么申请】
  13. 电商设计的文字的选择与排版
  14. 自制智能手机电话APP
  15. JS实现点击按钮切换图片
  16. 解决VScode任务栏图标异常的可能办法
  17. 浅谈“敏感信息泄露“
  18. Vue3在当前h5界面禁用移动端物理返回键代码
  19. 用java的二维数组做一个简易计算优惠小程序(附带源码)
  20. mysql可以安多个吗_全屋插座安多高?5个数字全搞定

热门文章

  1. 取消endnotes参考文献格式域的步骤_大学体悟-毕业论文格式篇
  2. java 可重入锁 clh_Java并发编程系列-(4) 显式锁与AQS
  3. 如何选择神经网络的超参数
  4. signature=e5535ff98b93aa63c455611822dc57c2,高校新生预激综合征6例报告
  5. python读取文件路径中有中文_转 python 读取中文文件名/中文路径
  6. 项目建设做好服务器,我院数字化建设项目(一期)服务器系统切换工作顺利完成...
  7. Java面试题-2021
  8. numpy 转置_Python中Numpy.transpose()
  9. poj 3017 Cut the Sequence(DP+单调队列)
  10. selenium中录制拖拽动作