热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

ElasticSearchRESTFUL风格的增删改查操作

ElasticSearchRESTFUL风格的增删改查操作,Go语言社区,Golang程序员人脉社

ElasticSearch RESTFUL风格的增删改查操作

1、RESTFUL相关

ES中相关概念:是基于Lucene开发的分布式全文检索框架,往ES中存储和从ES中查询,格式是JSON

索引:Index 相当于数据库中的database
类型:type 相当于数据中的table
主键:Id 相当于数据库中的主键

往ES中存储数据,其实就是往ES中的Index 下的type下存储JSON数据
RESTFUL风格的API(请求规范)
通过http的形式,发送请求,对ES进行操作
查询:请求方式应该为GET
删除:请求方式应该为DELETE
添加:请求方式为PUT或POST
修改:请求方式为PUT或POST
其中index、type是必须提供的。
id是可选的,不提供es会自动生成。
index、type将信息进行分层,利于管理。
index可以理解为数据库;type理解为数据表;id相当于数据库表中记录的主键,是唯一的。

2、增删改查操作:

在node-1主机上
#向store索引中添加一些书籍
curl -H “Content-Type: application/json” -XPUT ‘http://192.168.43.250:9200/store/books/1’ -d ‘{
“title”: “Elasticsearch book”,
“name” : {
“first” : “guanglei”,
“last” : “wu”
},
“publish_date”:“2020-06-01”,
“price”:“49.99”
}’
在这里插入图片描述
Node-1主机查询结果
curl -XGET ‘http://192.168.43.250:9200/store/books/1’
在这里插入图片描述

Node -2 查询结果
curl -XGET ‘http://192.168.43.250:9200/store/books/1’
在这里插入图片描述

通过浏览器查找
在这里插入图片描述
再添加一本书
curl -H “Content-Type: application/json” -XPUT ‘http://192.168.43.250:9200/store/books/2’ -d ‘{
“title”: “Elasticsearch book2”,
“name” : {
“first” : “guanglei”,
“last” : “wu”
},
“publish_date”:“2020-06-01”,
“price”:“35.99”
}’
在这里插入图片描述
查询curl -XGET ‘http://192.168.43.250:9200/store/books/2’
在这里插入图片描述
通过_source获取指定的字段
curl -XGET ‘http://192.168.43.250:9200/store/books/1?_source=title,price’

在这里插入图片描述

#可以通过覆盖的方式更新
curl -H “Content-Type: application/json” -XPUT ‘http://192.168.43.250:9200/store/books/1’ -d ‘{
“title”: “Elasticsearch: book001”,
“name” : {
“first” : “guanglei”,
“last” : “wu”
},
“publish_date”:“2020-06-01”,
“price”:“99.99”
}’
在这里插入图片描述
或者通过 _update API的方式单独更新你想要更新的

curl -H “Content-Type: application/json” -XPOST
‘http://192.168.43.250:9200/store/books
/1/_update’ -d ‘{
“doc”: {
“price” : 88.88
}
}’
在这里插入图片描述
#删除一个文档
curl -XDELETE ‘http://192.168.43.250:9200/store/books/1’
在这里插入图片描述


推荐阅读
  • 数字图书馆近期展出了一批精选的Linux经典著作,这些书籍虽然部分较为陈旧,但依然具有重要的参考价值。如需转载相关内容,请务必注明来源:小文论坛(http://www.xiaowenbbs.com)。 ... [详细]
  • 开机自启动的几种方式
    0x01快速自启动目录快速启动目录自启动方式源于Windows中的一个目录,这个目录一般叫启动或者Startup。位于该目录下的PE文件会在开机后进行自启动 ... [详细]
  • DAO(Data Access Object)模式是一种用于抽象和封装所有对数据库或其他持久化机制访问的方法,它通过提供一个统一的接口来隐藏底层数据访问的复杂性。 ... [详细]
  • 基于Net Core 3.0与Web API的前后端分离开发:Vue.js在前端的应用
    本文介绍了如何使用Net Core 3.0和Web API进行前后端分离开发,并重点探讨了Vue.js在前端的应用。后端采用MySQL数据库和EF Core框架进行数据操作,开发环境为Windows 10和Visual Studio 2019,MySQL服务器版本为8.0.16。文章详细描述了API项目的创建过程、启动步骤以及必要的插件安装,为开发者提供了一套完整的开发指南。 ... [详细]
  • Web开发框架概览:Java与JavaScript技术及框架综述
    Web开发涉及服务器端和客户端的协同工作。在服务器端,Java是一种优秀的编程语言,适用于构建各种功能模块,如通过Servlet实现特定服务。客户端则主要依赖HTML进行内容展示,同时借助JavaScript增强交互性和动态效果。此外,现代Web开发还广泛使用各种框架和库,如Spring Boot、React和Vue.js,以提高开发效率和应用性能。 ... [详细]
  • 利用爬虫技术抓取数据,结合Fiddler与Postman在Chrome中的应用优化提交流程
    本文探讨了如何利用爬虫技术抓取目标网站的数据,并结合Fiddler和Postman工具在Chrome浏览器中的应用,优化数据提交流程。通过详细的抓包分析和模拟提交,有效提升了数据抓取的效率和准确性。此外,文章还介绍了如何使用这些工具进行调试和优化,为开发者提供了实用的操作指南。 ... [详细]
  • 在PHP中实现腾讯云接口签名,以完成人脸核身功能的对接与签名配置时,需要注意将文档中的POST请求改为GET请求。具体步骤包括:使用你的`secretKey`生成签名字符串`$srcStr`,格式为`GET faceid.tencentcloudapi.com?`,确保参数正确拼接,避免因请求方法错误导致的签名问题。此外,还需关注API的其他参数要求,确保请求的完整性和安全性。 ... [详细]
  • 在安装并配置了Elasticsearch后,我在尝试通过GET /_nodes请求获取节点信息时遇到了问题,收到了错误消息。为了确保请求的正确性和安全性,我需要进一步排查配置和网络设置,以确保Elasticsearch集群能够正常响应。此外,还需要检查安全设置,如防火墙规则和认证机制,以防止未经授权的访问。 ... [详细]
  • C++ 开发实战:实用技巧与经验分享
    C++ 开发实战:实用技巧与经验分享 ... [详细]
  • 本文介绍了 Vue 开发的入门指南,重点讲解了开发环境的配置与项目的基本搭建。推荐使用 WebStorm 作为 IDE,其下载地址为 。安装时请选择适合您操作系统的版本,并通过 获取激活码。WebStorm 是前端开发者的理想选择,提供了丰富的功能和强大的代码编辑能力。 ... [详细]
  • IOS Run loop详解
    为什么80%的码农都做不了架构师?转自http:blog.csdn.netztp800201articledetails9240913感谢作者分享Objecti ... [详细]
  • 在多线程并发环境中,普通变量的操作往往是线程不安全的。本文通过一个简单的例子,展示了如何使用 AtomicInteger 类及其核心的 CAS 无锁算法来保证线程安全。 ... [详细]
  • [转]doc,ppt,xls文件格式转PDF格式http:blog.csdn.netlee353086articledetails7920355确实好用。需要注意的是#import ... [详细]
  • window下的python安装插件,Go语言社区,Golang程序员人脉社 ... [详细]
  • 大类|电阻器_使用Requests、Etree、BeautifulSoup、Pandas和Path库进行数据抓取与处理 | 将指定区域内容保存为HTML和Excel格式
    大类|电阻器_使用Requests、Etree、BeautifulSoup、Pandas和Path库进行数据抓取与处理 | 将指定区域内容保存为HTML和Excel格式 ... [详细]
author-avatar
米粒尖尖果儿_445
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有