异地容灾系统和数据仓库中数据同步的设计软件的功能模型
(
1)初始同步模块
该模块主要是在表进行初始同步时使用的;它能够根据实际需要生成物化视图
及其索引的创建语句,并完成表的初始同步。如果没有特别的要求,则调用普通初
始同步子模块进行目的端表的初始同步,创建语句将从源数据库获取;如果有特别
的要求,如按指定的分区初始同步或者按照一定的条件进行初始同步,则会根据这
些要求调用分区初始同步或条件初始同步子模块生成特定的创建语句来进行目的端
表的初始同步。该模块能够批量自动进行表的初始同步,从而大大减少了人工干
预,
保证了初始同步的准确性和自动化。
(
2)调度模块
由于源端的数据在时刻变化着,在初始同步模块的基础上需要有一个调度模块
将这些不断变化的数据同步到目的端,使目的端与源端始终保持数据一致性。该模
块中的增量调度子模块是在表的增量同步过程中使用的,并能根据刷新间隔要求对
目的端表进行及时准确的刷新;完全刷新调度子模块是在对表进行重新同步时使
用;特殊要求调度模块是给需要做特殊同步的表使用的,如需要暂时停止同步、在
每天的固定时间不同步等。
(
3)监控模块
该模块是为了及时发现同步中断和同步效率低的表。由于其告警方式为短信告
警,可以实现任何时间、任何地点的告警,保证了能在第一时间发现同步的中断以
及同步效率低下的情况,实现了异常处理的及时性。
(
4)错误处理模块
该模块主要是处理同步刷新过程中出现的各种错误。通过对捕获的错误进行相
应的处理,从而保证同步能够稳定、高效地运行。另外,由于 Oracle 高级复制技
术自身存在一定的缺陷,需要使用该模块来捕获造成数据不准的源头,并进行相应
的处理。
5)优化模块
该模块主要是处理同步过程中出现的性能瓶颈,保证能够及时发现性能问题并
采取相应的优化手段来加以维护,包括源端优化和目的端优化。