ElasticSearch学习笔记(二)—结构了解和索引文档增删改

简介: 前面学习了ElasticSearch的概况以及一些配套插件的安装。这篇旨在记录对ES结构的了解和一些基本的操作。

前面学习了ElasticSearch的概况以及一些配套插件的安装。这篇旨在记录对ES结构的了解和一些基本的操作。


ElasticSearch结构:



对于ES来说,有几个专有名词。比如索引,类型,id这些东西,甚至是倒排插序等等。对于ES来说,ES的基本结构大致为下


image.png



拿传统的关系DB对比:


· ElasticSearch相当于关系DB

· 索引(Indices)相当于database数据库

· 类型(type)相当于数据库中的一个表

· 文档(document)相当于表中的某一行

· 字段(field)相当于每一列字段的数据


但是优点不一样的是:关系DB给人的感觉更严谨(还是繁琐),比如他的数据库要进行建立数据库,建表,让才能插值。而ES通过简单的API可以直接插入,如果没有该索引会直接建立。同样,再更改数据也是一样。操作起来更像我们平时用起来的Nosql,map之类。这样的便捷又难免让人担心ES的严谨性,如果不慎的操作可能带来的影响较大,不过还好ES支持文件备份。


ElasticSearch基本操作:增删改查



ES中常用的请求方式有:


PUT 表示增加

GET 表示获取

DELETE 表示删除

UPDATE 表示更新


ElasticSearch基本操作:增


1.创建索引

PUT bigsai


2.查看是否创建成功

GET _cat/indices?v

20190317161600656.png20190317161639439.png



3.插入数据(可直接连同索引创建)


20190317161902962.png20190317163221363.png


再次GET _cat/indices?v查看发现索引直接被创建。其中

_index 表示哪个索引

_type 表示哪个表

_id 主键

_version 版本

found 数据存在

_source: 数据内容


ElasticSearch基本操作:删


1.删除数据

直接DELETE {索引}/{类型}/{主键} 即可


2019031716341379.png


可能会好奇get 后面的pretty干啥的,百度上说没啥大用,是为了简洁给出的结果。


2.删除索引


DELETE {索引名称}


20190317164123447.png


可以看到前面的bigsai索引已经被删除了。


ElasticSearch基本操作:改


修改数据有两种方式:第一种类似插入覆盖的思想,第二种比较纯正,但是效果一致


20190317164530325.png


查看数据,直接GET下去,查询索引,GET _cat/indices?v


20190317164721140.png


附上上述操作的一些指令,再kibana中进行。http://localhost:5601/app/kibana#/dev_tools/console?_g=()


PUT index1/type1/id1
{
 "name":"test"
}
GET _cat/indices?v
GET index1/type1/id1?pretty
PUT index1/type1/id2
{
 "school":"just"
}
GET index1
DELETE index1/type1/id1
GET index1/type1/id1?pretty
DELETE bigsai
GET _cat/indices?v
PUT index1/type1/id2
{"school":"江科大"}
POST index1/type1/id2/_update
{"doc":{"school":"江科大"}}
GET index1/type1/id2?pretty


学会这些,对ES结构有了初步了解,能够简单呃储存信息。下一步学习目标:学习一些主要查询—>结合javaAPI—>在服务器环境运行。

相关实践学习
以电商场景为例搭建AI语义搜索应用
本实验旨在通过阿里云Elasticsearch结合阿里云搜索开发工作台AI模型服务,构建一个高效、精准的语义搜索系统,模拟电商场景,深入理解AI搜索技术原理并掌握其实现过程。
ElasticSearch 最新快速入门教程
本课程由千锋教育提供。全文搜索的需求非常大。而开源的解决办法Elasricsearch(Elastic)就是一个非常好的工具。目前是全文搜索引擎的首选。本系列教程由浅入深讲解了在CentOS7系统下如何搭建ElasticSearch,如何使用Kibana实现各种方式的搜索并详细分析了搜索的原理,最后讲解了在Java应用中如何集成ElasticSearch并实现搜索。  
目录
相关文章
|
自然语言处理 大数据 应用服务中间件
大数据-172 Elasticsearch 索引操作 与 IK 分词器 自定义停用词 Nginx 服务
大数据-172 Elasticsearch 索引操作 与 IK 分词器 自定义停用词 Nginx 服务
372 5
|
存储 分布式计算 大数据
大数据-169 Elasticsearch 索引使用 与 架构概念 增删改查
大数据-169 Elasticsearch 索引使用 与 架构概念 增删改查
305 3
|
存储 缓存 监控
优化Elasticsearch 索引设计
优化Elasticsearch 索引设计
360 5
|
存储 JSON 关系型数据库
Elasticsearch 索引
【11月更文挑战第3天】
413 4
|
测试技术 API 开发工具
ElasticSearch7.6.x 模板及滚动索引创建及注意事项
ElasticSearch7.6.x 模板及滚动索引创建及注意事项
307 8
|
JSON 自然语言处理 数据库
ElasticSearch基础1——索引和文档。Kibana,RestClient操作索引和文档+黑马旅游ES库导入
概念、ik分词器、倒排索引、索引和文档的增删改查、RestClient对索引和文档的增删改查
ElasticSearch基础1——索引和文档。Kibana,RestClient操作索引和文档+黑马旅游ES库导入
|
存储 搜索推荐 数据建模
Elasticsearch 的数据建模与索引设计
【9月更文第3天】Elasticsearch 是一个基于 Lucene 的搜索引擎,广泛应用于全文检索、数据分析等领域。为了确保 Elasticsearch 的高效运行,合理的数据建模和索引设计至关重要。本文将探讨如何为不同的应用场景设计高效的索引结构,并分享一些数据建模的最佳实践。
673 3
|
JSON 自然语言处理 算法
ElasticSearch基础2——DSL查询文档,黑马旅游项目查询功能
DSL查询文档、RestClient查询文档、全文检索查询、精准查询、复合查询、地理坐标查询、分页、排序、高亮、黑马旅游案例
ElasticSearch基础2——DSL查询文档,黑马旅游项目查询功能
|
存储 搜索推荐 API
探究:Elasticsearch 文档的 _id 是 Lucene 的 docid 吗?
【8月更文挑战第31天】在深入探索Elasticsearch(简称ES)这一强大的搜索引擎时,了解其底层存储机制——特别是与Lucene的关系,对于优化查询性能、设计高效的数据模型至关重要。其中,一个常见且容易引发误解的问题便是:Elasticsearch中文档的_id字段是否直接等同于Lucene的docid?本文将通过图文并茂的方式,详细剖析这一问题,帮助读者理解两者之间的微妙关系。
530 0
|
安全 Java Linux
Linux安装Elasticsearch详细教程
Linux安装Elasticsearch详细教程
2182 64

热门文章

最新文章