1 大型Oracle数据库的迁移需求和技术挑战
随着业务的不断拓展,我们经常需要对系统进行调整,比如:存储系统升级、服务器升级、平台的迁移、数据库版本升级等等,这些情况我们都需要借助数据迁移工作来完成。
在迁移过程中,我们经常会遇到一些很难解决的问题。因为,如果迁移是在相同的操作系统平台、或相同的数据库平台之间做数据库的迁移,会有较多手段能够实现;但是,如果在异构环境下,做操作系统的升级或变更、数据库的升级、存储设备的升级等等,都大幅度地提高了迁移的复杂程度。
其具体技术环境和技术需求往往是:
n 数据库版本异构版本升级:
如Oralce 8i 升级到 9i,甚至是Oracle10g,等等;
n 操作系统升级:
如AIX 4.3 升级 5.2,甚至是HP Unix环境下,等等;
n 磁盘阵列扩容:
从老的磁盘升级到新的、其他不同厂家的高端磁盘中,等等。
在这样的迁移升级过程中,还面领以下重要的技术挑战:
n 如何缩短业务中断的时间;
即使是有计划的业务中断也将会对企业造成巨大的损失,比如电信行业计费系统的停止、营业帐务系统的服务中断等,都会直接造成对外业务服务的中断,大大降低客户服务质量和满意度等。
据业界估计,80%的停机时间都来源于计划的下线,其中包括硬件迁移等。因此尽量缩短迁移过程所需要的时间是提高系统连续运行的关键,目前普遍要求在3-5个小时内完成迁移,而且尽量不影响已经运行的业务系统。因此,如何保证在异构环境下的迁移,并且缩短迁移的时间和业务中断时间是本项目最关键的环节。
n 如何确保数据的准确性;
n 能否在迁移的前后期准备期间内,大大减少对业务系统的影响,确保迁移的过程可控;
n 其他
2 DSG数据库迁移解决方案的特点
2.1 DSG拥有独特的技术手段和产品作为迁移的技术基础
DSG公司的备份恢复产品(SnapAssure)、快速导出、导入产品(XEXP/XIMP)以及RealSync产品所具备的首次全同步功能等各项技术,集成在一起能够为用户提供不同层次的迁移支持:
l RealSync首次全同步技术:提供异构环境下的Oracle数据库的数据迁移,该产品具有在业务不停顿的情况下实施快速迁移的特点。在业务依然运行的情况下,RealSync支持将旧生产系统的数据迁移到新的数据库系统上,自动将已有的数据迁移,同时还会将迁移过程中新产生的变化数据也迁移到新系统上;
l 快速导出/导入技术(XEXP/XIMP)技术:提供了在静态环境下的数据库快速迁移的功能,该技术比Oracle的EXP/IMP的速度有近10倍的效率提升;
l 快速备份/恢复(SnapAssure)技术:提供了同构操作系统环境下的数据迁移,尤其适用于在更换存储系统环境下的迁移需求。提供了比传统RMAN的备份恢复性能高出若干倍的备份/恢复效率。
2.2 DSG拥有成熟的、严密的数据迁移工程的管理规范
l 充分的人员保证和组织管理:由于搬迁工作的复杂性,在项目组中要有专职项目经理,要有网络工程师、系统管理员、数据库管理员、应用系统负责人等配合。
l 详细专业地沟通:按照整个实施的过程,全面地进行专业沟通,涵盖诸如迁移目标、需求、环境、如何联合测试、设计和确定正式搬迁计划、搬迁计划实施、搬迁后观察等。
l 严格的进度控制:由于是生产系统的迁移,项目的实施有严格的时间限制,因此在项目实施过程中要对实施进度进行严格控制,并制定详细的应急方案。
l 完善的质量保证:由于是生产系统的迁移,所有的操作都要保证其准确性,要确保提前落实迁移测试、确定最后的迁移计划和方案,严格按照迁移的专业流程操作、确保每一个步骤万无一失。因此,项目实施过程中对所有的实施步骤都要进行充分的测试验证和审核,以确保实施的质量。
2.3 严格执行的大型数据库迁移工程步骤的流程规范
步骤(1) | 制定详细的迁移计划期:包括迁移任务的目标分析、系统环境分析、业务数据分析、迁移的性能需求分析; |
步骤(2) | 迁移准备期:系统环境准备、安装和调测相关软件、模拟迁移测试、根据模拟情况核定各项准备、核定所需迁移的最大时间等各个环节;提交正式迁移申请报告; |
步骤(3.1) | 正式迁移期:正式迁移开始,对生产系统的数据进行备份、导出或大批量数据导出; |
步骤(3.2) | 在不停顿业务的模式下,当大批量数据复制完成后,RealSync将步骤(3.1)过程中新增加的交易重新复制到目标系统。通过跟踪和分析数据导出过程中的所有redo.log信息,从Log文件中分析和翻译出这段时间内新增加的记录,然后再将这些记录插入到目标系统中。 |
步骤(4) | 验证迁移系统期:正式迁移后,快速验证并启动新系统,并对新系统的运行进行跟踪记录和分析,已备回切增量信息到旧系统中。 |
步骤(5) | 迁移系统观察期:迁移系统运行观察期结束后,提交正式迁移完成报告。 |
2.4 DSG的大型数据库迁移解决方案优势
在现实的迁移实践中,DSG数据库迁移解决方案在迁移工程实施过程中,展现了非常独特的优势,如下:
1. 效率高、速度快
与其它同类迁移技术相比,无论是采用SnapAssure、XEXP/XIMP还是RealSync等任何一种迁移方式,在效率上和性能上都远远高于其它同类解决方案。例如,在杭州电信采用RealSync方式在2个多小时完成了1.9TB数据的迁移工作。
2. 无中断的数据迁移
如果采用RealSync首次迁移方式,不需要对原系统业务进行限制、甚至停止原系统,从而减少在长时间迁移过程中对原系统的影响。
3. 跨数据库平台的迁移:
可支持Oracle任意两个不同版本之间的数据迁移,例如:支持从Oracle 7.3.4 到 Oracle8.1.7或Oracle 9i等更高版本。
4. 跨OS系统平台的迁移
可支持运行在不同操作系统平台上的两个Oracle系统之间的迁移,例如:从HP UX 到AIX上的迁移等。
3 DSG在类似迁移工程中的应用案例
DSG的大型数据库迁移解决方案已经成功应用于很多工程实施中,包括:
3.1 杭州电信数据迁移
l 杭州电信:杭州电信IBSS系统,需要将HP-UX上的Oracle 8i数据库升级到AIX平台的Oracle 8i数据库上。数据量大小约为1.9TB。在杭州电信采用DSG RealSync的迁移工具后,1.9TB的数据能够在2-3小时内将数据导出并装载完成,create index需要的时间约为10个小时左右。
3.2 成都电信数据迁移
l 成都电信:成都电信计费系统需要从AIX 4.3.3的Oracle 8iOPS环境迁移到AIX5.2的Oracle 9iRAC上。其数据量约为2TB,但要求是系统不能停机,因此DSG的任务是配合IBM公司在迁移过程中实现业务不间断、以及迁移失败后将新系统上产生的新数据恢复到旧系统上,实现业务回退的目标。系统采用了RealSync中的日志分析功能,负责将迁移过程中新产生的Redo Log分析成SQL语句应用到新系统上,从而实现迁移过程中的业务不中断的目的。
3.3 海南电信数据迁移
l 海南电信:海南电信需要经IBSS系统,从旧的盘阵系统迁移到新的盘阵系统上,但采用相同的操作系统。该项目要求在最短时间内,将系统迁移到新存储系统上。DSG采用快速备份技术SnapAssure将老系统上的数据库备份出来,然后再恢复到新的系统上。800GB左右的数据,总共迁移时间只用了3个小时左右。
3.4 福建联通数据迁移
l 福建联通:对帐务数据库进行升级迁移,将HP-UX上的Oracle 8i数据库迁移到另一台Oracle 9i数据库上,采用DSGRealSync技术,实现了不停顿业务下的数据迁移,200GB左右的数据迁移用2小时左右完成。
4 杭州电信3.5TB数据异构平台迁移案例
4.1 客户背景
杭州电信是中国电信旗下的重要分公司之一。杭州电信的前身是创建于1883年的津沪电报总局杭州电报分局。解放后,随着我国邮电事业的变迁,杭州电信不断发展壮大。在2000年7月,浙江省电信有限公司杭州市分公司正式挂牌成立。在一百多年的发展中,杭州电信不仅为中国经济最发达省份提供着优质的电信服务,而且为中国的电信事业培养了大量的优秀人才,包括现任信息产业部部长王晓初以及中国移动董事长王建宙等都曾在杭州电信长期学习、工作和担任领导职务。
杭州电信现有资产总值62.5亿元,员工2529名。公司下辖萧山、余杭、富阳、临安、桐庐、建德、淳安七个县(市、区)电信局,客户量超过460万。
4.2 业务需求
杭州电信的电信信息系统自2002年建设,至今已5年有余。由于业务的快速发展,数据量爆炸式增长,而原有的系统由于设备老化、扩展性不足,在处理能力、性能等方面已经无法满足现有业务的需求。为此,杭州电信在机房搬迁的同时,采购一批新的设备,实现信息系统的升级换代。
在整个搬迁工程中,帐务系统的迁移最具有挑战性:
1) 数据库容量大。帐务系统库容量超过3.5TB,数据量2.9TB。各类对象超过18万个,其中表18000多张,最大用户下就有超过10000张表,而最大的表内记录数接近3亿条;存储过程和函数等接近10000个。
2) 跨平台。旧帐务系统采用IBM S85 + AIX 4.3.3 + Oracle8.1.7.4,迁移后的新帐务系统采用HP RP7420 + HP-UX 11iV2 + Oracle8.1.7.4
3) 时间有限。业务要求整个搬迁过程不能超过48小时,业务中断不能超过2次,每次不超过4小时。
4) 数据准确性要求高。由于是帐务系统,数据库记录的都是客户资料、欠费缴费信息和计费信息。如果出现数据准确性问题,将导致整个营业收费系统的紊乱,引起客户的投诉。
面对如此高难度和复杂的工程,杭州电信和相关集成商首先邀请国外厂商Quest来协助完成搬迁,但Quest公司6周的测试以失败告终。在离搬迁日期仅剩3周的时候,杭州电信和相关集成商邀请DSG公司协助完成迁移。
4.3 解决方案
针对客户的实际情况,DSG公司提出:
1) 在技术上采用DSG RealSync软件实现大容量数据库的跨平台快速同步
DSG RealSync软件支持不同平台上的Oracle数据库之间的快速同步,包括首次数据同步和增量数据复制。DSGRealSync采用完全逻辑的方式进行数据同步,可以跨越不同平台;并且在数据同步过程中,采用了DSG独有的XF1文件格式、数据流压缩技术和快速数据抽取和装载技术。在配置多个同步通道的情况下,可以快速将现有数据库内的数据同步到目标数据库,并在其后将同步期间的增量数据一并复制到目标数据库实现数据追平。目前DSGRealSync支持主流平台(HP/IBM/SUN/Comppaq/PC)上的Oracle各版本(Oracle8i – 10g)之间的数据复制。
2) 在工程上设计了环境初始化、软件调试、数据初始化、预割接测试和正式割接等5个步骤来实现数据的平稳迁移。
帐务系统的搬迁设计到大量繁琐的技术细节。为此:
l 环境初始化阶段
主要是按照旧帐务系统的配置在新帐务系统上划分PV、VG、LV、CLUSTER、配置操作系统、创建新帐务系统数据库(OPS)、配置数据库参数、创建表空间、回滚段、用户等。同时配置数据库的TNS和LISTENE、PASSWD文件等。在此期间,根据数据库以往的使用情况,适当进行优化。
l 软件调试阶段
在新旧帐务系统主机上安装DSG RealSync软件,并进行软件调试和优化配置。包括通道的划分和用户及表在不同通道中的分配,问题表的检验和新数据库的环境测试等。
l 数据初始化阶阶段
在调试好环境和软件的情况下,重新启动RealSync软件,对所有数据进行同步,包括表、索引、存储过程、触发器、序列、数据库链接、同义词等等。
l 预割接测试阶段
在完成所有对象和数据的同步及数据的追平后,对迁移到融在系统的数据进行检验,包括对象个数和状态、表记录数和内容、序列的值的大小,以及进行业务测试,确认数据一致和对象状态正确。此时,维持系统的同步状态。
l 正式割接阶段
在约定的搬迁日期,停止旧帐务系统上的业务,等待最后的数据完成复制,在此对业务停止后的新旧帐务系统进行数据检验。
在此基础上,变更新旧帐务系统主机的IP地址,测试客户端链接,完成数据迁移。
完成迁移后,继续跟踪观察,直到系统通过月底出账考验。
4.4 应用效果
本次迁移过程相当顺利,从环境准备到迁移完成(04.11-04.29),共使用3周不到的时间;迁移当日,比原计划提前3小时完成迁移工作。迁移后数据库运行正常,顺利通过月底的出账考验。同时,经过迁移的优化,消除了大量的数据库碎片并充分发挥了新设备的性能优势,新帐务系统的处理能力比旧系统提高3-4倍。
在本次系统迁移中,DSG RealSync软件表现如下特性:
1) 数据准确性高。
在迁移过程中检验以及迁移后的出账过程中检验,所有数据完全一致,没有一条记录丢失,也没有发现数据有误。
2) 不受异构平台影响
新旧帐务系统采用完全不同的存储、主机、操作系统。DSGRealSync完全不受这些异构平台的影响,同步及复制都正常。
3) 同步效率高
对于2.9TB的数据库,采用8个数据通道同步,最快的通道完成300GB的数据导出仅用1.5小时;所有通道完成源端抽取及目标端装载和创建索引所用时间为42小时。而如果使用OracleExport/Import工具来完成,完全导出数据就需要3-4天,装载完成则需要约1周时间。
4) 复制时延小,数据追平快
完成首次数据同步后,追平增量数据仅使用了1小时。
5) 对生产系统影响小
在整个迁移过程中,仅需要停业务1次,即最后进行正式迁移时需要停业务追平最后数据和进行数据校验。停业务时间约2小时。
在此之前,所有操作均在线进行。在首次数据同步过程中,占用系统CPU约10-20%;完成首次数据同步后,占用CPU少于1%。
6) 操作简单方便,流程可控
采用RealSync软件进行迁移,操作相当简单方便。无须借用其他手段,仅使用RealSync提供的脚本和配置文件即可。在整个迁移过程中,操作流程都可控、可逆,因此,迁移过程无风险。