每月都要抽取5亿条记录,抽取的时间很长,谁有这个经验能分享吗?

解决方案 »

  1.   

    海量!
    我认为主要还是要提高硬件性能。索引、存储过程提升性能是有限的;多CPU并行查询,扩大内存,增大磁盘吞吐率,这样的提升就很明显。
      

  2.   

    大批量的数据导入,硬件性能是很重要的,最好是在服务空闲的时候进行,而且要设好COMMIT的间隔,不能一次提交500000000条记录
      

  3.   

    我是从业务服务器导入备份机,然后还要经过转换,导入数据仓库。数据库都是oracle。
    不知到有何建议?
      

  4.   

    使用表分区技术,建立分区索引!可以相当程度提高查询速度!
        partition
        tablespace
      

  5.   

    对抽取的原表:
    使用表分区技术,建立分区索引!可以相当程度提高查询速度!
        partition
        tablespace
      

  6.   

    数据抽取,单纯从技术角度,可以考虑大表合理建立索引和分区,其中数据转换可能用到中间表,把一些常用数据从大表中分离存入中间表,有些耗时操作可能在系统空闲时做。另外注意系统的回滚段、临时表空间、以及init.ora中参数sort_area_size设置要大一点,注意Oracle数据库性能优化以及SQL语句优化,速度可以提高很多