Java提升数据库大数据查询速度的几种方式

文章介绍了提高MySQL查询效率的方法,包括分页查询以减少数据量,启用数据库缓存机制以复用查询结果,懒查询机制逐步加载数据,使用Redis缓存减少数据库交互时间,以及利用ElasticSearch作为搜索引擎加速检索。这些策略旨在优化性能并提升用户体验。
摘要由CSDN通过智能技术生成

本文章以MySQL数据库为用例说明,列举出几个常用的提升查询速度的方式。

  1. 分页查询,在网络浏览中,经常会看到分页的使用,像百度搜索分页、文档资料分页等,这些都是一种常见的提升数据查询速度和用户体验的一种方式,数据库有limit关键字,开发人员可使用此关键字对数据进行分页查询,从而避免一次性查询大量的数据造成的时间等待。同时,常见的分页机制在10条~90条每页等,为方便业务开发,我们也可以在数据查询速度的临界点进行分页,比如每页10000条等。其他像分表查询也是一样的思路。

  1. 数据库缓存机制,软件开发业务中,查询机制基本都是在复用的,也就是说,每次的数据库查询的条件是一致的,所以我们可以开启数据库缓存机制,来提升查询速度,大家可修改数据库的配置文件或使用命令行修改数据库的配置,以本文数据库为例,修改配置文件:

windows:

需要注意的是:一般数据库的服务路径在:C:\Program Files\MySQL\MySQL Server 5.7,配置路径在:C:\ProgramData\MySQL\MySQL Server 5.7,配置文件是在配置路径中,文件为my.ini

query_cache_type = 1

 query_cache_size = 600000

Linux:文件为my.cnf

命令行方式:

set global query_cache_type = 1;

 set global query_cache_size = 600000;

修改完毕后必须要重启数据库服务才会生效,命令行或数据库查询工具(SQL语句执行工具),执行:show variables like "%query_cache%";  来查看缓存是否开启成功。

  1. 懒查询机制,所谓的懒查询,就是在业务中,用户需要查看大量的数据,先为他提供一部分数据,后续再慢慢将剩余数据传递给客户端

  1. 使用Redis缓存,在Java环境中,无论是Mybatis查询数据库还是使用代码连接查询数据库,都会含有一个数据库链接和查询的时间在其中,提升查询速度,我们可以采用进量避免这些时间的思路,使用Redis缓存,将数据库的查询结果放进Redis中,第二次请求时直接将Redis中的数据传递给客户端,这样即避免了重复的链接和查询。当业务数据发生改变时,只需要在接口方法中,更新Redis中的数据即可,这样提升了查询速度,又不影响用户的体验,也是一个非常可行的方式。

  1. 使用ES,全名为ElasticSearch,也叫搜索引擎,在小编看来,他是属于缓存意义上的数据库形式,在实践业务中,可以将需要的数据放进ES中,后续对ES检索,通过小编测试,ES搜索引擎的确比普通的数据库查询要高效。

以上几个方案为小编认为常用的几种思路方式,供大家参考,如有其他更好更高效的方式,欢迎留言,与小编进行讨论。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

吾疾唯君医

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值