最近有个业务数据变更的需求,要将1个已生成的500w记录写回到另一个表里面。 这里的需求比较简单,可以通过pt-archiver来做,也通过kettle之类工具来做。...kettle的话比较重,可支持的数据整型功能也更强大。...我这里是用kettle来搞的(复习下kettle,弄个demo,指不定后面有更复杂的业数据需求要找DBA介入) 配置JDBC连接的时候,建议加上字符集设定等几个参数: defaultFetchSize...文件的时候,建议使用相对路径: 写法 ${Internal.Job.Filename.Directory}/xxxx.ktr kettle自定义JVM内存大小: vim spoon.sh 找到下面.../demo /opt/kettle/data-integration/kitchen.sh -file /opt/kettle/demo/test.kjb >> .
1.使用kettle抽取CSV文件 通过Kettle工具抽取CSV文件csv_extract.csv中的数据并保存至数据库extract的数据表csv中。...(1)、创建一个转换 通过使用Kettle工具,创建一个转换csv_extract,并添加“CSV文件输入”控件、“表输出”控件以及Hop跳连接线,具体如图所示。...单击【浏览】按钮,选择要抽取的文件csv_extract.csv 单击【获取字段】按钮,Kettle自动检索CSV文件,并对文件中的字段类型、格式、长度、精度等属性进行分析。...2、json文件的抽取 通过Kettle工具抽取JSON文件json_extract.json中的数据并保存至数据库extract中的数据表json中。...(1)通过使用Kettle工具,创建一个转换json_extract,并添加“JSON input”控件、“表输出”控件以及Hop跳连接线,具体如图所示。
2.1 Kettle简介 2.1.1 Kettle概述 Kettle是国外免费的开源轻量级ETL工具,是基于Java语言开发的,可以在Windows.Linux,UNIX系统上运行,且绿色不需安装...包括读取文件,过滤输出行,数据清洗或将数据加载到数据库中等步骤,转换中的步骤是通过跳连接的。...下图为Kettle转换示例: 以上转换示例是实现从数据库中读取数据,并把数据写到文本文件中,该转换包含了步骤,跳,注释以及数据行,具体介绍如下; 1.步骤:转换中的基本组成部分,也可称之为控件,以图标的方式呈现...Kettle中字段的数据类型一共有10种,具体见下图: 2.3.2 作业 一个作业包含一个或多个作业项,且都是按照某种顺序进行执行的。...3.多路径和回溯:Kettle使用一种回溯算法执行作业里的所有作业项,且作业项的执行结果(真/假)决定执行的路径。
Carte.bat: 启动web服务,用于 Kettle 的远程运行或集群运行。...Encr.bat: 密码加密 转换和作业: Kettle 的 Spoon 设计器用来设计转换(Transformation)和 作业(Job)。 ...桌面上可以查看转换的结果文件: ? 6.预览 比如上面的例子,如果只是想看一下随机数是否正确正常,不想再另外配一个文本输出来查看结果,可以删除输出节点,使用预览: ? ...这里以常用的记录过滤与空操作举例(空操作视为垃圾箱,用于丢弃不要的过滤结果等) 这里对结果进行不同方向的处理:过滤为True的放入文本文件,为False的丢弃: ? ...配置自定义常量数据:分别在元数据中配置字段定义信息,在数据中写入测试数据: ? 配置记录集: ? 预览可查看结果: ?
♂️简介:Kettle 是一款国外开源的 ETL 工具,纯 Java 编写,绿色无需安装,数据抽取高效稳定(数据迁移工具)。...Kettle 中有两种脚本文件,transformation 和 job,transformation 完成针对数据的基础转换,job 则完成整个工作流的控制...(更多介绍自行搜索) ?...Kettle中文网:https://www.kettle.net.cn/ ⏬下载地址:https://jaist.dl.sourceforge.net/project/pentaho/Pentaho 9.1...启动方式:解压到本地,mac启动方式 /路径/pdi-ce-9.1.0.0-324/data-integration/spoon.sh ⚠️MySql数据抽取:如果使用MySql数据库下载jar https...4:双击“插入/更新”->选择数据库链接->选择表->“用来查询的关键字”->选择类似UK的字段(据此判断插入or更新数据)->“更新字段”(表字段列:要抽取到的目标表字段;流字段列:被抽取的表字段,
Java调用Kettle工具方法 这里需要的主要依赖包下面已列出,其他的运行时缺什么补什么就行: pentaho-kettle <artifactId...+ "\\" + ktrName); log.debug("传入KTR文件所需要的参数值"); if (null !...任务"); log.debug("创建Job的源数据对象"); JobMeta jobMeta = new JobMeta(KETTLE_KET_DIR + "\\" + kjbName, null);...执行结束"); } } } 对于日志监听器需要注意的地方,日志监听器不针对某一个执行过程,如果并发执行Kettle时,每一个执行过程都会输出到所有的日志监听器中。...如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
Kettle是一款国外开源的ETL工具,纯Java编写,可以在Window、Linux、Unix上运行,绿色无需安装,数据抽取高效稳定。...Kettle中有两种脚本文件,transformation和job,transformation完成针对数据的基础转换,job则完成整个工作流的控制。 为什么使用kettle?...答案是我们可以用一下Kettle-_-! 使用kettle需要了解的知识?...ž1 Kettle使用 Kettle提供了资源库方式的方式来整合所有的工作,但是因为资源库移植不方便,所以我们选择没有资源库; 1)创建一个新的transformation,点击 保存到本地路径,例如保存到...流程处于等待状态 Zip file 压缩文件为ZIP包 怎么使用kettle?
kettle工具使用简明手册 运行启动脚本spoon.bat快捷方式 如果正确启动,则出现的主界面应该是下面这样的。
本文主要介绍如何通过kettle写入到hdfs中,同时提供一个简单的demo。 好,下面上货。 1、新建一个转换,如下图: ?...Permission denied: user=wuxueyou, access=WRITE, inode="/user/root/etl":root:supergroup:drwxr-xr-x 这个异常的主要原因是当前用户没有对应的...hdfs文件夹的写权限,导致异常。...解决的方案有两种。一种是使用acls,一种是使用sentry。我们这里只介绍使用acls的方式。...主要参考: https://blog.csdn.net/wild46cat/article/details/69664376 4、进入hadoop中,切换到hdfs账户。
所以了解并掌握一种ETL工具的使用,必不可少,这里我们要学习的ETL工具就是Kettle!...2、Kettle简介 Kettle是一款国外开源的ETL工具,纯Java编写,可以在Window、Linux、Unix上运行,绿色无需安装,数据抽取高效稳定。...3、kettle的核心组件 4、Kettle的概念模型 Kettle的执行分为两个层次:Job(作业)和Transformation(转换)。.../ 2、Kettle是纯JAVA编程的开源软件,本地环境配置JDK1.6以上即可运行,解压后直接使用无需安装。...3、kettle无法创建xml相关步骤,有相关步骤的.ktr文件也打不开 可能是因为路径中包含中文,将整个安装包移动到桌面或其他没有中文字符的路径下,重启Spoon.bat即可。
Kettle工具使用及总结 一、kettle安装及报错: kettle主要用于数据清洗,即常见ETL工具,拥有图形化界面且免费的优点。...操作完成之后反复尝试还是报相同的错,识别不到,则说明你的kettle版本与你的驱动版本不容,无法识别。...原因:你导入的jar包被kettle识别,但是它与你本地MySQL版本不容 解决方法:换连接驱动的jar包(因为驱动版本是跟数据库版本一致的,间接说明你的kettle与MySQL版本不容) 连接SQL...(3)在转换1中新建一个转换;完成输入csv文件,字段切分,输出到表的操作 (这里,观察左菜单栏就会发现它的数据清洗功能) ①给转换建立数据库连接; ②进行csv文件输入: CSV输入设置 拆分字段...”选择需要导入的Excel表格,点击“增加”添加至选中文件列表中; (3)单击“工作表”,在工作表页面选择“获取工作表名称”,选择相应的“可用项目”添加至“你的选择”中; (4)单击“字段”,在字段页面点击
,如d_p20161201、d_p20161202等,并使用Kettle连接这些数据库做数据清洗和ETL工作。...由于数据库是用脚本每天动态生成的,Kettle如何连接动态分库呢? 二、解决方案 1. 建立数据库连接,在数据库名称中引入变量。此时是无法连接到数据库的。 2....建立转换,用JavaScript步骤设置上一步引用的变量,作为数据库名称中的日期部分。 3. 建立作业,在开始后首先调用上一步建立的转换,后续的转换或作业即可正常使用第1步建立的数据库连接。...使用JavaScript步骤给变量赋值,这种在Kettle中编程的方式,能够实现非常复杂的应用逻辑。 2. 数据库连接可以在运行时动态引用变量,这给实现统一的ETL调度提供了一种可能性。...先设置变量并赋值,然后在后面的步骤或作业项中使用变量,这是一种通用的方法。通过在Kettle中进行程序设计,大大增强了Kettle的功能。
Kettle使用_29 转换里使用参数 大家好,我是架构君,一个会写代码吟诗的架构师。...今天说一说Kettle使用_29 转换里使用参数,希望能够帮助大家进步!!! ...Kettle使用_29 转换里使用参数 需求:通过Kettle对转换进行参数传递 解决方法:通过环境变量、命名参数、获取系统信息、获取变量等组件对转换进行传值。...Previous work: 这里通过参数组件直接结合文本文件输出的方式展示,实际使用时结合自己的转换即可。 方法一 环境变量 Step1:新建个转换。...Step4:GUI调用 完整流程示例见下: 今天文章到此就结束了,感谢您的阅读,Java架构师必看祝您升职加薪,年年好运。
kettle工具使用简明手册 运行启动脚本spoon.bat快捷方式 如果正确启动,则出现的主界面应该是下面这样的。...如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
kettle简介 Kettle是一款免费开源的基于Java的企业级ETL工具,功能强大简单易用,无可抗拒。...kettle有两个比较重要且常用的脚本文件:1)转换(Transformation)和作业(Job),其中转换是对数据处理的容器,包含对数据的各种处理,有多个步骤(Step)组成;作业相对于转换可以配置出更多高级的操作...,可以将多个转换组合成一块进行数据处理 kettle的使用方式 1.图形化界面工具(spoon) 上图截取了数据处理的转换脚本,可以看出基于图形化界面操作kettle进行数据处理,只需按照数据处理的流程配置相应的步骤即可...,简单易用,但不适合在程序中集成 2.依赖jar包的方式 应用程序集成kettle更多采用的是maven依赖jar包的方式,在jar包依赖之后可以通过两种方式对数据进行处理: 1)通过调用kettle脚本的方式...的api:通过kettle的api可以模拟步骤(step),脱离图形化界面,下面通过kettle的api模拟了一个表输入步骤,但是通过kettle的api模型步骤,适用常用的步骤,很多步骤在api中是没有的
大家好,又见面了,我是你们的朋友全栈君。 1: 关于ID生成器。 如果一个转化流程里的两个分支分别使用了Generate ID组件, 请注意“计数器名称”,这个很重要。...1) 如果改名字不同,则最总汇总结果中的id是会分别生成的,也就是说会出现重复的id。 2) 如果名字相同,最终结果中id是不会重复的。...2:关于序列生成器 首先抱歉,上面所说的“Generate ID“组件,其实指的就是序列生成器。 kettle5.3中包含两个序列生成器组件,一个是”增加序列“,一个是”根据字段值来改变序列“。...使用数据库来生成序列。 这种用法是需要连接数据库,如oracle,并且指定一个sequence名。其原理是利用数据库本身的功能来辅助生成序列。 b....2:关于分析查询组件(analytic query) 这个组件的作用相当奇特,它可以在一个输入流中根据当前数据行往上回溯或者往下预查询一个数据行(一条记录)中的某些字段的值,回溯或者预查询的位置能以参数的方式指定
这样就算你可以入门了,我相信在不断的探索中你会有更多的心得的。...,这个不太适用与远程服务器安装windows客户端,或者一些学习的同学可以在本地windows设置调度任务也可以,在linux上安装部署kettle并调度是一个比较合适的方法。...// 存放执行kettle产生的日志文件 将从windows上配置好的.ktr和.kjb程序分别放在transition目录和job目录下 (或linux下编写后直接保存到该目录下),注意:job中的转换对应的目录需要做相应修改...ceshi.sh # systemctl restart crond # systemctl enable crond 注意: 在linux中,如果是通过图形界面执行程序的话,点击那个绿色的三角即可...因此,在linux中不推荐使用kettle里面的自动执行,使用操作系统的定时执行要稳定的多。 Windows下使用定时任务计划,linux下使用crontab。
大家好,又见面了,我是你们的朋友全栈君。.../ 请选择我们当前工作的版本7.0 可以使用如下命名直接下载 wget -c –output-document=pdi-ce-7.0.0.0-25.zip https://nchc.dl.sourceforge.net.../project/pentaho/Data%20Integration/7.0/pdi-ce-7.0.0.0-25.zip 3,使用unzip命令对这个压缩包进行解压 unzip pdi-ce-7.0.0.0...test/SechuldUpdate.kjb log=timeLogUpdate.log (如果是job需要定时,如果我们需要执行的是一个job,则可跳过下列步骤,直接在job里设置定时参数即可) job...和ktr的路径变量问题需要注意,也可以直接写绝对路径 7,配置定时任务 7.1,如果是转换文件需要定时 可以按照如下方法操作,创建一个文件 test.sh 在这个文件里写入如下语句 export JAVA_HOME
大家好,又见面了,我是你们的朋友全栈君。 kettle中实现动态SQL查询 在ETL项目中,通常有根据运行时输入参数去执行一些SQL语句,如查询数据。...本文通过kettle中的表输入(“table input”)步骤来说明动态查询、参数查询。示例代码使用内存数据库(H2),下载就可以直接运行,通过示例学习更轻松。...示例中,首先使用生成行步骤(“Generdate Rows”)生成一行带有两个字段的记录,分别按顺序代替表输入SQL语句中的占位符。...SELECT * FROM testWHERE id IN (1,2,3) 为了解决这些场景的问题,需要使用kettle的变量动态构造查询文本,下面详细说明。...SQL查询中使用kettle变量 表输入步骤支持替换查询中的变量或参数,假设有一系列结构完全相关的表,分别是: mammals, birds, insects(动物、鸟、昆虫),可以使用kettle
Oracle 使用kettle导入excle到oracle 一、 下载并打开Spoon.bat 下载链接 二、创建数据库链接 三、创建excel输入转换 四、创建一个oracle的表输入 五、编辑
领取专属 10元无门槛券
手把手带您无忧上云