首页 > 其他分享 >springboot检索之elasticsearch快速使用

springboot检索之elasticsearch快速使用

时间:2022-11-30 19:34:11浏览次数:58  
标签:检索 存储 springboot 查询 索引 文档 elasticsearch Elasticsearch


打开elasticsearch官网,docs,简体中文->Elasticsearch: 权威指南

springboot检索之elasticsearch快速使用_elasticsearch

     Elasticsearch 是 面向文档 的,意味着它存储整个对象或 文档。Elasticsearch 不仅存储文档,而且 索引 每个文档的内容,使之可以被检索。在 Elasticsearch 中,我们对文档进行索引、检索、排序和过滤—而不是对行列数据。这是一种完全不同的思考数据的方式,也是 Elasticsearch 能支持复杂全文检索的原因。

     Elasticsearch 使用 JavaScript Object Notation(或者 ​JSON​)作为文档的序列化格式。

      一个文档代表一个员工。存储数据到 Elasticsearch 的行为叫做 索引 ,但在索引一个文档之前,需要确定将文档存储在哪里。

      一个 Elasticsearch 集群可以 包含多个 索引 ,相应的每个索引可以包含多个 类型 。 这些不同的类型存储着多个 文档 ,每个文档又有 多个 属性 。

springboot检索之elasticsearch快速使用_elasticsearch_02

springboot检索之elasticsearch快速使用_搜索_03

打开postman 

springboot检索之elasticsearch快速使用_elasticsearch_04

保存更多的文档+更新已存在的文档

springboot检索之elasticsearch快速使用_搜索_05

springboot检索之elasticsearch快速使用_搜索_06

检索文档

springboot检索之elasticsearch快速使用_高亮_07

删除文档

springboot检索之elasticsearch快速使用_elasticsearch_08

检查文档是否存在

有的话,status:200

springboot检索之elasticsearch快速使用_搜索_09

没有的话:status:404 

springboot检索之elasticsearch快速使用_高亮_10

PUT:保存文档+更新已存在的文档

springboot检索之elasticsearch快速使用_搜索_11

 查找所有

springboot检索之elasticsearch快速使用_高亮_12

按条件查询

springboot检索之elasticsearch快速使用_elasticsearch_13

使用查询表达式:  不再使用 query-string 参数,而是一个请求体替代

springboot检索之elasticsearch快速使用_elasticsearch_14

springboot检索之elasticsearch快速使用_搜索_15

全文检索

springboot检索之elasticsearch快速使用_搜索_16

 

springboot检索之elasticsearch快速使用_高亮_17

短语搜索

找出一个属性中的独立单词是没有问题的,但有时候想要精确匹配一系列单词或者_短语_ 。 比如, 我们想执行这样一个查询,仅匹配同时包含 “rock”  “climbing” ,并且 二者以短语 “rock climbing” 的形式紧挨着的雇员记录。

为此对 ​​match​​​ 查询稍作调整,使用一个叫做 ​​match_phrase​​ 的查询:

springboot检索之elasticsearch快速使用_elasticsearch_18

高亮搜索

许多应用都倾向于在每个搜索结果中 高亮 部分文本片段,以便让用户知道为何该文档符合查询条件。在 Elasticsearch 中检索出高亮片段也很容易。

再次执行前面的查询,并增加一个新的 ​​highlight​​ 参数

springboot检索之elasticsearch快速使用_elasticsearch_19

标签:检索,存储,springboot,查询,索引,文档,elasticsearch,Elasticsearch
From: https://blog.51cto.com/u_12528551/5900328

相关文章

  • SpringBoot参数校验
    1.前言因为网络传输的不可靠性,以及前端数据控制的可篡改性,后端的参数校验是必须的,应用程序必须通过某种手段来确保输入进来的数据从语义上来讲是正确的。2.数据校验的......
  • SpringBoot整合ElasticSearch
    目录1SpringBoot整合ElasticSearch1.1pom.xml1.2创建高级客户端1.3基本用法1.3.1创建、判断存在、删除索引1.3.2对文档的CRUD1.3.3批量CRUD数据1.3.4查询所有、模......
  • springboot任务之异步任务
    1-新建工程,只选web模块2-新增service包,AsyncService类packagecom.example.springboottask.service;importorg.springframework.stereotype.Service;@Servicepublicclas......
  • springcloud之springboot自动装载
        ImportSelector接口是Spring导入外部配置的核心接口,在SpringBoot的自动配置和@EnableXXX(功能性注解)中起到了决定性的作用.当在@Configuration标注的Class......
  • springboot消息之使用RabbitTemplate给rabbitmq发送和接收消息&序列化机制
    1-引入spring-boot-starter-amqp2-application.yml配置3-测试RabbitMQ  1--AmqpAdmin:管理组件  2--RabbitTemplate:消息发送处理组件======================......
  • springboot消息之@RabbitListener&@EnableRabbit监听消息队列的内容
    1-新建service包BookService类packagecom.example.springbootamqp.service;importcom.example.springbootamqp.bean.Book;importorg.springframework.amqp.rabbit......
  • springboot消息之JMS&AMQP简介
    大多应用中,可通过消息服务中间件来提升系统异步通信`扩展解耦能力.    异步处理  应用解耦  流量削峰消息服务中有两个重要概念:消息代理和目的地(m......
  • springboot消息之RabbitMQ简介
    RabbitMQ是一个有erlang开发的AMQP(AavancedMessageQueueProtocol)的开源实现核心概念:Publisher :消息的生产者,也是一个向交换器发布消息的客户端应用程序Mess......
  • springboot消息之AmqpAdmin管理组件的使用
    如果在使用@RabbitListener`@EnableRabbit注解之前没有在rabbitmq管理界面上创建exchange和queue,绑定规则,那么就可以在程序中使用AmqpAdmin管理组件测试类中添加,......
  • springboot任务之定时任务
    1-service包下新建ScheduleService类packagecom.example.springboottask.service;importorg.springframework.scheduling.annotation.Scheduled;importorg.springf......