我使用dblink推送数据到数据仓库,数据条数大约有30万条记录,执行很久,始终无法完成这个操作,并且观察数据仓库的undo空间的大小根本没有改变。这个问题困扰很久,希望有高人可以指点一下。
  多说一句,执行计划的cost也在合理范围之内。临时表空间没有爆满。
 谢谢各位!

解决方案 »

  1.   

    远程INSERT INTO 的方式么??可以先试试少的数据量是否能插进去,是否报错,等等,还有你插入的数据是不是一个结果集
      

  2.   

    是INSERT INTO  table_name
    select 语句  
    这种形式。
    很少的数据是可以插入的
      

  3.   

    那你采用分批汇入嘛,如果一次全部汇入,dblink万一其中失效了,就没成功
      

  4.   

    一次传送大量的数据,使用DBLINK肯定较慢。分批是不错的主意。
    试试换到数据仓库端进主动获取。
    是一次性任务,还是周期性任务?如果是周期任务
    可在数据仓库端建立一个物化视图来获取。
    物化视图还可以使用增量刷新来减少传输的数据量。
      

  5.   

    你可以看一下DBLINK的那个数据库的索引是否建好。
      

  6.   

    就是你的DBLINK数据库的索引。
      

  7.   

    可能是sql的效能很差造成的,可以先执行查询看看要多久。
      

  8.   

    挑战极限 Oracle数据库一秒导百万数据
    http://www.itpub.net/viewthread.php?tid=1348601