当前位置: 代码网 > it编程>编程语言>Java > 【springboot微服务】Lucence实现Mysql全文检索

【springboot微服务】Lucence实现Mysql全文检索

2024年08月01日 Java 我要评论
Lucence实现Mysql全文检索

目录

一、前言

1.1 常规调优手段

1.1.1 加索引

1.1.2 代码层优化

1.1.3 减少关联表查询

1.1.4 分库分表

1.1.5 引入第三方存储

二、一个棘手的问题

2.1 前置准备

2.1.1 创建一张表

2.1.2 插入一些数据

2.2 问题引发

2.2.1 关键字模糊查询

2.2.2 执行计划分析

2.2.3 需求引出

三、lucence与全文检索

3.1 lucene概念

3.2 全文检索

3.3 lucene 建立索引的过程

四、基于lucence解决方案

4.1 需求分解与实现思路

4.1.1 准备一张测试表

4.1.2 关键实现思路

4.2 lucene api介绍

4.2.1 索引创建相关

4.2.2 文档检索相关

4.3 框架整合流程

4.3.1 引入依赖

4.3.2 添加配置文件

4.3.3 自定义ik分词器

4.3.4 定义实体类

4.3.5 编写数据表测试接口

4.4 索引操作与数据检索

4.4.1 索引数据初始化

4.4.2 关键字检索

4.4.3 修改索引

4.4.4 删除索引

4.4.5 分页查询

4.4.6 多字段查询

4.4.7 数据高亮展示

4.5 方案完善

4.5.1 索引文件管理

4.5.2 分布式环境目录管理

4.5.3 查询兜底与数据容错

4.5.4 索引文件过大的问题

五、写在文末


一、前言

对于一个业务量稳步上升的微服务系统来说,数据规模在可预期的时间段内也是逐渐增长的。使用过mysql的同学应该知道,mysql单表的数据量是有性能瓶颈的,对于硬件配置一般的服务器来说,单表百万级数据量单表查询问题不大,但是在大规模频繁调用的微服务系统中,一旦该表涉及关联查询的表比较多时,将出现明显的性能问题,此时不管是开发人员,还是dba,此时就要考虑数据库或表的性能调优了。

1.1 常规调优手段

遇到上面的性能问题之后不要慌,一般有下面几种常规的手段可以来应对:

1.1.1 加索引

1.1.2 代码层优化

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com