Oracle-AR多主体复制方式在移动通信彩铃业务中的实施

2010-03-21 15:45俞群爱
电讯技术 2010年6期
关键词:彩铃事务站点

俞群爱

(浙江传媒学院现代教育技术中心,杭州 310018)

1 Oracle-AR多主体复制方式概述

Oracle-AR多主体复制方式(Advanced Replication Multi-master Replication)是Oracle数据库提供的一种数据对称复制方式,它通过Oracle的一些进程完成数据库对象的复制、保存,使多个数据库组成一个分布式的系统。所有在一台服务器的数据改变会被捕捉并提交到另一台服务器上,从而实现两台数据库服务器的数据同步。使用Oracle-AR多主体复制方式可以实现数据的高可用性,当复制对其中一台主机出现问题时,应用可以在另一台主机上正常运行,保证应用的连续性[1]。

1.1 Oracle-AR多主体复制方式的机制

Oracle-AR多主体复制方式由两台数据库服务器组成,一台为源数据库,一台为目的数据库。源数据库和目的数据库的构成是相同的,都由错误日志(Error log)、内部过程、复制表、内部触发器、延迟事务队列和后台进程(SMON PMON)等6部分组成,如图1所示。

在多台数据库服务器上需要同步的对象称为复制对象,复制对象的集合称为复制组。内部触发器(Inner Trigger)捕捉复制组里复制对象的数据变化,以事务的形式存放在延迟事务队列(Deferred Transaction Queue)里。在规定的时间点,后台进程激活作业,作业把延迟的事务推送到目的数据库。目的数据库上的内部过程接收到延迟事务,在复制组里的相应对象里执行该事务,如果事务不能成功执行,则保存在错误队列里。至此,一个完整的同步过程就结束了。由于数据库内部高级复制构成是完全一样的,源数据库和目的数据库概念是相对的,只要是发起事务的数据库均可称为源数据库。

图1 Oracle-AR的内部机制图Fig.1 Oracle-AR interior system

1.2 Oracle-AR多主体复制方式的应用前景

Oracle-AR多主体复制方式通过事务的传递达到两台或多台数据库服务器数据的一致,保障了数据的安全性,保证了数据的可用性,成为理想的数据库容错方案,其应用广泛,如联网售票系统[2]、远程仓储配送系统[3]等。Oracle-AR多主体复制方式具有以下5个方面的优点。

(1)高可用性

有多份“一致”数据,后台应用可以连任何一台数据库服务器,并且多台数据库服务器均是可读可写,增加并行性。

(2)支持应用链接切换

很好地支持Failover(主要针对主库失效等故障原因)与Switchover(针对主库升级等维护原因)两种切换方式。切换时间快,损失的链接较少。

(3)部署维护监控容易

Oracle-AR多主体复制方式部署简单易行,可以通过OEM(Oracle EnterprisesManagement)工具容易监控运行状态,操作方便。

(4)较强的容错性

Oracle-AR的多主体复制方式同步的粒度是事务,所有的事务均存放在队列中,不能成功执行的事务也会保存起来,待以后重用。

(5)可扩展性好

Oracle AR对称复制能同步多台数据库服务器上的数据,而且扩展不需改动先前部署站点。

2 Oracle-AR多主体复制方式的实施部署

Oracle-AR多主体对称复制方式的部署虽然与实际应用环境有关,但基本上可以分为两个阶段,即数据库服务器间通信配置阶段和多主体对称复制的配置阶段,如图2所示。

图2 Oracle-AR多主体复制部署步骤Fig.2 Steps of Oracle-AR multi-master replication

2.1 数据库服务器间通信配置阶段

2.1.1 参数初始化

部署Oracle-AR对称复制多主体方式需要调整一些初始化参数。这些参数设置如果不合理,可能成为多主体方式运行的瓶颈。需修改的参数有:

(1)global-names=true(数据库链接名(database link)必须与被连接的数据库名称一致);

(2)job-queue-processes=15(指SNP(Snapshot Process)进程的启动个数为15。系统缺省值为0,正常定义范围为0~36,根据任务的多少,可以配置不同的数值。)

2.1.2 网络通信文件

NET8是Oracle网络通信机制,支持本地客户端访问远程数据库,实现了分布式数据库方式和Oracle的分布式处理。配置NET8可以实现后台应用连接数据库的透明切换。

2.1.3 数据库链接

数据库链接是两个物理数据库服务器间的通道,它允许客户端方便地访问对端的数据库。数据库链接是单向的,要想使数据库间可以互相访问,需要建立两条数据库链接。在Oracle-AR对称复制多主体方式中建立数据库链接,是为了延迟事务能够安全可靠地到达对端数据库。

2.2 多主体对称复制的配置阶段

2.2.1 创建管理用户

Oracle-AR多主体复制方式的维护和部署操作都在一个独立的帐户下进行的,这个帐户为REPADMIN。

2.2.2 创建复制组和添加复制对象

Oracle-AR多主体复制方式支持的复制对象的种类很多,基本上涵盖了数据库所有的对象,主要有表,索引,包体,存储过程函数,触发器,同义词等对象。

2.2.3 复制点

Oracle-AR多主体复制方式把所有需要进行同步的数据库服务器称为主体站点(Master Site)。把可以进行复制管理操作的站点称为主体定义站点(Master Defined Site)。主体定义站点只能有一个,主体站点可以有多个,在主体定义站点实施的管理操作会自动同步到各个主体站点执行。

2.2.4 设置冲突解决方案

由于Oracle-AR内的每个数据库上的数据可读可修改,如果正好两台数据库分别对同一复制对象的同一数据进行修改,就会发生数据冲突,需要一种机制来解决这种危险的情况,这种机制称为冲突解决方案。Oracle提供很多的冲突解决策略,用户也可以定制自己的冲突解决策略。

2.2.5 设置推送策略

推送策略是指将延迟事务队列里的事务通过数据链路推送到多个数据库的时间安排。如果推送时间过短,对数据库性能影响较大,如果推送时间过长,各个数据库上的数据存在不一致性,而且增加了冲突可能性。

3 Oracle-AR多主体复制方式在移动彩铃业务中的实施

彩铃(Color Ring Back Tone,CRBT)业务是移动运营商为迎合年轻人时尚前卫而开通的业务。该业务旨在张扬个性,与人们的生活息息相关。如果彩铃业务不能正常运行,或者定制的铃音混乱,会导致大量的客户投诉。因此,为彩铃业务设计的数据库方案既要保证数据安全性,又要保证业务的连续性。同时,考虑到彩铃业务的特点,在初期定制时修改数据量较大,到后期改动比较平稳,我们决定采用Oracle-AR多主体复制方式。

为了支持应用连接数据库的透明切换,我们把两台服务器上的数据库设置成完全一样的,具体配置如表1所示。

表1 彩铃业务服务器/数据库的配置Table 1 The configuration of server database of CRBT service

配置NET8网络连接,为了实现对应用透明数据库连接,需要配置虚网络服务名iip.ebupt.com,虚网络服务名会动态绑定iip1上或iip2上数据库。配置如下:

在tnsnames.ora里设置数据库连接字符串,使两台数据库之间可以互相访问。

去除listener.ora中(GLOBAL-DBNAME=iip.ebupt.com)项,配置模式如下:

由于iip1和iip2上的数据库名和域名均相同,使得它们的global-name也相同,不能顺利地建立数据库链接,因此,需要强制地转换一下数据库的全局名:

alter database rename global-name to IIP1.EBUPT.COM;

alter database rename global-name to IIP2.EBUPT.COM;

后续的操作与正常的部署流程完全一样,这里不再赘述。

4 结 论

Oracle-AR多主体复制方式成功满足了移动彩铃业务的需求,保证了数据的安全性和可靠性,同时实现了数据的高可用性,在出现单点故障时,彩铃应用能很快地切换到另外数据库上,保证了业务的连续性,可为彩铃用户提供可靠、高质量的服务。

[1] 徐秀华,文必龙,毕硕本.Oracle 9i高级复制技术及其应用[J].计算机应用研究,2003(11):107-109.XU Xiu-hua,WEN Bi-long,BI Shuo-ben.Oracle 9i Advanced Replication Technology and Its Applications[J].Application Research of Computers,2003(11):107-109.(in Chinese)

[2] 李振宏.基于Oracle高级复制的联网售票系统数据库设计[J].电脑开发与应用,2007,20(5):62-63.LI Zhen-hong.The network ticketing system database design of Oracle-based Advanced Replication[J].Computer Development&Applications,2007,20(5):62-63.(in Chinese)

[3] 姚东.Oracle高级复制技术在“远程仓储配送”系统的应用[J].现代计算机,2002(9):29-32.YAO Dong.Oracle advanced replication technology in the“remote storage and distribution” system application[J].Modern Computer,2002(9):29-32.(in Chinese)

猜你喜欢
彩铃事务站点
基于分布式事务的门架数据处理系统设计与实现
NEWS in brief
彩铃内置推广链接方案研究
河湖事务
基于Web站点的SQL注入分析与防范
2017~2018年冬季西北地区某站点流感流行特征分析
首届欧洲自行车共享站点协商会召开
怕被人认出
VoLTE时代下彩铃平台改造研究
SQLServer自治事务实现方案探析