SpringBoot系列(四十三):如何集成ElasticSearch,不会我教你|超级详细,建议收藏
Posted bug菌¹
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SpringBoot系列(四十三):如何集成ElasticSearch,不会我教你|超级详细,建议收藏相关的知识,希望对你有一定的参考价值。
👨🎓作者: bug菌
✏️博客: CSDN、 掘金、 infoQ、 51CTO等
🎉简介:CSDN博客专家,C站历届博客之星Top50,掘金/InfoQ/51CTO等社区优质创作者,全网合计8w粉+,对一切技术感兴趣,重心偏Java方向;硬核公众号「 猿圈奇妙屋」,欢迎小伙伴们的加入,一起秃头,一起变强。
..
✍️ 温馨提醒:本文字数:1799字, 阅读完需:约 5 分钟
嗨,家人们,我是bug菌呀,我又来啦。今天我们来聊点什么咧,OK,接着为大家更《springboot零基础入门教学》系列文章吧。希望能帮助更多的初学者们快速入门!
小伙伴们在批阅文章的过程中如果觉得文章对您有一丝丝帮助,还请别吝啬您手里的赞呀,大胆的把文章 点亮 👍吧,您的点赞三连( 收藏 ⭐ +关注 👨🎓 +留言 📃)就是对bug菌我创作道路上最好的鼓励与支持 😘。时光不弃 🏃🏻♀️,创作不停 💕,加油 ☘️
一、前言🔥
环境说明:Windows10 + Idea2021.3.2 + Jdk1.8 + SpringBoot 2.3.1.RELEASE
我们都知道,当数据量上升到了一定的地步,我们会通过增加索引的优化方式以提升查询效率,再接着是创建模糊查询、模糊查询前置配置,这就会导致索引失效,回归本质问题,全表扫描,如果在百万级以上的数据库中,全表扫描一次需要多久,这个问题估计不需要我来多说,压根毫无用户体验,所以,这时候,我们就得想办法,于是,ES是你最好的选择,你可以通过ES做全文索引,将经常查询的 字段添加到索引库中,以提高查询速率。
二、介绍🔥
1、简介
ES是ElasticSearch的一个简称,ES是 一个基于Apache Lucene的开源搜索引擎,在当今互联网行业下,Lucene是被认为是最先进、功能最全、性能最优的搜索引擎。
注意:Lucene它只是一个库,若是想要它发挥强大作用,你是需要通过使用java将其集成到你的应用当中去的。
并且Lucene非常复杂,你若是想了解,你还得先从了解检索相关知识来理解它是如何工作的,就跟你要学习springmvc框架之前要学习 servlet一样,而Solor、Elasticsearch 就应由而生,使用java开发实现并使用Lucene来建立索引并实现搜索功能。
2、基本概念
索引(indices)
说明:索引库,代表不止一个索引。
类型(type)
说明:类似于mysql中的table表概念,一个索引库下可以有很多不同索引(类似于库下的不同表),比如商品索引,订单索引等。
文档(Document)
说明:它是以JSON格式定义的特定方式的字段集合。每个文档都属于一种类型,并且位于索引内。每个文档都与一个称为UID的唯一标识符相关联。
字段(Field))
说明:字段就是文档中的属性。
映射配置(mappings)
说明:字段的数据类型、属性、是否索引、是否存储等特性。
3、特性
ES最多可拓展至PB级数据(结构化/非结构化)。
ES可以替代MongoDB等文档存储。
ES使用非规范化来提高搜索性能。
ES被众多大型组织所采用,比如GitHub、StackOverflow。
ES是目前流行的企业搜索引擎之一,开源项目。
4、优势
由于ES由java开发,所以它几乎适配其他平台。
ES几乎实时同步,这边添加文档就可以在这个引擎上搜索了。
ES是分布式的,因此可轻松在任何大型组织中进行拓展和集成。
ES由于使用Json对象作为响应,这使得其他编程语言也能够进行调用ES服务器。
ES几乎支持所有文档类型。
5、缺点
在处理请求和响应数据方面,ES不提供多语言支持,而Apache Solr可以支持CSV,XML和JSON格式。
有时候Elasticsearch会出现脑裂情况的问题。
三、Elasticsearch 安装🔥
1、jdk配置
检查你系统是否安装jdk7或更高版本,对于Windows而言:你可以直接使用如下命令检查
java -version
2、下载Elasticsearch安装包
对于Windows操作系统,请下载ZIP文件。
链接: https://pan.baidu.com/s/1M5uWdYsCZyzIAOcgcRkA_A.提取码:qk8p
下载地址:https://pan.baidu.com/s/1M5uWdYsCZyzIAOcgcRkA_A#list/path=%2F
对于UNIX OS,请下载TAR文件。
3、安装
解压zip包,然后安装Elasticsearch。
4、运行
找到Elasticsearch主目录并位于bin文件夹中。如果使用Windows版本,则直接运行elasticsearch.bat文件即可。
如下是ES启动小黑窗截图:
5、检验是否安装成功
ES Web界面的默认端口是9200,然后在浏览输入http://localhost:9200,如果正常返回如下格式json对象,则证明ES服务已经成功启动。不过你也可以通过更改bin目录中elasticsearch.yml文件中的默认端口。
"name" : "PC-20210819XWCU",
"cluster_name" : "elasticsearch",
"cluster_uuid" : "zscVKsdsT1WMp2oOscMk0g",
"version" :
"number" : "7.6.1",
"build_flavor" : "default",
"build_type" : "zip",
"build_hash" : "aa751e09be0a5072e8570670309b1f12348f023b",
"build_date" : "2020-02-29T00:15:25.529771Z",
"build_snapshot" : false,
"lucene_version" : "8.4.0",
"minimum_wire_compatibility_version" : "6.8.0",
"minimum_index_compatibility_version" : "6.0.0-beta1"
,
"tagline" : "You Know, for Search"
具体如下所示:
四、Kibana安装🔥
1、下载
下载Windows版Kibana。地址如有:https://www.elastic.co/products/kibana
2、安装
解压缩并转到Kibana主目录,然后运行kibana.bat即可。
Kibana启动小黑窗截图:
接着在浏览器上输入:http://localhost:5601
可以打开Kibana客服端,演示截图如下:
点击[Try get started] 进入,由于Kibana是一个GUI驱动的工具,可用于访问数据和创建可视化。
五、项目集成🔥
1、pom文件添加ES依赖
<!--集成ElasticSearch-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-elasticsearch</artifactId>
</dependency>
2、配置ES数据库信息
#ElasticSearch配置
spring:
data:
elasticsearch:
cluster-name: elasticsearch
cluster-nodes: localhost:9300
repositories:
enabled: true
以上,项目就集成好了。剩下的就是项目实战内容啦,我放在下期给大家总结咯。
... ...
ok,以上就是我这期的全部内容啦,如果还想学习更多,你可以看看我的往期热文推荐哦,每天积累一个奇淫小知识,日积月累下去,你一定能成为令人敬仰的大佬的。好啦,咱们下期见~
六、往期推荐🔥
... ...
文末🔥
如果还想要学习更多,小伙伴们可关注bug菌专门为大家创建的专栏《springboot零基础入门教学》,从无到有,从零到一!希望能帮助到更多小伙伴们。
我是bug菌,一名想走 👣 出大山改变命运的程序猿。接下来的路还很长,都等待着我们去突破、去挑战。来吧,小伙伴们,我们一起加油!未来皆可期,fighting!
感谢认真读完我博客的铁子萌,在这里呢送给大家一句话,不管你是在职还是在读,绝对终身受用。
时刻警醒自己:
抱怨没有用,一切靠自己;
想要过更好的生活,那就要逼着自己变的更强,生活加油!!!
以上是关于SpringBoot系列(四十三):如何集成ElasticSearch,不会我教你|超级详细,建议收藏的主要内容,如果未能解决你的问题,请参考以下文章
MATLAB应用实战系列(四十三)-基于MATLAB的光伏并网系统仿真设计
[系统安全] 四十三.APT系列Powershell和PowerSploit脚本渗透攻击手段详解
企业级 SpringBoot 教程 (十三)springboot集成spring cache
企业级 SpringBoot 教程 (十三)springboot集成spring cache