今天先来做一个简单的kettle的例子。

打开输入,选择CSV文件输入。

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

步骤名称:就是你这一步的名字,可以任意取,原则就是要明白,清楚这一步是做了什么操作。

文件名:是你要选取的这个.CSV结尾的文件的名称。

列分隔符:每个CSV文件都是有一定的规则的,要么是分号是分隔符,要么是逗号是分隔符等等。

包含列头行:这个是针对你的这个CSV是否具有表头,如果有就勾上,否则他就把第一行的表头当成数据导入了。

这样选择一个CSV格式的文件之后就可以了,接下来点击一下获取字段,得到如下图所示:

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

以上就是预览的内容了。

之后点击确定就OK了。

之后再来说说输出的操作。

这次输出的操作我们选择的是MySQL数据库,首先需要文件---->新建------->数据库连接。

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

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

双击表输出:

数据库连接就是我们刚才创建的数据库连接,如果不是我们想要的,可以另外再创建一个连接。

目标数据库如果没有创建的话,我们可以先写一个名字,然后再点击SQL,就出现了一个执行创建的sql的界面:

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

下面我们点击Run,

输出日志如下:

步骤度量如下:

之前表里面有2823个数据,所以这一次执行成功了!

但是!!!

这里面有一个问题,我们可以再Run一下这个转换,发现又导入了2823条记录。再来看看数据库里面的数据:

纳尼,怎么是5646???

怎么解决???

这中间是需要一个过滤的操作的,基本的思想就是:ID一样的就是Update,ID不一样的就是插入就去就可以了。

这就需要另外一个输出的功能了,就是插入/更新。

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

至此一个transformation就可以了。

pentaho之kettle篇---kettle基本操作的更多相关文章

  1. pentaho专题系列之kettle篇--kettle源码编译

    最近看了一些kettle的文章,都是kettle7.0以前的,已经跟不上时代了.截止笔者写这篇文章的时候,github上面的已经是7.1.0.3了,而且是发行版的,最新的快照版本已经是8.0的了.基于 ...

  2. ETL第一篇(Kettle Spoon) 初遇

    ETL第一篇(Kettle Spoon) 初遇 ETL第二篇 调用webservice 简介 Kettle 是一款国外开源的 ETL 工具,纯 Java 编写,绿色无需安装,数据抽取高效稳定(数据迁移 ...

  3. iOS开发多线程篇—NSOperation基本操作

    iOS开发多线程篇—NSOperation基本操作 一.并发数 (1)并发数:同时执⾏行的任务数.比如,同时开3个线程执行3个任务,并发数就是3 (2)最大并发数:同一时间最多只能执行的任务的个数. ...

  4. mysql基础篇 - 其他基本操作

    基础篇 - 其他基本操作         其他基本操作 一.实验简介 本节实验中我们将学习并实践数据库的其他基本操作:索引.视图,导入和导出,备份和恢复等. 这些概念对于数据库管理员而言都非常重要,请 ...

  5. ETL工具--kettle篇(17.10.09更新)

    ETL是EXTRACT(抽取).TRANSFORM(转换).LOAD(加载)的简称,实现数据从多个异构数据源加载到数据库或其他目标地址,是数据仓库建设和维护中的重要一环也是工作量较大的一块.当前知道的 ...

  6. kettle安装部署基本操作及实操文档

    一.kettle是什么? Kettle,简称ETL(Extract-Transform-Load的缩写,即数据抽取.转换.装载的过程),是一款国外开源的ETL工具,纯Java编写,可以在Window. ...

  7. kettle系列-kettle管理平台部署说明

    本介绍我的开源项目[kettle-manager]kettle管理平台如何获取并部署使用,该项目介绍请参看另一篇博文:http://www.cnblogs.com/majinju/p/5739820. ...

  8. kettle教程---kettle作业调度,根据更新时间增量更新

    本文接上一篇,只写到读取日志.在平时工作当中,会遇到这种情况,而且很常见.比如:增量抽取(每隔2个小时抽取截至到上次抽取时间的记录) 本文中会用到作业,先来熟悉下作业的概念 简单地说,一个转换就是一个 ...

  9. KETTLE——初见KETTLE

    (PS:这是很早以前在CSDN上发过的,那个账号不想用了,所以搬过来) 就在前一段时间,因为公司需要突然被老大告知要用一个ETL工具,第一次知道这么个工具,完全不知道是做什么的.大概问了一下,说是一种 ...

随机推荐

  1. 使用python操作mysql数据库

    这是我之前使用mysql时用到的一些库及开发的工具,这里记录下,也方便我查阅. python版本: 2.7.13 mysql版本: 5.5.36 几个python库 1.mysql-connector ...

  2. c# MySqlHelper_ExecuteSqlTran

    using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Text;u ...

  3. Python系列教程(三):输入和输出

    1.1 raw_input() 在Python中,获取键盘输入的数据的方法是采用 raw_input 函数(至于什么是函数,咱们以后的章节中讲解),那么这个 raw_input 怎么用呢? 看如下示例 ...

  4. Vijos 1981 跳石头 二分

    描述 一年一度的"跳石头"比赛又要开始了! 这项比赛将在一条笔直的河道中进行,河道中分布着一些巨大岩石.组委会已经选择好了两块岩石作为比赛起点和终点.在起点和终点之间,有 N 块岩 ...

  5. 数据结构(C语言版)链表相关操作算法的代码实现

    这次实现的是带头结点的单链表的初始化.遍历.创建.插入.删除.判断链表是否为空.求链表长度函数,编译环境是vs2013. 其中插入和删除函数中循环的条件目前还不太明白. #include<ios ...

  6. linux安装oracle笔记

    linux安装oracle .增大swap空间,内存大于8G后swap跟内存同等大小即可 mkdir /home/swap cd /home/swap mkswap swapfile swapon s ...

  7. CSS 样式书写规范

    可能不同团队都有各自的规范,又或者很多人在写 CSS 的时候还是想到什么就写什么,不存在太多的约束. 我觉得 CSS 代码规范还是有存在的必要的,尤其是在团队配合,多人协作下,规范就显得尤为重要. 本 ...

  8. 自定义程序异常Exception

    /** * 用于循环时的异常定位抛出异常 * 如第i行记录,抛出异常 * @author zhengwei * */ public class MyExcetion extends RuntimeEx ...

  9. Luogu 1349 广义斐波那契数列(递推,矩阵,快速幂)

    Luogu 1349 广义斐波那契数列(递推,矩阵,快速幂) Description 广义的斐波那契数列是指形如\[A_n=p*a_{n-1}+q*a_{n-2}\]的数列.今给定数列的两系数p和q, ...

  10. 干货:基于 Git Flow 的 Git 最佳实践(附加解决大家经常碰到的问题)

    突然想写这一篇Git的使用心得,主要有几个原因,其一是自己使用Git也有快3年时间了,其间自己经历过一些坑,也有迷茫的时候,在呆过的大大小小的团队中,其实每个人也都并不是Git专家,很多对于流程以及G ...