数据库双活原理解析,保障数据高可用性 (数据库双活原理)

随着互联网的快速发展,各种大型数据系统已经成为了现代化社会中不可避免的一部分。在数据库中,保障数据的高可用性是非常重要的一项技术需求,数据库双活技术就是用来实现这一目标的一种技术方案。

数据库双活是指在两个不同的数据中心里部署着一套完整的数据库系统,双方可以同时接收来自用户的请求,各自独立完成对数据库的操作,以实现数据的高可用性。对于企业级的应用来说,保障数据的可用性和安全性是最重要的要求之一,数据库双活技术通过数据的异地备份与恢复,可以更大限度地降低数据丢失的风险,并保障在线应用的不间断性。

数据库双活技术的优点

1. 提高了数据库的可靠性

通过同时部署在两个数据中心的技术方案,数据库双活可以完全消除单点故障在数据库系统中的影响,提高整个系统的可靠性。即使出现了任何一方数据中心的故障,另外一方都可以正常工作,不会造成数据的丢失。

2. 降低了数据丢失的风险

在传统的数据库备份与恢复方案中,由于备份的操作需要中止对生产环境的访问,因此在备份的过程中无法对数据库的内容进行修改和更新。而数据库双活技术则可以通过同时备份两组互相独立的数据集,从而可以规避单个数据库出现的丢失情况。

3. 提高了数据库的性能

传统的数据库备份方案中,由于在进行备份的时候需要暂停生产环境的访问,所以备份的时间很长,造成一定程度上的性能瓶颈。而数据库双活技术则可以完全避免这种情况的发生,并且可以通过增加服务器等多种方式提高整个数据库的性能。

4. 改善了应用的业务连续性

在数据中心出现故障的情况下,企业需要在可能的最短时间段内进行应急响应,保障业务的连续性。而基于数据库双活技术的部署方案则可以实现服务器之间的动态路由,响应速度更快,并能够实现无缝切换,保障业务无间断的运行。

数据库双活技术的实现原理

1. 数据库的异地备份和数据同步

在数据库双活架构中,每个数据中心都有一台主服务器和一台备份服务器,同时对数据库进行同步更新。主服务器对外提供服务,而备份服务器通过复活位(RED0)进行备份,担负着异地备份的功能。当主服务器故障或出现其他问题时,备份服务器就能够立即接替主服务器的工作。

2. 数据库的异地投票机制

在数据库双活架构中,每个数据中心都有一个投票机制,用来确保在一个数据中心失效的情况下,另一个数据中心能够立刻接管服务。这个投票机制依赖于每个数据中心的主备机之间互相进行的心跳检测和计数器确定,只有投票机制条件满足后,才能让备份服务器变为主服务器,以确保服务的连续性。

3. 动态路由技术

在数据库双活技术中,所有的请求都要通过路由器进行转发,在路由器的维护中,对于请求的转发,必须根据当前数据中心内的服务质量情况及投票机制的结果,动态改变路由器的路由规则,以保证整个数据库系统的负载均衡,实现在自动容错的同时提高数据库的性能。

结论

通过对数据库双活技术的原理及实现方案进行分析,可以发现该技术是从几个方面来确保了系统的高可用性和易扩展性。数据库双活技术在企业中坚实地保障着数据的安全性和可靠性,且在应用的业务连续性和高性能的需求中具有至关重要的作用。通过当前各种新技术的快速发展,数据库双活技术实现的方案不断完善,可以实现更高级别的数据管理和应用。

相关问题拓展阅读:

如何使用虚拟化软件实现双活灾备系统

1)存储复制 – 即使异构存储也能,只不过效果差点。利用虚拟化网关集群设备(比如VPLEX)。但是有一个缺点,存储层面的块儿复制,解决不了逻辑校验的问题,有可能同步过去的块儿数据,数据库无法识别。

2)数据库层面的复制,Oracle、db2都有。是基于日志的复制,数据复制量很小。很安全。但是灾难时刻拉起数据库的时间也不是很理想。有条件的做一下自动化开发。

灾备双活如何实现数据同步?

问题1:金融系统中同城灾备如何实现数据实时同步(两地是异构存储),请软件推荐和方法?

问题2:如果是远距离(1000KM)异地灾备双活,如何较好的实现数据同步?

希望获得:具体解决, 注意事项, 实例参考

问题1:金融系统中同城灾备如何实现数据实时同步(两地是异构存储),请软件推荐和方法

问题2:如果是远距离(1000KM)异地灾备双活,如何较好的实现数据同步?

A1:数据实时同步复制有两种大的分类:

1)存储复制 – 即使异构存储也能,只不过效果差点。利用虚拟化网关集群设备(比如VPLEX)。但是有一个缺点,存储层面的块儿复制,解决不了逻辑校验的问题,有可能同步过去的块儿数据,数据库无法识别。

2)数据库层面的复制,Oracle、db2都有。是基于日志的复制,数据复制量很小。很安全。但是灾难时刻拉起数据库的时间也不是很理想。有条件的做一下自动化开发。

wangj0923技术经理, 工行

存储复制更大的问题是,复制过去的磁盘对数据库来讲突然下宕后挂上的,有可能不识别,即便识别了,也要进行一致性校验,那个时间是无法忍受的。

数据库复制的问题是同步模式对主库的影响较大,备库出问题容易hang主库,而异步模式无法确保RPO为零。

需要各种技术组合起来用。

shenxzh系统工程师, Nanjing Securities

同城灾备,如果是ORACLE数据库,可以使用远距离RAC,实现同城双活数据中心(通过ORACLE A实现异构存储双活,或者存储虚拟设备VPLEX,SVC等)

远距离异地灾备,更好使用主备模式,采用dataguard利用异步模式(或采用12C的far sync功能),保证数据安全

else_xie系统运维工程师, PICC

cz_doctor、xk2023赞同了此回答

首先要确定,实现要异地实时同步,生产环境答应吗?

另外带宽,速度的压力,成本投入能答应吗?

每一个数据的修改交互,都需要问1000KM外的,是否OK了。然后才下一步?那多累的,估计某些应用可以,同步数据少的,对业务性能不敏感的。

现在很多存储的复制技术,异步效果也趋于同步效果,只要业务压力在可接受范围内,就能及时传送数据过去,只要自己明白,如果遇到业务高峰时,是要承受数据传输滞后比较明显的结果而已。

另外,对复制同步的数据,如果不是在线进行使用的,要定期的验证检查,反正数据已经是“带病”的,还一直在同步,哪天真的要用,才发现,那就迟了。

zhoujia8218(提问者)

你的这些反问点,都是我要关注的和不明确的地方,谢谢提醒

nitkey系统架构师, ECT

xiaoyaozi赞同了此回答

问题1:异构存储要实现同城实时同步有几种实现方式:1.存储前面加一层虚拟网关,通过虚拟网关来实现两个存储的数据同步;2.操作系统层面,通过LVM或者veritas的卷管理软件实现;3.通过应用层自己实现数据同步,比如ORACLE的DG,DB2的HADR。同城实时同步一般对架构环境的要求都较高,如果再加上是异构存储,要特别注意两个存储的性能是否匹配,否则会出现短板

问题2:1000KM以上我认为基本上只有靠存储的异步复制,通过数据库的复制方式在远距离的案例上不是太多。

孔再华数据库运维工程师, 中国民生银行

同城灾备可以做到对等双活。相当于双中心不差别提供服务。数据库技术有DB2 GDPC和Oracle Extended RAC。DB2 GDPC集群底层通过GPFS集群文件系统完成数据同步,支持异构的存储。

远距离灾备如果需要双活肯定是有很大限制的。首先数据不可能实时同步,代价太大。因此对一致性要求高的系统几乎不可能。但是如果使用异步的方式,例如DB2的HADR技术,或者是CDC等数据逻辑同步技术,能够做到同步数据,但是灾备服务器只能用来做查询分析等作用。

zhoujia8218(提问者)

CDC远距离复制时有没有需要注意的吗?我们只用过同城的,远距离的没有尝试过

同城灾备可以做到对等双活。相当于双中心不差别提供服务。数据库技术有DB2 GDPC和Oracle Extended RAC。DB2 GDPC集群底层通过GPFS集群文件系统完成数据同步,支持异构的存储。

远距离灾备如果需要双活肯定是有很大限制的。首先数据不可能实时同步,代价太大。因此对一致性要求高的系统几乎不可能。但是如果使用异步的方式,例如DB2的HADR技术,或者是CDC等数据逻辑同步技术,能够做到同步数据,但是灾备服务器只能用来做查询分析等作用。

emc vplex 架构 和svc原理差不多

数据库的基本原理是

是计算机猜孙科学与技术专业的专业基础课,主要讨论数据库系统的基本概念,基本原理,基本方法以及有关的应用

主要内容包括:数据库的结构与特点、数据库系统的组成及各部分的功能、关系数据库、面向对象数据库、结构化查询语言(SQL)、数据库设计以及数据保护等,同时讲解一种重要的数据库系统的应用

学生通过本课程的学习能够了解有关数据库系统的基本概念,掌握对数据库查询、更新等相关的知识,初步掌握数据配厅库设计方法,并能用数据库系统建立穗卖链数据库及简单的应用

数据库原理学什么

数据库原理学的内容如下:

数据库系统原理课程共八章,包括大数据技术、数据保护、关系模型、实体联系方法、数据定义与操作、属性联系方法等内容。

数据库系统原理课程是北京师范大学建设的慕课、国家精品在线开放课程、国家级一流本科课程。该课程于2023年09月03日首次在中国大学MOOC开课,授课教师为党德鹏。据2023年8月中国大学MOOC官网显示,该课程已运行7学期。

课程背景:

21世纪是大数据时代,数据库课程不能没有大数据管理,这是技术发展的呼唤,也是提高教学质量、加强人才技术素质的要求。融合传统数据库技术与大数据新进展,是数据库课程改革的趋势。

课程定位:

数据库系统原理课程是一门理论与实践相结合的课程,通过大数据技术、数据保护、关系模型、实体联系方法、数据定义与操作、属性联系方法等内容的学习,使学习者掌握数据管理的共性关键技术和方法,具备分析数据管理问题和解决数据管理问题的能力。 

适应对象:

数据库系统原理课程适合计算机、数据科学与大数据、软件工程、人工智能、信息技术/系统等专业学习,也适合从事数据管理、Web系统、互联网+平台研究、开发与应用以及对计算机实际应用系统实现技术感兴趣的人员学习。

关于数据库双活原理的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。


数据运维技术 » 数据库双活原理解析,保障数据高可用性 (数据库双活原理)