从一数据库selecet 70W笔数据写到本地数据库,总是在程序运行30分钟后才插入第一笔。

解决方案 »

  1.   

    怎么导入本地的?第一笔?
    可以用exp/imp或expdp/impdp来导
      

  2.   

    如果需要实时的话,可选择使用光纤;如果对实时性要求不是很严的话,可以使用exp/imp方式,对每天新增的数据采用增量追加方式,或采用日志的方式追加数据。程序运行30分钟后才插入第一笔,要分析原因,是不是程序没有优化(有时网络安全需要消耗大量的时间资源)?还是线路的带宽不够?在数据库中采用存贮过程、触发器等执行效率要比程序高。
      

  3.   

    如果你在本地已经有表的话那你可以建立一个DBLINK来进行插入。
    如果你在本地没有表结构的话那你只能用EXP/IMP来进行数据导入了。
      

  4.   

    查询等待30分钟后才插入数据
    -- 把数据拿出来执行了下,发现是查询语句的问题,优化了下,2分钟能查出数据开始insert
    现在碰到了另一个疑惑的问题描述:
    还是从远程DB下载数据,Cursor下20W笔数据,查询等待2分钟就开始逐条向本地表写入数据,17分钟把数据写入到本地表。但我把过程里面的代码拿出来做成declare ....begin ...end;这样,insert速度就非常快,每次都是1分钟左右下载完。同样的代码,一个是存储过程,一个是匿名过程,速度相关这么大,有高手能帮解释下这其中的玄机么,谢谢。