数据是古代企业最主要的营业资产之一,特殊是症结数据。假天命据弗成用或没有遭到珍重,企业可以会在每小时的营业宕机时辰内损丢失落数百万美元,同时还会给企业抽象带来负面影响。对进展在瞬息万变的竞争情形中获得胜利的企业来说,构建一个具有高可用性架构的数据中央至关主要。在本文笔者将引见若何行使 IBM InfoSphere Data Replication 产物中的 Q 复制手艺完成 DB2 数据库零星的高可用性和双活。
数据库是古代企业数据中央的焦点,用于支持症结的企业运用。对数据库的要求,除高功效,高靠得住性,功用雄厚,易行使,易珍重外,还要求有很好的灾备和高可用性计划合营,提高数据的平安和可用性。
望文生义,数据库灾祸恢复计划为灾祸事宜准备的数据库备份和恢复计划,简称灾备计划。这里涵盖的灾祸包括各类自然和工资灾祸事宜,若有洪水、地震、飓风、海啸等各类极端自然天色和气象,和爆炸、失落火、电网缺点等工资异常事宜。这些灾祸会对数据中央的根蒂根抵举动装备组成影响,损坏数据中央的存储介质,致使数据库中的数据丧丢失落。灾祸的特色参数包括它影响的地舆局限,延续的时辰长短,和对举动装备和数据的损坏水平。为了避免这些事宜完整息灭企业的数据,企业需求设计有呼应的灾备装备,在灾祸影响局限之外安装备用数据中央和寄存备份数据,这样当灾祸真的发生发火时才华够在备份数据中央连续睁开营业。
灾备计划需求凭证针对的灾祸特色来设计。好比对影响局限局限在数据中央内部的灾祸(局限几百米),同城的灾备中央就可以恢复营业。对影响局限除夜到整座城市的灾祸(局限为几十千米),就需求安装在异地甚至很远处的灾备中央来恢复营业运转。理想中经常据说的同城灾备中央和异地灾备中央就是指灾备节点处于同城局限或异地局限。
对灾备计划,次要有两个手艺目的:
传统的灾备计划,多收受接管主机 – 备机(Active-Standby)的安装体式格式。可以安装在同城,或异地。主机和主数据库用来处置责罚营业,备机和备用数据库则处于待命形态,只需在主机蒙受灾祸丢生效时才会在备机上启动数据库和恢单数据,连续供应干事。主机的数据库数据收受接管活期或连续的体式格式复制到备机端,好比:
收受接管的数据复制手艺决意了灾备计划的 RPO 目的。传送或复制过来的数据不能赶紧被备机数据库行使,需求经由一个恢复进程来恢单数据的不合性。缺点检测时辰、数据库恢复时辰和其它干事恢复时辰一路,决意了灾备计划的 RTO 目的。
营业零星的可用性是指营业的运转时辰占悉数时辰的比例。可以用上面的公式来泄漏表现:
可用性 = 1 – 营业宕机时辰 / ( 营业宕机时辰 营业运转时辰 )
营业的弗成用水平直接和企业的经济损丢失落数值相关,是以一切企业都异常关注营业可用性目的。可用性越高,就泄漏表现营业宕机的时辰比例越小。高可用性即指可用性很高(如 99%),宕机时辰很少。在高可用性之外还有一个术语叫连续可用性(Continuous Availability),指营业连续运转完整不宕机,可用性为 100%。
完成高可用的症结在于收受接管冗余的配备或设置配备铺排来增加零星中的单点丢生效环节。好比,竖立高可用数据库治理零星集群可以去除数据库治理零星的单点丢生效,完成数据库治理零星的高可用性。收受接管具罕有据冗余性的存储配备,可以提高数据库存储的高可用性。收受接管冗余的数据衔接和汇集衔接,提高数据衔接和汇集衔接的可用性。竖立干事器集群,可以提高干事器高可用性。竖立灾备站点,可以提高悉数站点的可用性。
凭证针对的丢生效类型,可以把高可用性计划分为几个品级:
1)、2)和 3)是针对软硬件缺点而设计的,这类高可用计划通俗安装在单个数据中央站点里。4)不只可以搪塞软硬件缺点,还可以搪塞站点级的灾祸,只需安装在相隔比拟远的两个站点里。
传统上,数据库零星的高可用性可以经由进程构建集群来完成。可以构建公用的数据库集群(如 Oracle RAC,DB2 pureScale),不只提高可用性同时也扩展年夜数据库处置责罚能力。也可以行使零星集群软件构建悉数零星的高可用集群。在各类主流操作零星上都有集群软件,可以支持构建各类数据库的高可用性集群,如:
在高可用零星集群中,多收受接管主机 – 备机(Active-Standby)的安装体式格式。主站点的数据库零星用来处置责罚营业,备站点的数据库则处于待命形态。两个站点经由进程同享存储来同享数据(如图 1 所示)。在主站点发生发火缺点时,集群软件可以经由进程心跳旧事丧丢失落活络检测到缺点,并自动将数据库干事在备用站点从新启动,完成缺点切换进程。
所谓数据库双活(Active/Active),是指两个数据库零星,可以相隔异常远的距离(如几千千米),可以同时运转支持沟通的运用负载,而且在一方泛起缺点时可以活络切换到其他一方。一个完整的数据库双活计划,通俗需包括:
– 两个数据中央
– 在两个数据中央的数据库之间双向复制运用级数据的异步复制软件
– 运用网关,担负负载平衡和分发
– 监控软件,监控一切部件的安康和功效情形
– 自动化的切换和回切对象
与传统的收受接管 Failover 模子的灾备或高可用计划比照,数据库双活计划具有以下优势:
1)提高了零星可用性。双活计划不只支持缺点切换,而且因为两头数据库都处于责任方法下,切换时辰会异常短(分钟级),担保了营业高可用性。
2)提高了容灾能力。双活计划里的两个数据中央可以相隔异常远,足以免自然灾祸酿成的息灭性效果。
3)扩展年夜了零星处置责罚能力。完成双活的两个数据中央具有负载平衡的设置配备铺排,处置责罚能力强于单一数据中央。
4)提高了成本行使率。两个数据中央的 IT 举动装备获得了富余行使,避免了传统方法下备机的成本闲置。
凭证运用负载分配体式格式的不合,双活计划可以分红上面几种设置配备铺排体式格式:
– Active/Standby:主机处置责罚读写类型的运用要求;备机完整处于闲置形态,不处置责罚运用要求;数据从主机复制到备机
– Active/Query:主机处置责罚读写类型的运用要求;备机处置责罚只读类型的运用要求;数据从主机复制到备机
– Active/Active:主机和备机都处置责罚读写类型的运用要求,这类情形下需求在运用设计层面尽量避免数据同时更改的冲突;数据在主机和备机间双向复制
双活计划的切换不只包括传统的自动式的缺点切换,还支持自动式的设计切换,和因为功效目的更改激起的自动式切换。
– 设计外切换,如由部件缺点激起的切换,发生发火时辰弗成猜测
– 设计内切换,如由产物珍重激起的切换,放置在预定的珍重时辰窗口中
– 基于功效启事的切换,如某端的数据复制延时过除夜或处置责罚能力下落,自动将部份运用负载切换到其他一端,发生发火时辰弗成猜测。这类切换只发生发火在 Active/Query 和 Active/Active 设置配备铺排体式格式中。
本节我们讲述若何行使 IBM Q 复制手艺来完成 DB2 数据库零星的双活。Q 复制将在这个双活计划中饰演数据库复制对象的脚色。
Q 复制是 IBM 于 2004 年起推出的一种高功效的数据库间异步数据复制手艺,次要支持 DB2 数据库,也支持 Oracle 数据库。它经由进程读取源数据库的日志记载来捕捉数据转变,并将数据转变以数据库生意营业为单元经由进程 MQ 旧事队列发送到目的干事器,最初在目的干事器将生意营业回复中兴出来并提交至目的数据库。这个手艺可以在以下产物中获得:
– IBM InfoSphere Data Replication
– InfoSphere Replication Server
– IBM DB2 UDB
– IBM InfoSphere Warehouse
下图 2 描写了 Q 复制中的症结组件。
Q 复制手艺具有以下手艺特色:
1)高功效。在源端,Q 复制经由进程读取数据库日志来捕捉记载转变,弗成使数据库查询来获得数据。这样既避免了与源端的运用争抢接见数据库,减小了对运用的影响,又担保了转变捕捉的高功效。在目的端,Q 复制行使了并发手艺,担保了高功效地向目的数据库写入数据。
2)低延时。Q 复制经由进程 MQ 旧事队列传输数据修改,增加了悉数复制环节的 I/O 操作次数和守候时辰,担保了数据复制的延时可以低到数秒之内。
3)担保目的端数据的生意营业不合性。Q 复制是以生意营业为复制的最小数据单元的,这样目的端数据老是处于生意营业不合性形态。
4)无邪的设置配备铺排体式格式。Q 复制是表级复制手艺,可以设置配备铺排 Q 复制只复制特定运用负载所行使的表。还可以遴选需复制的行和列。
5)异步复制。Q 复制是一种异步复制手艺,对运用影响小。需求留意的是,在源数据库泛起缺点时,异步复制可以会组成目的端数据丧丢失落。
6)雄厚的平台支持。Q 复制支持一切主流开放平台(AIX,HP-UX,Linux,SunOS,Windows)和除夜型机平台 z/OS。
7)支持异构数据库。Q 复制行使悍然的尺度接口接见数据库及日志,所以它支持在各类类型各类版本的 DB2 数据库和 Oracle 数据库间复制更改。
8)易于行使:Q 复制配套有图形化的设置配备铺排对象复制中央,基于 web 的监控对象 Q 复制 Dashboard,和可编程式的敕令行剧本对象 ASNCLP,行使异常无邪随意。
这个计划可以图示以下:
个中 Q 复制被用作在两个数据中央的 DB2 数据库之间的数据复制对象。在双活计划中行使 Q 复制有以下优点:
1)因为 Q 复制具有很低的复制延时,可以担保 RPO 比拟低。假定是设计内停机景遇,可以担保 RPO 为 0。
2)因为 Q 复制的目的数据库老是处于生意营业不合性形态,随时可用,可以担保切换时所需时辰比拟小,担保了 RTO 很低。
3)因为 Q 复制是异步复制手艺,对 DB2 数据库的营业呼应时辰没有影响,距离的增除夜不会组成呼应时辰的增除夜,担保了远距离安装的可行性。
4)Q 复制的目的数据库随时可用且复制延时较低,所以不只可以用于实行对复制延时不敏感的报表型查询运用,还可以实行对数据延时比拟敏感的只读或读写型 OLTP 运用,提高了负载处置责罚能力和成本行使率。
5)Q 复制支持一切的双活设置配备铺排体式格式:Active/Standby,Active/Query,Active/Active。
上面我们来描写一下 Q 复制在各类范例切换场景中是若何责任的。
Active/Standby 体式格式
– 主站点 A 缺点
在主站点 A 发生发火缺点的情形下,备用站点 B 守候源端 Q 复制已发送到站点 B 的数据都被运用到数据库上,然后就可以把正天职配到站点 A 的一切运用负载切换到备用站点 B。在备用站点 B 新发生发火的数据修改会被 Q 复制捕捉并发送出去。因为主站点 A 弗成用,所以修改的数据会被暂存在站点 B 的 MQ 旧事队列中。
在主站点 A 恢复后,暂存在站点 B 的 MQ 旧事队列中的数据会被传送到站点 A,并被站点 A 的 Q 复制轨范运用到数据库上。完成后待 Q 复制延时较低时可以把一切运用切换回主站点 A,从新回到 Active/Standby 形态。
– 备用站点 B 缺点
没有影响。在备用站点 B 恢复后,Q 复制会自动把时期主站点 A 上发生发火的数据修改复制到备用站点 B。
Active/Query 体式格式
– 主站点 A 缺点
与 1) 的主站点 A 缺点异常相像。
在主站点 A 发生发火缺点的情形下,查询站点 B 守候源端 Q 复制已发送到站点 B 的数据都被运用到数据库上,然后就可以把正天职配到站点 A 的一切运用负载切换到备用站点 B。这时辰站点 B 为一切的运用负载供应干事。在查询站点 B 新发生发火的数据修改会被 Q 复制捕捉并发送出去。因为主站点 A 弗成用,所以修改的数据会被暂存在站点 B 的 MQ 旧事队列中。
在主站点 A 恢复后,暂存在站点 B 的 MQ 旧事队列中的数据会被传送到站点 A,并被站点 A 的 Q 复制轨范运用到数据库上。完成后待 Q 复制延时较低时可以把读写型运用切换回主站点 A,在站点 B 只留下查询型运用,从新回到 Active/Query 形态。
– 查询站点 B 缺点
在查询站点 B 发生发火缺点的情形下,可以把正天职配到站点 B 的一切查询型运用负载切换到主站点 A。这时辰站点 A 为一切的运用负载供应干事。在站点 A 发生发火的数据修改会被 Q 复制捕捉并发送出去。因为查询站点 B 弗成用,所以修改的数据会被暂存在站点 A 的 MQ 旧事队列中。
在查询站点 B 恢复后,暂存在站点 A 的 MQ 旧事队列中的数据会被传送到站点 B,并被站点 B 的 Q 复制轨范运用到数据库上。完成后待 Q 复制延时较低时可以把最初分配给查询站点 B 的查询型运用负载切换回查询站点 B,从新回到 Active/Query 形态。
Active/Active 体式格式
– 站点 A 缺点
与 1) 的主站点 A 缺点异常相像。
在站点 A 发生发火缺点的情形下,站点 B 守候源端 Q 复制已发送到站点 B 的数据都被运用到数据库上,然后就可以把正天职配到站点 A 的一切运用负载切换到站点 B。这时辰站点 B 为一切的运用负载供应干事。在站点 B 新发生发火的数据修改会被 Q 复制捕捉并发送出去。因为站点 A 弗成用,所以修改的数据会被暂存在站点 B 的 MQ 旧事队列中。
在站点 A 恢复后,暂存在站点 B 的 MQ 旧事队列中的数据会被传送到站点 A,并被站点 A 的 Q 复制轨范运用到数据库上。这时辰可以把最初分配到站点 A 的读写型运用切换回站点 A,在站点 B 只留下部份读写负载,从新回到 Active/Active 形态。
Active/Standby 体式格式
- 主站点 A 设计内零星珍重
在珍重最先后,首先主站点 A 暂停收受接管运用负载。守候主站点 A 上的所罕有据修改都已被 Q 复制运用到备用站点 B 的数据库上,然后就可以住手主站点 A 的数据库和 Q 复制轨范(包括 MQ),把正天职配到站点 A 的一切运用负载切换到备用站点 B。在备用站点 B 新发生发火的数据修改会被 Q 复制捕捉并发送出去。因为主站点 A 弗成用,所以修改的数据会被暂存在站点 B 的 MQ 旧事队列中。在主站点 A 珍重完成后从新启动数据库和 Q 复制轨范(包括 MQ),暂存在站点 B 的 MQ 旧事队列中的数据会被传送到站点 A,并被站点 A 的 Q 复制轨范运用到数据库上。完成后待 Q 复制延时较低时可以把正天职配到站点 A 的一切运用负载切换回主站点 A,从新回到 Active/Standby 形态。
- 备用站点 B 设计内零星珍重
只需求住手备用站点 B 的数据库和 Q 复制轨范(包括 MQ),等珍重竣事后从新启动即可。Q 复制会自动把珍重时期主站点 A 上发生发火的数据修改复制到备用站点 B。
Active/Query 体式格式
- 主站点 A 设计内零星珍重
与 1) 的主站点 A 设计内零星珍重异常相像。
在珍重最先后,首先主站点 A 暂停收受接管运用负载。守候主站点 A 上的所罕有据修改都已被 Q 复制运用到查询站点 B 的数据库上,然后就可以住手主站点 A 的数据库和 Q 复制轨范(包括 MQ),把正天职配到站点 A 的一切运用负载切换到备用站点 B。在查询站点 B 新发生发火的数据修改会被 Q 复制捕捉并发送出去。因为主站点 A 弗成用,所以修改的数据会被暂存在站点 B 的 MQ 旧事队列中。
在主站点 A 珍重完成后从新启动数据库和 Q 复制轨范(包括 MQ),暂存在站点 B 的 MQ 旧事队列中的数据会被传送到站点 A,并被站点 A 的 Q 复制轨范运用到数据库上。
完成后待 Q 复制延时较低时可以把正天职配到站点 A 的一切运用负载切换回主站点 A,在站点 B 只留下查询型运用,从新回到 Active/Query 形态。
- 查询站点 B 设计内零星珍重
在珍重最先后,把正天职配到站点 B 的一切查询型运用负载切换到主站点 A,然后住手查询站点 B 的数据库和 Q 复制轨范(包括 MQ)。这时辰站点 A 为一切的运用负载供应干事。在站点 A 发生发火的数据修改会被 Q 复制捕捉并发送出去。因为查询站点 B 弗成用,所以修改的数据会被暂存在站点 A 的 MQ 旧事队列中。
等查询站点 B 珍重竣事后从新启动数据库和 Q 复制轨范(包括 MQ)。暂存在站点 A 的 MQ 旧事队列中的数据会被传送到站点 B,并被站点 B 的 Q 复制轨范运用到数据库上。完成后待 Q 复制延时较低时可以把最初分配给查询站点 B 的查询型运用负载切换回查询站点 B,从新回到 Active/Query 形态。
Active/Active 体式格式
- 站点 A 设计内零星珍重
与 1) 主站点 A 设计内零星珍重异常相像。
在珍重最先后,首先站点 A 暂停收受接管运用负载。守候站点 A 上的所罕有据修改都已被 Q 复制运用到站点 B 的数据库上,然后就可以住手站点 A 的数据库和 Q 复制轨范(包括 MQ),把正天职配到站点 A 的一切运用负载切换到站点 B。在站点 B 新发生发火的数据修改会被 Q 复制捕捉并发送出去。因为站点 A 弗成用,所以修改的数据会被暂存在站点 B 的 MQ 旧事队列中。
在站点 A 珍重完成后从新启动数据库和 Q 复制轨范(包括 MQ),暂存在站点 B 的 MQ 旧事队列中的数据会被传送到站点 A,并被站点 A 的 Q 复制轨范运用到数据库上。完成后待 Q 复制延时较低时可以把正天职配到站点 A 的一切运用负载切换回站点 A,从新回到 Active/Active 形态。
假定从一个站点向其他一个站点的 Q 复制延时过除夜,那末运转在目的站点的运用负载运转效果的有用性就会遭到影响,这时辰候也需求启动切换。
Active/Query 体式格式 – 查询站点 B 数据复制延时过除夜
在查询站点 B 视察到复制延时过除夜的情形下,可以把正天职配到站点 B 的一切查询型运用负载切换到主站点 A。这时辰站点 A 为一切的运用负载供应干事。在站点 A 发生发火的数据修改会被 Q 复制捕捉并发送出去,并最终运用到站点 B。
在查询站点 B 的复制延时恢复到较低时,可以让站点 A 暂停收受接管最初分配给站点 B 的那部份查询运用的要求,等站点 A 此前发生发火的一切转变都已由 Q 复制运用到站点 B 的数据库上,
然后就可以把最初分配到站点 B 的查询型运用负载切换回查询站点 B,从新回到 Active/Query 形态。
2) Active/Active 体式格式 – 站点 B 数据处置责罚延时过除夜
在站点 B 视察到复制延时过除夜的情形下,可以让站点 B 暂停收受接管运用要求,等站点 B 发生发火的一切转变都已由 Q 复制运用到站点 A 的数据库上,然后就可以把最初分配到站点 B 的一切
运用负载切换到站点 A。这时辰站点 A 为一切的运用负载供应干事。在站点 A 新发生发火的数据修改会被 Q 复制捕捉并发送出去,并最终运用到站点 B。
在站点 B 的复制延时恢复到较低时,可以让站点 A 暂停收受接管最初分配给站点 B 的那部份运用的要求,等站点 A 此前发生发火的一切转变都已由 Q 复制运用到站点 B 的数据库上,
然后就可以把最初分配到站点 B 的一切运用负载切换回站点 B。从新回到 Active/Active 形态。
DB2 数据库自己还带有一个 HADR(High Availability Disaster Recovery)特色,也可以用来完成 DB2 数据库的灾备和高可用性。如图 4 所示:
DB2 HADR 是一个数据库级的复制计划。如图 4 所示,HADR 的主节点经由进程 log shipping 手艺将 log 记载发送到目的节点,目的节点经由进程赓续前滚这些 log 记载,担保和主节点的数据不合性。只需主节点才华处置责罚读写型运用负载,备用节点可以责任在 standby 形态下或处置责罚只读型的查询。DB2 HADR 要求两头的 DB2 数据库的版本及操作零星平台版本必需不合,而且不支持 DB2 分区数据库。
DB2 HADR 支持多种复制方法:同步,近同步,异步,超异步。同步复制体式格式可以用来构建距离比拟近的灾备节点,异步和超异步复制体式格式则可以用来构建距离比拟远的高可用节点。虽然和 Q 复制一样可以用于高可用性计划,但 DB2 HADR 和 Q 复制有许多区分,需求凭证理想的需乞降场景来选择适合的手艺。下表 1 列出了 Q 复制和 DB2 HADR 的比拟:
灾祸恢复 (DB2)
灾祸恢复 (DB2 LUW)
需求包括
Q Replication (事务重放)
HADR (日志重放)
高可用性 (DB2)
ACTIVE/STANDBY
ACTIVE/STANDBY ACTIVE/QUERY V9.7FP1 (2)
Active/Active 设置配备铺排类型
一切 DML 操作,包括 LOBs。V10 后支持 DDL 复制
一切记载在日志的 DML,DDL 操作。没有记载的日志的操作不能复制,如 LOBs,LOAD。
复制的操作
表级别
悉数数据库
复制的对象
是
否
能否是支持 DB2 分区数据库
准许数据转换
源和目的的数据沟通
源和目的数据
可所以不合的硬件和不合的数据库
只支持相反的硬件和软件
软硬件要求
z/OS 和 LUW
只需 LUW
支持的平台
信息集成 (DB2)
ACTIVE/QUERY
DB2 掌握中央(Control Center)
治理和设置配备铺排
经由进程 SQL 语句重做数据库事务 异步方法
日志页面传送和数据库回滚 同步方法,近同步方法,异步方法和超级异步方法
所用手艺
DB2 Database transactions
DB2 Database at point-in-time
数据不合性
ACTIVE/ACTIVE
DB2 Data Studio
Replication Center
可经由进程 TSA 或 HACMP enable 手工干预干与
Web-based Rep Dashboard
无需停运用
需求停丢失落运用
晋级到新的 DB2
无影响
对近同步和同步方法有影响
对运用的呼应时辰影响
无限制
短距离 (几百千米)每 100 千米增加 1 毫秒的呼应时辰
支持的距离
2-5 秒
30 秒
恢复时辰目的 (RTO)
小于 1 秒
0 ( 在对等形态 )
数据损丢失落目的 (RPO)
手工收受接管
现实上 Q 复制可以和 DB2 HADR 连络行使以构 R 构建同数据中央或同城高可用集群,而行使 Q 复制构建异地甚至异构高可用计划。
数据库双活是一个比拟新的概念,可以同时知足企业在营业高可用、数据容灾、功效扩展年夜和提高成本行使率方面的需求。IBM Q 复制手艺是一种高功效低延时的运用级异步数据库复制计划,异常适合于构建数据库双活零星。
百度搜索“就爱阅读”,专业资料,生活学习,尽在就爱阅读网92to.com,您的在线图书馆!
来源: http://www.92to.com/bangong/2017/10-30/30583293.html