扛不住了,老大让我感觉上分库分表方案

在文章开头先抛几个问题:

(1)什么时候才需要分库分表呢?我们的评判标准是什么?

(2)一张表存储了多少数据的时候,才需要考虑分库分表?

(3)数据增长速度很快,每天产生多少数据,才需要考虑做分库分表?

这些问题你都搞清楚了吗?相信看完这篇文章会有答案。

为什么要分库分表?

首先回答一下为什么要分库分表,答案很简单:数据库出现性能瓶颈。用大白话来说就是数据库快扛不住了。

数据库出现性能瓶颈,对外表现有几个方面:

  • 大量请求阻塞

    在高并发场景下,大量请求都需要操作数据库,导致连接数不够了,请求处于阻塞状态。

  • SQL 操作变慢

    如果数据库中存在一张上亿数据量的表,一条 SQL 没有命中索引会全表扫描,这个查询耗时会非常久。

  • 存储出现问题

    业务量剧增,单库数据量越来越大,给存储造成巨大压力。

从机器的角度看,性能瓶颈无非就是CPU、内存、磁盘、网络这些,要解决性能瓶颈最简单粗暴的办法就是提升机器性能,但是通过这种方法成本和收益投入比往往又太高了,不划算,所以重点还是要从软件角度入手。

数据库相关优化方案

数据库优化方案很多,主要分为两大类:软件层面、硬件层面。

软件层面包括:SQL 调优、表结构优化、读写分离、数据库集群、分库分表等;

硬件层面主要是增加机器性能。

SQL 调优

SQL 调优往往是解决数据库问题的第一步,往往投入少部分精力就能获得较大的

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值