原表有8000万数据,目标表没有索引,抽数速度很低,前期2300条/秒,后期速度越来越低,入库速度也很低。
如下是数据库以及kettle所在windows系统的一些信息:
1、oracle是安装在windows server操作系统中的,数据库版本为11.2,系统内存为16G,数据库SGA如下:
2、kellte安装在windows7操作系统中,kettle版本为8.2,系统内存为8G,启动内存分配如下:
set PENTAHO_DI_JAVA_OPTIONS="-Xms1024m" "-Xmx2048m" "-XX:MaxPermSize=256m"
目前实施过的方法有:
1. kettle最小内存从1G增加到2G,最大内存从2G增加到3G
2. 目标表从1000条一提交改为50000条一提交
3. 转换设置-->杂项-->记录集合里的记录数 从10000上调为11000
只有第3种方法,能使效率提高20%左右,但也是杯水车薪。
希望大神能指点下,调整什么地方可以提高效率,或者还需要我提供什么信息。