一号店拆库的那点事

系统刚开始的时候,因为系统刚上线,用户不多,那个时候,所有的数据都放在了同一个数据库中,这个时候因为用户少压力小,一个数据库完全可以应付的了,但是随着用户数量变多了,随之而来的是数据库压力增大了,这个时候我们会配置一个server为master节点,然后配几个salve节点,这样以来通过读写分离,使得读取数据的压力分摊到了不同的salve节点上面,有一天我们发现master负载太高了,随时都有挂库的风险,这个时候就需要垂直分库,比如现有的产品库,用户库,MISC库,日志库,还有未来的市场库,同时还可以针对产品库和用户库采用master,salve模式,通过分库以后,各个按照功能拆分的数据库写压力被分担到了不同的server上面,这样数据库的压力终于有恢复到正常状态。随着用户量的不断增加,你会发现系统中的某些表会变的异常庞大,比如现在的抵用券表,这个时候无论是写入还是读取这些表的数据,对数据库来说都是一个很耗费精力的事情,因此此时就需要我们进行水平拆表了。将一张大表拆分成若干个小表,每次查询通过给定的条件动态找表,这张针对小表的查询就会快很多。

一个大型的互联网应用必然会经过一个从单一DB server,到Master/salve,再到垂直分库,然后再到水平分区(分表)的过程。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值