有几个ORALCE数据库,分布在不同的地方,我想每天晚上把这个数据合并的一个ORACLE数据库上.

解决方案 »

  1.   

    数据库的分布情况是怎样的,使用dblink和job来做
      

  2.   

    谢谢大家的帮助,数据库的结构都是一样,分布在不同的公司.我想每天晚上把这些数据合并到一个ORACLE数据库上. 
     
     
      

  3.   

    2各种复制方案的分析比较
     数据批量导入
     传统同步软件方案 
     采用硬件存储快照的方式
     采用Oracle实例化视图进行数据同步
     利用Oracle复制基础的综合复制方案
    2.1数据批量导入
     原理:每天晚上将数据exp出来,在imp倒入
     优点:原理简单、容易理解,成本低。写成脚本后,只要配合协调,操作也很简单。对小数据量很实用。
     缺点:对大数据量的数据库,每天晚上全量同步时间太长,不可实施。 
    2.2传统同步软件方案
     原理:从日志文件读取数据库变更信息,进行远程数据库更新。目前shareplex、dsg、streams都采用这种方案。
     优点:对原来应用对数据库的插入、更新、修改等操作的性能影响较小。(目前大型数据库系统大量采用磁盘阵列,都采用磁盘写cache,写数据的性能不是瓶颈。)
     缺点:
     无法从根本上保证数据的一致性,漏读日志和目标端的修改都会导致数据不一致。
     初始同步需要停止生产系统的数据修改动作,实际操作非常困难。
     无法实现双向同步,目标端修改无法反馈到源数据库。
     对所有的日志都需要读取分析,对主机数据访问量很大。
     因其本身的缺陷,导致需要大量复杂的机制和操作来保证数据的一致,实施成本大,而且数据完整性最终还是不能完全保证,代价高,成功率比较低。
     需要第三方软件支持。
    1.1采用硬件存储快照的方式
     原理:从存储硬件上将生产系统数据定期进行快照同步。
     优点:能够完全保证磁盘数据的一致,性能上对生产系统的影响很小。(而不是最小,因为对一些临时数据也会进行同步,这些是不应该有的影响)
     缺点:
     同步方式不灵活,将生产系统上所有的数据全部同步。(经过长时间运行和维护的生产系统往往大量的临时表和大量的垃圾数据,这些实际上是不需要同步的。)
     耗费大量的存储设备,成本巨大。
     对存储在操作系统cache中的数据无法同步,实时同步后数据库能够使用的概率为2/3,有1/3的可能不能使用。(一般晚上同步会好些)
     对数据库的协调难以处理,可能造成同步后的数据库部分数据不能使用。(磁盘阵列数据写入往往与操作系统顺序不完全一致)。
     需要第三方硬件支持。
    1.2 Oracle高级复制简介
    高级复制,也称为对称复制,即可支持基于整个表的复制也可支持基于部分表的复制的两种复制方案。这两种复制方案主要是通过Oracle的两种复制机制来完成的,即多主复制和可更新快照复制,同时还可以将这两种复制机制结合起来以满足不断变化的业务需求。
    Oracle数据复制是实现分布式数据环境的一种技术,通过在不同的物理站点拷贝数据来建立分布式数据环境。它与分布式数据库不同,在分布式数据库中,虽然每个数据对象也对所有的站点可用,但是特定的数据对象只存在于一个特定的站点中。而数据复制实现所有的站点都有相同数据对象的可用拷贝。
     Oracle提供了多种复杂的复制方案。
     Oracle实体化视图进行数据同步。
     Oracle异步复制方案。
     Oracle同步复制方案。
     Oracle流方式复制。
     优点
     与oracle配合很好,方式多样灵活,实例化视图和同步复制方式能够保证数据准确。
     缺点
     提供了数据复制的基础,但没有形成实用的产品。
    1.2.1采用Oracle实体化视图进行数据同步
     优点:
     方式多样:有Read-Only, Updatable, and Writeable Materialized Views三种方式。
     可以根据条件复制部分数据。
     可以关联几个表,形成综合数据复制。
     通过编程,可以灵活根据需要进行刷新(数据同步动作)。
     对大量的表形成同步组,方便管理。
     缺点:
     16次故障后自动停止,维护难度大。
     随着时间的增加,对生产机性能的影响会逐步增大。
     功能单一,不能自动同步新建的表,缺少同步的核对机制,对ddl语句不能同步。
    1.2.2 Oracle异步复制方案
     异步进行双向复制。
     通过延迟事务队列进行处理。
     需要数据冲突解决方案。
     需要对队列出错情况进行维护与处理。
     不能完全实时保证数据的完全一致。
    1.2.3 Oracle同步复制方案
     能够保证数据完全一致
     同步各方可以同时进行业务处理
     需要保证网络良好,否则双方都不能修改数据,或导致性能严重下降。
     在一方发生灾难时,只需要解除同步关系,在很短时间就可以使用。数据查询不会间断。
    1.2.4 Oracle流方式复制
     oracle仿照传统复制软件开发的方式。
     提高了与oracle的协调性,功能和性能有所加强。
     同样的缺点:
     初始同步需要停机。
     对主机数据量很大(分析所有日志)。
     不能保证数据完全一致。
    1.2.5 利用Oracle复制基础的综合复制方案
    采用oracle的实体化视图和异步复制技术相结合,合理建立异常处理机制和管理平台。