我的编程空间,编程开发者的网络收藏夹
学习永远不晚

数据库高可用架构的优缺点有哪些

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

数据库高可用架构的优缺点有哪些

本篇内容主要讲解“数据库高可用架构的优缺点有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“数据库高可用架构的优缺点有哪些”吧!

主备架构

1. 基本架构拓扑图如下

数据库高可用架构的优缺点有哪些

整体架构简单,几乎所有的数据库都提供了主备复制的功能,例如Mysql、Oracle、MongoDB等。在这种架构中备库主要承担数据备份的作用,不参与实际业务读写操作,如果把备机改成主机需要人工操作。

2. 优缺点分析

  • 对于客户端来说,不需要感知备机的存在,即使灾难恢复后,原来的备机被人工干预修改为主机,客户端只需要简单修改连接地址即可,应用架构不需要做任何改动;

  • 主机和备机只需要进行数据复制,不需要进行状态判断和主备切换这类复杂操作。

这种架构的缺点也比较明显:

  • 备机主要是用于数据备份,如果应用架构没有读写分离设计时会造成成本浪费

  • 故障后需要人工干预,无法自动恢复,而人工处理效率又比较低,恢复过程也容易出错。

主从架构

主从架构与主备架构只有一字之差,但是对于实际应用架构差距却很大。在主备架构中备库不参与业务操作,而在主从架构中从库是需要参与业务操作的,应用架构需要做读写分离,将写操作写入主库,而读操作从从库读。

1. 主从基本架构拓扑图如下

数据库高可用架构的优缺点有哪些

2.优缺点分析

相比于主备架构,它有如下优点:

  • 在主库故障时,读操作相关业务可以继续运行

  • 从库对外提供读能力,发挥了硬件的性能

  • 可以为不同的角色提供不同的从库

缺点:

  • 主从架构中从库需要提供读业务,如果主从复制延迟大,数据会出现不一致情况;

  • 应用架构需要做修改,一般会加入读写分离,复杂度比主备高;

  • 故障后需要人工干预,无法自动恢复,而人工处理效率又比较低,恢复过程也容易出错。

主从切换

上面两种架构都存在两个共同问题:

  • 主库故障后,无法进行写操作

  • 主库出了问题后需要人工干预才能将从库切换到主库,而人工切换又可能出现不及时或者切换故障的问题。

基于以上两个问题我们需要一个能自动切换的架构,当主库出了故障后能自动将从库切换成主库,无需运维人员干预。

要实现主从切换架构必须要考虑一个关键点:必须要有一个机制能监测到数据库节点的运行状态,以此来决定是否切换。

这种架构我们一般会引入一个第三方中介,数据库节点定时向第三方中介汇报自己的状态信息;或者第三方中介定时去数据库节点拉取数据库状态;

数据库高可用架构的优缺点有哪些

优点:

  • 解决了人工干预的问题,大大减少了故障时间,一定程度上保护了运维人员的人生安全 缺点:

  • 架构复杂,引入了第三方中介后又需要保证第三方中介的高可用。

这里推荐大家了解一下mysql的 MHA 架构,或者使用ZK、Keepalived自己搭建主从切换架构。

主主架构

主主架构又叫主主复制,两台数据库都是主库,互相将数据复制给对方,客户端可以挑选任意一台数据库进行读写操作。

数据库高可用架构的优缺点有哪些

相比于主从切换,主主架构有如下优点:

  • 两台数据库都是主库,不存在切换的概念

  • 客户端无需区分不同角色的主机,随便将读写操作发给哪台数据库。

  • 架构简单

但是允许向两台主数据库写入是一件很危险的事:

  • AB两台数据库采用自增长主键,A库插入用户后id是1,B库插入用户后id也是1,数据冲突

  •  

  • tb update tb set col = col +1 update tb set col = col * 2

到此,相信大家对“数据库高可用架构的优缺点有哪些”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

数据库高可用架构的优缺点有哪些

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

LAMP架构的优缺点有哪些

LAMP架构是一种常用的Web应用程序架构,由Linux操作系统、Apache服务器、MySQL数据库和PHP编程语言组成。它具有以下优点和缺点:优点:1. 开源:LAMP架构中的所有组件都是开源软件,可以免费获取并进行定制和修改。2. 稳
2023-09-13

polardb数据库的优缺点有哪些

Polardb数据库的优点包括:1. 高性能:Polardb采用了分布式共享存储架构,可以实现高并发读写操作,并且具有低延迟和高吞吐量。2. 高可用性:Polardb具有自动备份和故障恢复功能,可以实现数据的持久性和可靠性。同时,它支持跨可
2023-08-08

polardb数据库有哪些优缺点

Polardb是一种云原生的关系型数据库服务,其具有以下优点:1. 高可用性:Polardb采用多副本的存储架构,可以自动进行数据备份和故障切换,提供99.95%的高可用性保障。2. 高性能:Polardb采用了多种优化技术,如存储引擎优化
2023-10-25

Aurora数据库的架构特点有哪些

分布式架构:Aurora数据库采用了分布式共享存储架构,数据被分散存储在多个节点上,使得数据库能够应对高并发和大规模数据的需求。多副本机制:Aurora数据库支持数据的多副本存储,确保数据的高可靠性和可用性。当某个节点发生故障时,系统可以自
Aurora数据库的架构特点有哪些
2024-04-09

关系型数据库有哪些优缺点

关系型数据库的优点包括:1. 数据结构化:关系型数据库使用表格的形式来组织数据,数据之间的关系清晰明确,易于理解和管理。2. 数据一致性:关系型数据库使用事务来保证数据的一致性,确保数据的准确性和完整性。3. 数据查询灵活:关系型数据库支持
2023-10-10

云数据仓库PostgreSQL有哪些优缺点

云数据仓库PostgreSQL的优点包括:1. 开源软件:PostgreSQL是一款自由开源的数据库管理系统,可以免费使用和修改。2. 高度可扩展:PostgreSQL可以在云端进行水平和垂直扩展,可以根据需求增加或减少计算和存储资源。3.
2023-09-21

java数据库框架有哪些优点

Java数据库框架有以下优点:1. 简化数据库操作:Java数据库框架能够提供简单而直接的API,使得开发人员能够以更少的代码完成数据库操作。它们通常提供了ORM(对象关系映射)功能,将数据库表和Java对象进行映射,使得开发人员能够以面向
2023-09-26

oceanbase数据库的缺点有哪些

1. 相对于传统关系型数据库,OceanBase的性能可能会较低。由于其分布式架构和数据复制机制,可能会导致较高的延迟和较低的吞吐量。2. 对于小规模的数据库,部署和维护OceanBase可能会比较复杂。需要配置和管理多个节点,需要处理数据
2023-08-08

数据库位图索引的优缺点有哪些

数据库位图索引的优点包括:1. 空间效率高:位图索引使用非常紧凑的数据结构,将每个索引键映射到一个位向量中,因此可以节省大量的存储空间。2. 查询速度快:位图索引对于包含多个索引键的查询非常高效,因为可以使用位运算来快速计算结果。3. 内存
2023-09-14

大数据之Couchbase Server数据库有哪些优缺点

CouchbaseServer数据库的优点:CouchbaseServer采用NoSQL架构,提供高性能、高可用性和可扩展性。它支持JSON文档和多种数据模型,并提供强大的查询语言。其易用性、广泛的生态系统和云原生特性使其成为现代应用的理想选择。CouchbaseServer数据库的缺点:CouchbaseServer的商业许可证可能昂贵。其复杂性、非ACID兼容性、有限的地理空间支持和技术限制需要仔细考虑。它可能缺乏某些高级特性,学习曲线也较高。支持限制、供应商锁定和技术限制可能会影响其适用性。
大数据之Couchbase Server数据库有哪些优缺点
2024-04-08

大数据之Couchbase Server数据库有哪些优缺点

Couchbase Server数据库的优点包括:高性能:Couchbase Server使用内存和硬盘进行数据存储和检索,因此具有出色的读写性能。可扩展性:Couchbase Server可以水平扩展,通过添加更多的节点来增加数据库的容量
2023-10-24

关系型数据库和非关系型数据库有哪些优缺点

这篇文章主要介绍“关系型数据库和非关系型数据库有哪些优缺点”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“关系型数据库和非关系型数据库有哪些优缺点”文章能帮助大家解决问题。一、关系型数据库1、概念关系
2023-06-29

使用友元函数的优缺点有哪些?

友元函数允许外部函数访问类私有或受保护成员,用于类间协作,提高代码灵活性,封装实现细节。缺点是破坏封装性,增加耦合,存在安全性问题。实战案例:counter 类使用友元函数 stats 来访问其受保护的 increment() 方法,从而进
使用友元函数的优缺点有哪些?
2024-04-16

Redis的数据持久化方式有哪些优缺点

Redis的数据持久化方式有RDB持久化和AOF持久化两种。RDB持久化的优缺点如下:优点:RDB持久化是将内存中的数据以快照的形式保存到磁盘上,可以在恢复数据时快速加载,适合大规模数据的恢复。RDB持久化生成的文件比AOF持久化生成
Redis的数据持久化方式有哪些优缺点
2024-04-09

编程热搜

目录