让kettle的执行速度飞起来

在前一篇文章xms/xmx/xss在kette中的调优设置中,我对kettle进行了一次优化,这次我们再一次进行优化,这次效果非常明显,这次优化有两部分:一、修改jvm添加xmn,二、修改日志输出级别

在Java TM Performance一书中,有这样一段话:

-Xmn is convenient to size both the initial and maximum size of the young generation
space. It is important to note that if-Xms and -Xmx are not set to the same value and
-Xmn is used, a growth or contraction in the Java heap size will not adjust the size of
the young generation space. The size of the young generation space will remain constant with any growth or contraction of the Java heap size. Therefore, -Xmn should
be used only when -Xms and -Xmx are set to the same value.

好了,看看我的修改结果

# ******************************************************************
# ** Set java runtime options                                     **
# ** Change 512m to higher values in case you run out of memory   **
# ** or set the PENTAHO_DI_JAVA_OPTIONS environment variable      **
# ** (JAVAMAXMEM is there for compatibility reasons)              **
# ******************************************************************

if [ -z "$JAVAMAXMEM" ]; then
  JAVAMAXMEM="16384"
fi

if [ -z "$PENTAHO_DI_JAVA_OPTIONS" ]; then
    PENTAHO_DI_JAVA_OPTIONS="-Xms${JAVAMAXMEM}m -Xmx${JAVAMAXMEM}m -Xmn6144m -Xss1024m"
fi

xmx为物理内存的1/4,xmn为xmx为3/8

在用kitchen.sh调用*.job文件时,在调用命令后面添加

-level:Error

在默认的情况下,kettle输出的是基本日志,如果访问十几万的数据库,那基本日志的输出也会达到5、6百兆,这样严重影响了执行效率,所以修改kettle的日志级别为error级,只输出错误日志即可。

以上优化完成后,遍历十几万数据库进行数据统计,只需要2小时55分钟,爽啊,快吧,如果硬件足够好,那还可以再提高不少呢!

时间: 2024-07-29 08:15:31

让kettle的执行速度飞起来的相关文章

Spring Boot 2.X整合Spring-cache,让你的网站速度飞起来

计算机领域有人说过一句名言:“计算机科学领域的任何问题都可以通过增加一个中间层来解决”,今天我们就用Spring-cache给网站添加一层缓存,让你的网站速度飞起来. 本文目录 一.Spring Cache介绍二.缓存注解介绍三.Spring Boot+Cache实战1.pom.xml引入jar包2.启动类添加@EnableCaching注解3.配置数据库和redis连接4.配置CacheManager5.使用缓存注解6.查看缓存效果7.注意事项 一.Spring Cache介绍 Spring

【知识点整理】Oracle中NOLOGGING、APPEND、ARCHIVE和PARALLEL下,REDO、UNDO和执行速度的比较

[知识点整理]Oracle中NOLOGGING.APPEND.ARCHIVE和PARALLEL下,REDO.UNDO和执行速度的比较 1  BLOG文档结构图 2  前言部分 2.1  导读和注意事项 各位技术爱好者,看完本文后,你可以掌握如下的技能,也可以学到一些其它你所不知道的知识,~O(∩_∩)O~: ① 系统和会话级别的REDO和UNDO量的查询 ② NOLOGGING.APPEND.ARCHIVE和PARALLEL下,REDO.UNDO和执行速度的比较(重点)   Tips: ① 本文

php array_shift与array_pop执行速度差距为啥这么大

闲话不说,上问题: 一个很大的php数组(1w+),使用array_shfit跟array_pop取数组元素时,性能差距特别大,array_shift慢的无法忍受,而array_pop就很快了. 先不说答案,看段代码: $arr = array(     0=>123,     3=>132,     2=>987, ); array_shift($arr); //array_pop($arr); var_dump($arr); 输出会有什么不同呢, array_shift后,输出为:

JavaScript代码优化(下载时间和执行速度优化)

JavaScript代码的速度被分成两部分:下载时间和执行速度. 下载时间 Web浏览器下载的是js源码,因此所有长变量名和注释都回包含在内.这个因素会增加下载时间.1160是一个TCP-IP包中的字节数.最好能将每个javascript文件都保持在1160字节以下以获得最优的下载时间.    由于这个原因,要删除注释.删除制表符和空格.删除所有的换行.将长变量名缩短. 遵循这4条比较困难.因此用外部程序(ECMAScript Cruncher)来帮助我们. 要运行ESC,必使用Windows系

优化SQL的执行速度

在项目开发中,页面的反应速度是非常重要的,改善页面反应速度的方法有很多. 但一般的问题多数是出现在数据库访问的SQL上面. 比如:重复多次访问数据库,SQL速度很低等. 重复多次访问数据库需要修改逻辑来减少数据库的访问.而SQL的执行速度可以通过仔细调试解决. 下面是一些SQL的性能调试方法.整理于网络内容. 1. IN和EXISTS --1.慢   SELECT  name   FROM    Personnel   WHERE   birthday IN (SELECT  birthday 

Windows下Kettle定时任务执行并发送错误信息邮件

Windows下Kettle定时任务执行并发送错误信息邮件 1.首先安装JDK 2.配置JDK环境 3.下载并解压PDI(kettle) 目前我用的是版本V7的,可以直接百度搜索下载社区版,企业版收费,社区版免费 下载地址:https://sourceforge.net/projects/pentaho/files/Data%20Integration/ 4.打开解压文件夹kettle找到spoon.bat,双击打开 5.新建作业 点击左上角文件=>新建=>作业 如下图: 6.然后开始建立作业

string和stringbuffer的执行速度

如果说直接比较两者的执行速度,是不客观的,它需要在特定的情况下才能做出优劣选择: 一. 1 String str1="abc"; 2 String str2="de"; 3 String str=str1+str2 StringBuilder stringBuilder=new StringBuilder().append("abc").append("de"); 此种情况,stringbuffer更快 二. String s

Kettle定时执行(ETL工具)【转】

1,Kettle跨平台使用.    例如:在AIX下(AIX是IBM商用UNIX操作系统,此处在LINUX/UNIX同样适用),运行Kettle的相关步骤如下:    1)进入到Kettle部署的路径    2)执行 chmod *.sh,将所有shell文件添加可执行权限    3)在Kettle路径下,如果要执行transformation,就运行./pan.sh -file=?.ktr -debug=debug -log=log.log    其中.-file说明你要运行的transfor

linux上Kettle定时执行(转换的单步执行,job的单步执行,环境变量,kettle定时功能,效率问题等)转自(http://blog.csdn.net/feng19821209/article/details/5800960)

1,Kettle跨平台使用.    例如:在AIX下(AIX是IBM商用UNIX操作系统,此处在LINUX/UNIX同样适用),运行Kettle的相关步骤如下:    1)进入到Kettle部署的路径    2)执行 chmod *.sh,将所有shell文件添加可执行权限    3)在Kettle路径下,如果要执行transformation,就运行./pan.sh -file=?.ktr -debug=debug -log=log.log    其中.-file说明你要运行的transfor