mysql进行大数据量查询,速度慢及解决方式
发布时间:2022-11-28 11:46:55 所属栏目:大数据 来源:
导读: 在项目开发中我们经常会使用左连接进行查询,可能库表中的数据量并不大,所以在查询时感觉不到,如果表中的数据达到了十万条乃至百万条,并且查询的时候列的数据重复量也较大,这个时候进行左连接查询,时间可能达到死
|
在项目开发中我们经常会使用左连接进行查询,可能库表中的数据量并不大,所以在查询时感觉不到,如果表中的数据达到了十万条乃至百万条,并且查询的时候列的数据重复量也较大,这个时候进行左连接查询,时间可能达到死亡时间(即前端请求超时时间);这个时候造成的原因可能有: 1、没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷) 2、项目的吞吐量达不到mysql大数据查询优化,形成了瓶颈效应 3、查询出的数据量过大(可以采用多次查询mysql大数据查询优化,其他的方法降低数据量) 4、锁或者死锁(这也是查询慢最常见的问题,是程序设计的缺陷) 5、返回了不必要的行和列 6、查询语句写的不好,没有很好的优化。 解决办法: 1、添加索引 添加索引的方式有一下几种: 2、做性能优化或者集群 性能优化需要从几个方面考虑: 来源网址 : 集群:搭建集群项目(可大幅度或翻倍提升性能) 3、分批量查询,或进行条件拦截 如果是普通查询,我们可以通过分页,或其他返回来减少查询的数据量,这样可以提高查询效率,如果 是左右连接,我们可以通过条件检索来快速减少数据,我们可以将不符合最多的条件设置为第一个条件,这样快速减少数据量,从而提高查询效率;数据库中条件执行顺序:按序进行,不符合的拦截,不参与后续条件匹配 4、死锁:优化程序代码 5、返回了不必要的列:众所周知:返回的列越少,查询速度相对来说也就较快,如果不知道,请自行百度,这个时候我们可以减少不必要的返回列。 (编辑:均轻资讯网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
站长推荐


