java - 千万级的mysql数据库如何做性能优化
大家讲道理
大家讲道理 2017-04-17 14:59:00
0
4
487

目前的业务场景如下:
有一个账单数据库mysql的,每天从信息源单位交换一个城市的水电煤账单数据,每天的量非常大(最高一天有20w,一个星期有100w,一个月有400多w),目前程序已经运行了大半年了,数据库里面的数据是越来越多已达到两千多万,后面肯定会更多。但是就现在的查询,统计,和正常的插入效率而言,已经越来越低了。
目前数据库采用的是pxc集群方式,版本是PerconaXtraDBCluster-5.6.20-25.7
请问在保持同等的数据增长的情况下如何实现性能调优。不管是从程序层面还是mysql层面,都可以。

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

全部回复 (4)
阿神

1.先把慢的SQL搞定(重点是索引)
2.MySQL,集群,操作系统的设置
2.我确定没有多少优化空间了,是不是表结构设计得不合理,重构是否能保证数据不损失,且划算?
4.我们需要更多的硬件资源!

    刘奇

    按月分表考虑考虑

      Peter_Zhu

      楼上所说的分表策略是互联网企业通用的做法,想对业务改动不大,可以在datasource层分表,基本不影响业务代码,现在当当刚开源了一个组件sharding-jdbc,应该不错;也可以用支持mysql的中间件比如cobar、mycat、oneproxy,这种不用改代码,但是运维上要麻烦些;分表后数据迁移是必不可少的工作,代码改动其实真的不大

        巴扎黑

        按照先后顺序

        1 加索引、改写sql
        2 加缓存。memcache、redis之类
        3 主从复制、读写分离
        4 垂直拆分。例如一个表的字段过多,拆成两个一个主表和一个附加表,常用的字段放到主表中,少用的字段放到附加表中。
        5 水平拆分。

        纯属个人理解。

          最新下载
          更多>
          网站特效
          网站源码
          网站素材
          前端模板
          关于我们 免责声明 Sitemap
          PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!