mysql:单表1千万数据,未来1年还会增长多500万,性能比较慢,说下你的优化思路?

针对这个问题分为两种情况进行分析
  • 分库分表
  • 不分库分表
不分库分表情况下
  • 软优化

    • 数据库参数调优
    • 分析慢查询SQL语句,分析执行计划,进行sql改写和程序改写
    • 优化数据库索引结构
    • 优化数据表结构优化
    • 引入NOSQL和程序架构调整
  • 硬优化

    • 提升系统硬件(更快的IO、更多的内存):带宽、CPU、硬盘
分库分表情况下
  • 根据业务情况而定,选择合适的分表策略
  • 先看只分表是否满足业务的需求和未来增长
    • 数据库分表能够解决单表数据量很大的时,数据查询的效率问题
    • 无法给数据库的并发操作带来效率上的提高,分表的实质还是在一个数据库上进行的操作,受数据库IO性能的限制.
  • 如果单分表满足不了需求,再分库分表一起
结论:
  • 在数据量及访问压力不是特别大的情况,首先考虑缓存、读写分离、索引技术等方案
  • 如果数据量极大,且业务持续增长快,再考虑分库分表方案
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

乐观的Terry

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

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

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

打赏作者

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

抵扣说明:

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

余额充值