最近在通过KETTLE迁移大量数据到数据库的时候,当抽取大数据量表数据时,发现执行报错,查看KETTLE执行过程的日志记录,主要错误信息如下:
java.lang.OutOfMemoryError: Java heap space kettle
一、错误信息
java.lang.OutOfMemoryError: Java heap space kettle
二、处理方法
1、在KETTLE安装目录中找到spoon.bat程序,用记事本等程序打开,找到
if "%PENTAHO_DI_JAVA_OPTIONS%"=="" set PENTAHO_DI_JAVA_OPTIONS="-Xmx512m" "-XX:MaxPermSize=256m"
部分,将其调整(一般调整为256的倍数)为:
if "%PENTAHO_DI_JAVA_OPTIONS%"=="" set PENTAHO_DI_JAVA_OPTIONS="-Xmx1024m" "-XX:MaxPermSize=2048m"
然后保存。
2、重新执行kettle程序,不再报内存溢出错误。
三、小结
使用kettle时,如果遇到数据量大、大对象时很容易出现内存溢出现象,此时需要根据实际的硬件配置对预设的java堆栈大小进行调整
KETTLE在执行中出现 java.lang.OutOfMemoryError: Java heap space 内存溢出错误
最新推荐文章于 2024-03-13 11:31:45 发布