28.JavaWeb-Elasticsearch

news2024/11/23 23:52:15

1.Elasticsearch概述

        Elasticsearch 是一个分布式的全文检索引擎。采用Java语言开发,基于Apache协议的开源项目,具有实时搜索,稳定,可靠,快速的特点。

1.1 全文检索引擎

        分为通用搜索引擎(百度、谷歌)与站内搜索引擎,全文检索在处理非结构化文本数据方面非常有用

1.2 结构化数据与非结构化数据

        每个属性都有对应的字段的数据就是结构化数据,反之无法用二维表表述的数据就是非结构化数据

1.3 ES全文检索的原理

        Elasticsearch基于Lucene库构建而成,它使用了倒排索引的方式来实现全文检索。

1.3.1 倒排索引

        就是查找内容,根据内容得到内容所在文档

1.3.2 正排索引

        就是通过路径找到文档,再从文档找某段内容

2. ES安装

Elasticsearch:官方分布式搜索和分析引擎 | Elastic在 RESTful 风格的分布式免费开源搜索和分析引擎开源中,Elasticsearch 处于领先地位,速度快,可实现水平可扩展性和可靠性,并能让您轻松进行管理。免费启用。https://www.elastic.co/cn/elasticsearch/

2.1 启动ES

        双击 bin/elasticsearch.bat

TIPS:
启动后ES会占用两个端口。
9200:ES对外提供服务的端口
9300:ES进行集群间通信与数据传输的端口

2.2 修改ES的配置文件

elasticsearch-8.8.2\config\elasticsearch.yml

2.3 添加编码配置

elasticsearch-8.8.2\config\jvm.options 

2.4 打开浏览器访问

http://localhost:9200

 3.ES的使用

常见操作
新增索引PUT http://localhost:9200/job
查询索引中数据GET http://localhost:9200/job
删除索引DELETE http://localhost:9200/job
查询所有索引数据GET localhost:9200/_all
查询索引的摘要信息GET http://localhost:9200/_cat/indices?v
获取所有映射GET http://localhost:9200/_mapping

3.1 启用/关闭索引

POST http://localhost:9200/job/_close
POST http://localhost:9200/job/_open

3.2 ES的数据类型

类型说明示例
text当一个字段是要被全文搜索的,比如文章内容、产品描
述等使用text类型。
设置text类型以后,字段内容会被分析,在生成倒排索
引以前,字符串会被分一个一个词项。
比如:java软件工程师,
会被分词为 java 、 软
件 、 工程师
keywordkeyword类型适用于索引结构化的字段,如果字段需要
进行过滤、排序、聚合。keyword类型的字段只能通过
精确值搜索到。
比如:城市,我们搜索北
京、深圳,这类词不应该
被拆分。
date通过format设置日期格式,常见的可以设置成年月日时分秒、年月日及毫秒值三种格式。
ignore_malformed。默认值false。如果为true,则忽略格式错误的数字。如果为false(默认值),则格式错误的数字将引发异常并拒绝整个文档。
null_value。默认是null。接受采用配置格式之一的日期值作为该字段,以替换任何显式的空值。默认为null,这意味着该字段被视为丢失。
byte,short,integer,long整型比如:职位ID、薪水。
float, half_float, scaled_float,double浮点型
integer_range, long_range, float_range,double_range,date_range范围型

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/786705.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

苹果发布安全更新,修复了今年第11个零日漏洞!

苹果公司发布了安全更新,修复针对 iPhone、Mac 和 iPad 的零日漏洞。 苹果公司在一份公告中描述了一个 WebKit 漏洞,该漏洞被标记为 CVE-2023-37450,已在本月初的新一轮快速安全响应 (RSR) 更新中得到解决。 本次修补的另一个零日漏洞是一个…

CAD中让时间日期自动填写的方法

图纸的图签中,通常会有一栏是出图日期。有的单位,也会叫做版本号。即哪天出的图。一般情况下,出图日期就是打图当天。 在这样的前期下,图纸由于存在频繁修改,所以出图日期也会存在变化。还有一种情况,就是出…

(四)FLUX语法

以下内容来自 尚硅谷,写这一系列的文章,主要是为了方便后续自己的查看,不用带着个PDF找来找去的,太麻烦! 第 4 章 FLUX语法 4.1 认识FLUX语言 1、Flux是一种函数式的数据脚本语言,它旨在将查询、处理、分…

Docker 网络和资源限制

Docker 网络 一、Docker 网络的概念1、Docker 网络实现原理2、查看容器的输出和日志信息3、Docker 的网络模式:4、容器的网络模式 二、网络模式详解1、host模式2、container模式3、none模式4、bridge模式5、自定义网络 三、资源控制1、CPU 资源控制(1&am…

MQ - 闲聊MQ一二事儿 (Kafka、RocketMQ 、Pulsar )

文章目录 MQ的发展史阶段一:追求解耦阶段二:追求吞吐量与一致性阶段三:追求平台化 MQ的通用架构主题topic、生产者producer、消费者consumer分区partition MQ 存储KafkaGood Design ---> 磁盘顺序写盘Poor Impact---> topic 数量不能过…

Java Spring和Spring集成Mybatis

0目录 1.Spring 2.Spring集成Mybatis 1.Spring 特性 IOC:控制反转 AOP:面向切面 Spring组成部分 在SMM中起到的作用(粘合剂) Spring理念 OOP核心思想【万物皆对象】 Spring核心思想【万物皆Bean组件】 Spring优势 低侵入式 …

解决Jmeter响应内容显示乱码

一、问题描述 jmeter在执行接口请求后,返回的响应体里面出现乱码现象,尽管在调了对应请求的响应编码也无用,现找到解决办法。 二、解决办法 进入到jmeter的bin目录下,找到jmeter.properties,通过按ctrlF快速定位查找到…

手机图片转pdf?两种方法介绍

手机图片转pdf?如今,随着生活的数字化,我们的手机中储存了大量的照片。但是,如果需要将这些照片转换成PDF格式,该怎么办呢?下面,小编就给大家介绍三种方法来实现这一目标。 第一种方法&#xff…

SpringBoot 统一功能处理:用户登录权限校验-拦截器、异常处理、数据格式返回

本篇将要学习 Spring Boot 统一功能处理模块,这也是 AOP 的实战环节 用户登录权限的校验实现接口 HandlerInterceptor WebMvcConfigurer异常处理使用注解 RestControllerAdvice ExceptionHandler数据格式返回使用注解 ControllerAdvice 并且实现接口 ResponseBody…

基于STM32CubeMX和keil采用STM32F407的基本定时器中断实现LED闪烁

文章目录 前言1. 电路原理图理解2. 基本定时器2.1 STM32定时器中断的流程:2.2 部分参数详解2.2.1 时钟源2.2.2 预分频系数2.2.3 自动重装载值 3. STM32CubeMX参数配置3.1GPIO配置3.2 时钟配置3.2 配置定时器相关参数3.3 Debug配置3.4 中断配置3.5 代码生成 4. keil代…

【每日一题】—— B. Ternary String (Educational Codeforces Round 87 (Rated for Div. 2))

🌏博客主页:PH_modest的博客主页 🚩当前专栏:每日一题 💌其他专栏: 🔴 每日反刍 🟡 C跬步积累 🟢 C语言跬步积累 🌈座右铭:广积粮,缓称…

ftp传文件越来越慢的原因,以及解决方案

FTP 是一种常用的文件传输协议,它基于客户端-服务端模型工作,允许用户通过网络传输文件。但是,有时候在使用 FTP 的过程中,文件传输速度会逐渐变慢,这给用户带来了很多困扰。本文将分析 FTP 传文件变慢的原因&#xff…

Jwt(Json web token)——从Http协议到session+cookie到Token Jwt介绍 Jwt的应用:登陆验证的流程

目录 引出从Http协议到session&cookie到TokenHTTP协议session & cookiesessioncookie为什么需要session & cookie? JavaEE传统解决长连接方案问题:分布式不适用解决方案:令牌Token Jwt,Json web tokenjwt的结构Header加密算法Ba…

MySQL Workbench的使用

MySQL Workbench 是一款专门为 MySQL 设计的可视化数据库管理软件,我们可以在自己的计算机上,使用图形化界面远程管理 MySQL 数据库。 MySQL Workbench 的初始界面如下图所示。 点击方框后会进入这个界面,这样就与数据库连接完毕了 使用 Wo…

Docker 全栈体系(四)

Docker 体系(高级篇) 一、Docker复杂安装 1. 安装mysql主从复制 主从搭建步骤 新建主服务器容器实例3307 docker run -p 3307:3306 --name mysql-master \ -v /mydata/mysql-master/log:/var/log/mysql \ -v /mydata/mysql-master/data:/var/lib/mysq…

SpringBoot-4

Spring Boot 使用 slf4j 日志 在开发中经常使用 System.out.println()来打印一些信息,但是这样不好,因为大量的使用 System.out 会增加资源的消耗。实际项目中使用的是 slf4j 的 logback 来输出日志,效率挺高的,Spring Boot 提供…

【go语言学习笔记】02 Go语言高效并发

文章目录 一、并发基础1. 协程(Goroutine)2. Channel2.1 声明2.2 无缓冲 channel2.3 有缓冲 channel2.4 关闭 channel2.5 单向 channel2.6 selectchannel 示例 二、同步原语1. 资源竞争2. 同步原语2.1 sync.Mutex2.2 sync.RWMutex2.3 sync.WaitGroup2.4 …

2023 NVIDIA 创乐博 CUDA 线上训练营笔记

一、学习ubuntu 2.1修改权限 linux指令学习 cd course //进入course目录 ls //列出文件夹 clean //清屏幕//---修改权限 chmod gow text //给text文件夹添加可写权限 chmod gw make.ip chmod 755 text 可读可写可执行(user goup o…

MySQL MHA高可用配置及故障切换

1.什么是 MHA MHA(Master High Availability)是一套优秀的MySQL高可用环境下故障切换和主从复制的软件。 MHA 的出现就是解决MySQL 单点的问题。 MySQL故障切换过程中,MHA能做到0-30秒内自动完成故障切换操作。 MHA能在故障切换的…