Elasticsearch 实现数据的存储和检索|学习笔记

本文涉及的产品
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
简介: 快速学习 Elasticsearch 实现数据的存储和检索

开发者学堂课程【SpringBoot 实战教程 Elasticsearch 实现数据的存储和检索】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/651/detail/10822


Elasticsearch 实现数据的存储和检索


内容介绍:

在 Elasticsearch 中存储数据

二、从 Elasticsearch 中检索文档

 

一、在 Elasticsearch 中存储数据

1、在 Elasticsearch 中,所有的数据,都以文档的形式存储,也就是阶层格式的文档每个文档都有定义好的索引和类型。每个文档可以包含一个或多个字段来保存数据。

2、左边一个大括号属性名属性值但是需要注意 Elasticsearch 中每一个文档它是属于某一种类型的user 是类型的名字每个类型属于一个索引Elasticsearch 是以索引的形式进行数据的存储索引可以分为多种类型每个类型下面可以包含多个文档以下是其中一个示例使用的是 curl 写的代码。3指的是id要添加的是人称之为用户,3就是当前添加用户的 id最终是文档的格式user 属于某一种类型类型属于某一个索引索引可以有多个类型以这个形式进行数据的存储

3、在 sence 中,输入如下的 curl 请求代码:

curl-XPUT'192.168.25.129:9200/userindex/user/3?pretty'-d'

{

"first_name":"Douglas",

"last_name":"Fir",

"age":23,

"about":"Iliketobuildcabinets",

"interests":["forestry"]

}'

借助一个工具进行实现下载安装 sence它就是浏览器中的一个插件安装好之后就可以在浏览器中出现右上角的标志点击它就进入 sence

image.png

使用 curl 代码向 Elasticsearch 中添加数据这里已经添加了两个一个是 john一个还是 jane比如再添加一个把以上代码进行拷贝在左边进行粘贴即可这就是要添加用户的阶层数据user 是阶层数据所属的类型userindex 是这个类型所属的索引put 添加数据右边有一个三角点击执行右边会有相应的 index

{

"_ index": "userindex" ,索引

" type": "user",类型名字

"_ id": "3" ,用户ID

'_ version": 1 ,

" shards": {

"total": 2 ,

"successful": 1 ,成功添加

"failed": e

}

" created": true创建成功

}

这个用户已经添加到 Elasticsearch 的搜索引擎中

 

二、从 Elasticsearch 中检索文档

如果要检索某个数据也可以用 sence比如要查找 ID 是1之前添加过两个一个 ID 是1,一个 ID 是2,这里要查找 ID 是1同样用 curl 代码进行实现

在 sence 中,输入如下的 curl 请求代码

curl-XGET"http://192.168.25.129:9200/userindex/user/1"

因为要查找数据所以不是 put是 get查找时要指明索引要指明类型的名字因为要查找案例是1再指明 ID按绿色三角即可查出

搜索所有用户:

curl-XGET"http://192.168.25.129:9200/userindex/user/_search"代表查询所有查询 userindex 索引下user 类型下的所有文档

执行可以查询出三个total 是3,id 是1的是 johnid 是2的是 janeid 是3的是 douglas

查询符合某个条件的类似于数据库类似 sql 语句

curl-XGET"http://192.168.25.129:9200/userindex/user/_search?q=age:32"

用 q 指明查询的条件后面就是条件比如查询年龄是32岁的只有 jane 是32岁的所以条件首先是属性名也称为字段名冒号查询值点击执行就可以查询出 jane 年龄32

这就是在 Elasticsearch 中如何实现数据的存储和检索

 

相关实践学习
使用阿里云Elasticsearch体验信息检索加速
通过创建登录阿里云Elasticsearch集群,使用DataWorks将MySQL数据同步至Elasticsearch,体验多条件检索效果,简单展示数据同步和信息检索加速的过程和操作。
ElasticSearch 入门精讲
ElasticSearch是一个开源的、基于Lucene的、分布式、高扩展、高实时的搜索与数据分析引擎。根据DB-Engines的排名显示,Elasticsearch是最受欢迎的企业搜索引擎,其次是Apache Solr(也是基于Lucene)。 ElasticSearch的实现原理主要分为以下几个步骤: 用户将数据提交到Elastic Search 数据库中 通过分词控制器去将对应的语句分词,将其权重和分词结果一并存入数据 当用户搜索数据时候,再根据权重将结果排名、打分 将返回结果呈现给用户 Elasticsearch可以用于搜索各种文档。它提供可扩展的搜索,具有接近实时的搜索,并支持多租户。
相关文章
|
5天前
|
存储 JSON 数据格式
Elasticsearch 8.X 可以按照数组下标取数据吗?
Elasticsearch 8.X 可以按照数组下标取数据吗?
14 0
|
2月前
|
关系型数据库 MySQL
elasticsearch对比mysql以及使用工具同步mysql数据全量增量
elasticsearch对比mysql以及使用工具同步mysql数据全量增量
26 0
|
2月前
|
消息中间件 存储 关系型数据库
【微服务】mysql + elasticsearch数据双写设计与实现
【微服务】mysql + elasticsearch数据双写设计与实现
75 2
|
2月前
|
监控 安全 Linux
【Elasticsearch专栏 14】深入探索:Elasticsearch使用Logstash的日期过滤器删除旧数据
使用Logstash的日期过滤器可以有效删除Elasticsearch中的旧数据,释放存储空间并提高集群性能。通过配置Logstash,可以指定索引模式、筛选时间戳早于特定阈值的文档,并在输出阶段删除这些旧数据。执行配置时,需确保Logstash与Elasticsearch连接正常,并监控日志以确保操作安全。定期执行此操作可确保旧数据不会过多积累。总之,Logstash的日期过滤器提供了一种简单而高效的方法,帮助管理和优化Elasticsearch中的数据。
|
2月前
|
监控 Java 测试技术
【Elasticsearch专栏 13】深入探索:Elasticsearch使用Curator工具删除Elasticsearch中的历史数据
使用Curator工具可以有效管理Elasticsearch中的旧数据,通过编写YAML配置文件定义删除操作。配置中指定了基于索引名称前缀和年龄的过滤器,确保仅删除符合条件的旧索引。执行删除操作时,Curator会应用过滤器识别目标索引,并向Elasticsearch发送删除请求。通过设置选项,如忽略空列表和超时时间,可以确保操作的灵活性和稳定性。使用Curator不仅释放了存储空间,还提高了查询性能,是维护Elasticsearch健康的重要工具
|
5天前
|
存储 机器学习/深度学习 搜索推荐
Elasticsearch 8.X 向量检索和普通检索能否实现组合检索?如何实现?
Elasticsearch 8.X 向量检索和普通检索能否实现组合检索?如何实现?
24 3
|
5天前
|
存储 数据处理 索引
Elasticsearch 8.X 小技巧:使用存储脚本优化数据索引与转换过程
Elasticsearch 8.X 小技巧:使用存储脚本优化数据索引与转换过程
30 6
|
5天前
|
JSON 测试技术 数据格式
Elasticsearch 8.X 如何生成 TB 级的测试数据 ?
Elasticsearch 8.X 如何生成 TB 级的测试数据 ?
13 0
|
5天前
|
存储 Java 索引
Elasticsearch 8.X:这个复杂的检索需求如何实现?
Elasticsearch 8.X:这个复杂的检索需求如何实现?
14 0
|
5天前
|
监控 API 索引
实战问题:Elasticsearch 2.X 数据如何迁移到 7.X?
实战问题:Elasticsearch 2.X 数据如何迁移到 7.X?
10 0