数据库的向上扩展和横向扩展(即水平扩展:读写分离、垂直切分、水平切分)

原文:https://blog.csdn.net/qq_38737992/article/details/88817625

1. 概述
扩展,也称为伸缩性,指的系统不断增加其承载能力的能力。

数据库的扩展可以简单分为两类:向上扩展和横向扩展(水平扩展)。向上扩展是提高硬件,横向扩展是通过副本(读写分离)、垂直切分和水平切分的方式,把不同的数据放在不同的节点(物理部署的MySQL实例)中。

2.  向上扩展
向上扩展,买更好的服务器,这种方式比较简单,一般情况下向上扩展就可以解决问题,但是如果代价太大了(规格越高的硬件需要花费的钱越多),就不可取了。而且向上扩展总有极限的。

3.  横向扩展
横向扩展是通过副本(读写分离)、垂直切分,水平切分的方式,把不同的数据放在不同的节点(物理部署的MySQL实例)中。

读写分离:给数据库(主数据库)增加一个从数据库,主数据库负责文本的写操作(增,删,改),从数据库负责数据读的操作,如下图所示。也可以一主多从(一个主数据库,多个从数据库),不过需要进行负载均衡。

                                           

垂直切分:按照功能模块划分数据,举一个例子:一个电商网站,数据库中可能有库存管理的数据,用户管理的数据,订单管理的数据,他们属于不同的功能,可以将一个数据库分成三个数据库,库存管理的数据库,用户管理的数据库,订单管理的数据数据库。

水平切分:将同一个表中的数据进行分片保存到不同的数据库中。例如:一个用户表,我们可以将用户分片保存的不同的数据库中,可以根据 用户的ID(userID),userID%3==0的用户放到一个库中,userID%3==1 放到一个库中,userID%3==2放到一个库中,如下图所示。

              

END。
--------------------- 
作者:syrdbt 
来源:CSDN 
原文:https://blog.csdn.net/qq_38737992/article/details/88817625 
版权声明:本文为博主原创文章,转载请附上博文链接!

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值