数据库架构的演变

本文详细介绍了关系型数据库从单机到多活架构的发展历程,包括单机、主备、主从、多主和分片架构,以及MPP架构。每种架构都有其独特的优缺点,如单机架构易于运维但扩展性差,主从架构解决了读写分离,而分片和MPP则旨在提高并发处理能力和可用性。不同的架构适用于不同业务场景和性能需求。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 概述

关系型数据库发展历程中,经历了如下几种架构的变化:


在这里插入图片描述


2. 单机架构

单机架构分为以下两种模式


在这里插入图片描述

包括应用服务和数据库放在同一台服务器,以及将应用服务和数据库服务分开部署两种方式,后一种方式可以通过增加服务器数量来进行负载均衡,增加系统的并发能力。

优点:

● 集中部署
● 便于运维

缺点:

● 可扩展性差:单机性能的提升存在瓶颈
● 存在单点故障:扩容时需要停机,硬件故障会导致整个服务不可用,甚至数据丢失


3. 主备架构

数据库部署到两台服务器上,主机承担数据读写服务,备机利用数据同步机制进行数据同步,保证和主机之间的数据一致性。同一时刻,只有一台服务器对外提供服务。


在这里插入图片描述

优点:

● 具有一定的抵御故障的能力
● 提升了数据的容错性

缺点:

● 资源浪费:无故障时只会使用主机,备机的资源长时间无法利用
● 性能压力集中于主机,无法解决性能瓶颈问题
● 故障时需要人工干预


4. 主从架构

主机角色和主备模式中的主机一致,从机也对外提供一定的服务,通过读写分离模式分散服务压力。其中,主机负责写操作,从机负责数据查询服务。


在这里插入图片描述

优点:

● 提升资源利用率,适合读多写少的场景
● 在大并发读的场景,可使用负载均衡在多个从机间进行平衡
● 从机扩展灵活,扩容操作不影响业务

缺点:

● 延迟问题,数据同步到从机数据库时会有延迟,存在暂时的数据不一致性
● 写操作的性能压力还是集中在主机上
●主机故障时需要主从切换,人工干预需要响应时间,自动切换复杂度较高


5. 多主架构

数据库服务器互为主从,同时对外提供服务。


在这里插入图片描述

优点:

● 资源利用率较高的同时降低了单点故障的风险。

缺点:

● 双主机都接受写数据,要实现数据双向同步。双向复制同样会带来延迟问题,极端情况下有可能数据丢失
● 数据库数量增加会导致数据同步问题变得极为复杂,实际应用中多见双机模式


6. 共享存储多活

多个主节点共享存储资源的一种模式,多主又实现了负载均衡。


在这里插入图片描述

优点

● 高可用,可伸缩性好
● 避免了服务器集群的单点故障问题

缺点

● 实现技术难度大
● 横向扩展时,存储IO容易成为整个系统的性能瓶


7. 分片

表现为数据水平分片,把数据分散到多个节点上,每个分片包含数据库的一部分,称为一个shared。节点之间的数据库结构相同,但保存的数据没有交集,所有分片的并集为数据总体。
分片的算法常见的有:根据列表值、范围取值和hash值等。


在这里插入图片描述

优点:

数据分散到集群的各个节点上,所有节点可以独立工作。


8. MPP架构

MPP(Massively Parallel Processing)称为大规模并行处理,将计算任务并行的分散到多个服务器和节点上,当每个节点计算完成之后,再将各自部分的结果汇总计算得到最终的结果。


在这里插入图片描述

它的特点在于计算任务可以并行执行,极大的提高了计算的效率。市场上常见的MPP架构的产品有:

  • 无共享Master:Vertica、Teradata
  • 共享Master:Greenplum、Netezza

其中无共享Master的模式所有节点是对等的,应用可以通过任意一个节点来查询或加载数据,不存在性能瓶颈和单点故障问题


8. 总结

各种架构模式的对比如下:


在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值