首页 > 编程知识 正文

oracle千万级数据查询(上亿数据量用什么数据库)

时间:2023-05-03 14:59:33 阅读:72919 作者:4041

以下都是在实际工作中遇到的问题和解决,希望能给大家提供一些思路和解决方案。 欢迎讨论信息。

环境:Linux服务器

mysql 5.7

问题:某个业务表的数据量有2亿件以上,但由于最初设计时制作了分表,所以现在的单表数据有千万件以上。 当MySQL单表达到千万以上时,整体性能会下降。 特别是像count这样的查询具体如下。

从图中可以看出,即使在索引字段中行走,count字段也需要30秒以上,如果再卡上一点,就会更慢。 对于具体的业务流程,列表查询一次需要约2分钟,并展示30个分页的数据。 这个用户体验很差。

解决方案:今天只从业务角度说明解决方案,不从mysql参数调整方面说明。

首先,在业务流程中设计到count这个动作,对2亿的数据来说确实很慢。 我的想法是,直接用一张表保存表中现在的最大记录值,需要count的话,直接去这个表获取并展示这个值,不需要做整个表的count操作。

修改业务代码实践后发现,2分钟内展示的页面,现在只需1秒钟就能打印出来,用户体验也随之提升。

稍后将慢慢组织sql优化和mysql参数优化。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。