pentaho之kettle篇---kettle基本操作
今天先来做一个简单的kettle的例子。
打开输入,选择CSV文件输入。

双击CSV文件输入图标,可以看见如下:

步骤名称:就是你这一步的名字,可以任意取,原则就是要明白,清楚这一步是做了什么操作。
文件名:是你要选取的这个.CSV结尾的文件的名称。
列分隔符:每个CSV文件都是有一定的规则的,要么是分号是分隔符,要么是逗号是分隔符等等。
包含列头行:这个是针对你的这个CSV是否具有表头,如果有就勾上,否则他就把第一行的表头当成数据导入了。
这样选择一个CSV格式的文件之后就可以了,接下来点击一下获取字段,得到如下图所示:

点击一下预览,会提示要预览的行数没输入你要预览的行数就行了。

以上就是预览的内容了。
之后点击确定就OK了。
之后再来说说输出的操作。
这次输出的操作我们选择的是MySQL数据库,首先需要文件---->新建------->数据库连接。

填写上基本的数据库信息就OK了,点击测试出现

说明你的连库信息是正确的,点击确定就可以了。这一步的连接数据库只是针对于这个装换的。对于其他转换我们需要重新制定数据库!
双击表输出:

数据库连接就是我们刚才创建的数据库连接,如果不是我们想要的,可以另外再创建一个连接。
目标数据库如果没有创建的话,我们可以先写一个名字,然后再点击SQL,就出现了一个执行创建的sql的界面:

里面有些字段的类型是可以改的,改成你需要的字段的类型。之后点击执行就行了。这一次我们再查看一下我们数据库里面的表,就有字段了。

下面我们点击Run,
输出日志如下:

步骤度量如下:

之前表里面有2823个数据,所以这一次执行成功了!
但是!!!
这里面有一个问题,我们可以再Run一下这个转换,发现又导入了2823条记录。再来看看数据库里面的数据:

纳尼,怎么是5646???
怎么解决???
这中间是需要一个过滤的操作的,基本的思想就是:ID一样的就是Update,ID不一样的就是插入就去就可以了。
这就需要另外一个输出的功能了,就是插入/更新。

在这里面设置需要过滤的条件就可以了。

至此一个transformation就可以了。
pentaho之kettle篇---kettle基本操作的更多相关文章
- pentaho专题系列之kettle篇--kettle源码编译
最近看了一些kettle的文章,都是kettle7.0以前的,已经跟不上时代了.截止笔者写这篇文章的时候,github上面的已经是7.1.0.3了,而且是发行版的,最新的快照版本已经是8.0的了.基于 ...
- ETL第一篇(Kettle Spoon) 初遇
ETL第一篇(Kettle Spoon) 初遇 ETL第二篇 调用webservice 简介 Kettle 是一款国外开源的 ETL 工具,纯 Java 编写,绿色无需安装,数据抽取高效稳定(数据迁移 ...
- iOS开发多线程篇—NSOperation基本操作
iOS开发多线程篇—NSOperation基本操作 一.并发数 (1)并发数:同时执⾏行的任务数.比如,同时开3个线程执行3个任务,并发数就是3 (2)最大并发数:同一时间最多只能执行的任务的个数. ...
- mysql基础篇 - 其他基本操作
基础篇 - 其他基本操作 其他基本操作 一.实验简介 本节实验中我们将学习并实践数据库的其他基本操作:索引.视图,导入和导出,备份和恢复等. 这些概念对于数据库管理员而言都非常重要,请 ...
- ETL工具--kettle篇(17.10.09更新)
ETL是EXTRACT(抽取).TRANSFORM(转换).LOAD(加载)的简称,实现数据从多个异构数据源加载到数据库或其他目标地址,是数据仓库建设和维护中的重要一环也是工作量较大的一块.当前知道的 ...
- kettle安装部署基本操作及实操文档
一.kettle是什么? Kettle,简称ETL(Extract-Transform-Load的缩写,即数据抽取.转换.装载的过程),是一款国外开源的ETL工具,纯Java编写,可以在Window. ...
- kettle系列-kettle管理平台部署说明
本介绍我的开源项目[kettle-manager]kettle管理平台如何获取并部署使用,该项目介绍请参看另一篇博文:http://www.cnblogs.com/majinju/p/5739820. ...
- kettle教程---kettle作业调度,根据更新时间增量更新
本文接上一篇,只写到读取日志.在平时工作当中,会遇到这种情况,而且很常见.比如:增量抽取(每隔2个小时抽取截至到上次抽取时间的记录) 本文中会用到作业,先来熟悉下作业的概念 简单地说,一个转换就是一个 ...
- KETTLE——初见KETTLE
(PS:这是很早以前在CSDN上发过的,那个账号不想用了,所以搬过来) 就在前一段时间,因为公司需要突然被老大告知要用一个ETL工具,第一次知道这么个工具,完全不知道是做什么的.大概问了一下,说是一种 ...
随机推荐
- ionic搭建与基础
ionic搭建与基础 一.环境搭建 安装 npm install -g cordova npm install -g ionic 创建 项目 ionic start MyProject blank i ...
- RabbitMQ系列教程之五:主题(Topic)
(本实例都是使用的Net的客户端,使用C#编写),说明,中文方括号[]表示名词. 在上一个教程中,我们改进了我们的日志记录系统. 没有使用只能够进行虚拟广播的[Fanout]交换机,而是使用了[D ...
- Python3 面向对象程序设计(类)
一.自定义类 1.属性与方法 格式: class classname: def __init__(self,a,b): self.a=a self.b=b def ... >一般都有一个__ ...
- file里的路径
实例话file类的对象 File file=new File("d:/mydoc/hello.txt") 文件名:fileMethod.java 相对路径:fileMethod.j ...
- 关于JAVA正则匹配空白字符的问题
今天遇到一个字符串,怎么匹配空格都不成功!!! 我把空格复制到test.properties文件 显示“\u3000” ,这是什么? 这是全角空格!!! 查了一下 \s 不支持全角 1.& ...
- Java自学手记——接口
抽象类 1.当类和对象被abstract修饰符修饰的时候,就变成抽象类或者抽象方法.抽象方法一定要在抽象类中,抽象类不能被创建对象,如果需要使用抽象类中的抽象方法,需要由子类重写抽象类中的方法,然后创 ...
- Javassist进行方法插桩
javassist官网 http://jboss-javassist.github.io/javassist/ javassist API网 http://jboss-javassist.github ...
- maven依赖jar包更新,业务jar需同步更新(业务jar依赖API)
背景: 环境出现问题,定位为依赖jar缺失,修改工程pom文件补充依赖jar. 更新要点说明: 依赖jar,更新提交 业务jar,也需更新提交:maven构建会把依赖jar引用进去,更新环境如果单独更 ...
- bootstrap-table 怎么自定义搜索按钮实现点击按钮进行查询
bootstrap-table自带搜索框感觉有点丑,我们可以把搜索功能单独拉出来放到页面的某一个位置. 首先我们看一下官方演示: 如果你感觉集成的检索框不太好看,而且我们也不想让搜索框和列表放到一块去 ...
- 【JAVASCRIPT】React学习- 与 flux 结合使用
摘要 react 学习包括几个部分: 文本渲染 JSX 语法 组件化思想 数据流 与flux 结合使用