主要按照自己的理解方式记录关于该课程es模块的知识梳理,有些概念不一定说的准确主要用于学习和理解,具体观看课程视频。适合观看完视频仍有不理解的情况观看该笔记。

课程链接:【SpringCloud+RabbitMQ+Docker+Redis+搜索+分布式,系统详解springcloud微服务技术栈课程|黑马程序员Java微服务】 https://www.bilibili.com/video/BV1LQ4y127n4/?p=117&share_source=copy_web&vd_source=9a68bee9adacfbf105c893b99b54c0d8

首先是对于es搜索的逻辑链路理解:

【mysql数据库】--->【ES】--->【idea(java后端)】-->【前端页面】

解释说明:

1.mysql是大数据库,类似整个图书馆,数据又全有多。

2.ES类似小数据库,存入的是想搜索到的数据。

3.之后就把搜索到的数据放到idea中,idea进行业务处理,比如在service层进行精确搜索,复合搜索等。根据前端请求,返回前端搜索到的数据。

最后前端就显示出想找的数据了。

最开始误以为es传入数据到kibana再到idea,kibana的作用类似于一种图表显示,并不参与es搜索的逻辑链路。

理解之后就是构建es搜索的实践步骤:

1.首先是创建es索引库(在测试类中写)

2.利用bulk将mysql中的数据存入es索引库。(也在测试类写)

3.创建三层,controller,service,mapper层。这里不细讲了,代码参考视频。

视频当中测试类中写了很多方法,但是其中最主要需要运行的只有·创建索引库·和·bulk大量存数据·这两个方法。

后面写三层的时候基本没什么误导的跟着视频走进行,如果出错了有可能是一些代码细节问题,比如少了注解,非空判断等等。

Logo

码道开发者社区,聚焦华为云码道 CodeArts 代码智能体,沉淀 Agent、Skill、鸿蒙开发实战内容,供开发者查阅资料、交流技术、分享工程实践

更多推荐