Elasticsearch模块——CRUD

本文涉及的产品
Elasticsearch Serverless通用抵扣包,测试体验金 200元
简介: ElastICsearch的基本操作:增删改查,有必要了解,以备不时之需. 增删改查是数据库的基础操作方法。ES 虽然不是数据库,但是很多场合下,都被人们当做一个文档型 NoSQL 数据库在使用,原因自然是因为在接口和分布式架构层面的相似性。

ElastICsearch的基本操作:增删改查,有必要了解,以备不时之需.
增删改查是数据库的基础操作方法。ES 虽然不是数据库,但是很多场合下,都被人们当做一个文档型 NoSQL 数据库在使用,原因自然是因为在接口和分布式架构层面的相似性。虽然在 Elastic Stack 场景下,数据的写入和查询,分别由 Logstash 和 Kibana 代劳,作为测试、调研和排错时的基本功,还是需要了解一下 ES 的增删改查用法的。
增加:

ES 的一大特点,就是全 RESTful 接口处理 JSON 请求。所以,数据写入非常简单:
    #:curl -XPOST http://127.0.0.1:9200/crud-c/testlog -d '{
    "date" : "3.1415926",
    "user" : "BastRiven770",
    "mesg" : "first message into Elasticsearch"
}'

具体的字段含义请看下面图解:
image

现在,我们打开ES-head插件就可以看见我们添加进去的数据了:
image

但是具体的数据详情需要看:
image
当然,这是使用了可视化工具查看

查看
在数据写入的时候,会返回该数据的 _id。这就是后续用来获取数据的关键:
image

curl -XGET http://127.0.0.1:9200/ http://127.0.0.1:9200/crud-c/testlog/AV5wElDCGrRExhjjUpZK

image
这个 _source 里的内容,正是之前写入的数据。
如果觉得这个返回看起来有点太过麻烦,可以使用

curl -XGET http://127.0.0.1:9200/crud-c/testlog/AV5wElDCGrRExhjjUpZK/_source

来指明只获取源数据部分。
image

删除

要删除数据,修改发送的 HTTP 请求方法为 DELETE 即可:
curl -XDELETE http://127.0.0.1:9200/crud-c/testlog/AV5wElDCGrRExhjjUpZK

image

当然,你也可以选择删除一个集合:

curl -XDELETE http://127.0.0.1:9200/crud-c*

表示删除crud-c下面的数据,包括crud-c.

更新
AV5wN1GxGrRExhjjUpZN

curl -XPOST http://127.0.0.1:9200/crud-c/testlog/AV5wN1GxGrRExhjjUpZN -d '{
    "date" : "2.71828182",
    "user" : "东华紫府少阳君",
    "mesg" : "first message into Elasticsearch but version 2"}'

更新结果:
image
另一种是局部更新,使用 /_update 接口:


# curl -XPOST 'http://127.0.0.1:9200/crud-c/testlog/AV5wN1GxGrRExhjjUpZN/_update' -d '{
    "doc" : {
        "user" : "DW07"
    }
}'

同样是可以更新的.
ElastICsearch的基本操作就这样说完了.

相关实践学习
以电商场景为例搭建AI语义搜索应用
本实验旨在通过阿里云Elasticsearch结合阿里云搜索开发工作台AI模型服务,构建一个高效、精准的语义搜索系统,模拟电商场景,深入理解AI搜索技术原理并掌握其实现过程。
ElasticSearch 最新快速入门教程
本课程由千锋教育提供。全文搜索的需求非常大。而开源的解决办法Elasricsearch(Elastic)就是一个非常好的工具。目前是全文搜索引擎的首选。本系列教程由浅入深讲解了在CentOS7系统下如何搭建ElasticSearch,如何使用Kibana实现各种方式的搜索并详细分析了搜索的原理,最后讲解了在Java应用中如何集成ElasticSearch并实现搜索。  
目录
相关文章
|
12月前
|
网络协议 Java Maven
多模块项目使用ElasticSearch报错
多模块项目使用ElasticSearch报错
296 6
|
API 索引
【Elasticsearch】学好Elasticsearch系列-索引的CRUD
【Elasticsearch】学好Elasticsearch系列-索引的CRUD
156 0
|
存储 JSON 自然语言处理
|
存储 JSON 自然语言处理
三.全文检索ElasticSearch经典入门-索引CRUD&分词器&文档映射&文档CRUD
三.全文检索ElasticSearch经典入门-索引CRUD&分词器&文档映射&文档CRUD
|
Java 关系型数据库 MySQL
Spring boot 2.3.12集成ElasticSearch7.6.2并进行CRUD
Spring boot 2.3.12集成ElasticSearch7.6.2并进行CRUD
311 0
|
消息中间件 JavaScript 小程序
SpringBoot+ElasticSearch 实现模糊查询,批量CRUD,排序,分页,高亮
SpringBoot+ElasticSearch 实现模糊查询,批量CRUD,排序,分页,高亮
|
关系型数据库 MySQL 开发工具
Python:使用 mysqlsmom 模块实时同步MySQL数据到ElasticSearch
Python:使用 mysqlsmom 模块实时同步MySQL数据到ElasticSearch
220 0
|
索引
【ELK】(二)Elasticsearch 的 CRUD
【ELK】(二)Elasticsearch 的 CRUD
151 0
【ELK】(二)Elasticsearch 的 CRUD
|
JSON 自然语言处理 搜索推荐
【Elasticsearch 入门公开课】Elasticsearch 搜索、文档CRUD、索引及分词原理介绍-回顾篇(3)
本周课程(11~14讲)介绍了 如何对Elasticsearch 文档增删改查、什么是倒排索引、分词的介绍及 Elasticsearch 各个分词的作用、以及Elasticsearch 搜索查询方式及相关性衡量指标。
6382 0
【Elasticsearch 入门公开课】Elasticsearch 搜索、文档CRUD、索引及分词原理介绍-回顾篇(3)