今天先来做一个简单的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. OSX MacVim + vim-lldb配置和使用心得

    Mac里面默认的编译器是clang/clang++ 所以debugger就选择了lldb 想搭配MacVim一起使用,于是就找到了vim-lldb这个插件,相当强大   这个插件支持Vundle,所以 ...

  2. python迭代器生成器(一)

    for循环可以用于python中任何序列类型,包括序列.元组以及字符串.例如: >>> for x in [1,2,3,4]: print(x * 2,end='')...2468 ...

  3. SpringMvc多视图配置(jsp、velocity、freemarker) velocity在springmvc.xml配置VelocityViewResolver,VelocityConfigurer,FreeMarkerConfigurer,FreeMarkerViewResolver

    ?xml version="1.0"encoding="UTF-8"?> <beans xmlns="http://www.springf ...

  4. P2286 [HNOI2004]宠物收养场

    题目描述 凡凡开了一间宠物收养场.收养场提供两种服务:收养被主人遗弃的宠物和让新的主人领养这些宠物. 每个领养者都希望领养到自己满意的宠物,凡凡根据领养者的要求通过他自己发明的一个特殊的公式,得出该领 ...

  5. 平板点餐软件编程体会---记我的Android编程之路

    前言 想开发一个平板点餐系统,研究下陈江根大侠分享的一个很高水准的实例,只是个单机版无实用意义. (如需运行源码请回复联系邮箱) 实现 Mysql 数据库+Tomcat WEb服务器,使用Servle ...

  6. 【Unity与23种设计模式】状态模式(State)

    定义: "让一个对象的行为随着内部状态的改变而变化,而该对象也像是换了类一样" 应用场景: 角色AI:控制角色在不同状态下的AI行为 服务器连接状态:开始连线.连线中.断线等状态 ...

  7. 关于TRIM的优化技巧

    背景 今天在论坛中,看到有人在问一个千万级别表查询的优化.一个简单的查询几分钟.语句如下 SELECT  work_date ,        major ,        style ,      ...

  8. SQL Server 2012 案例教程(贾祥素)——学习笔记

    第2章 SQL Server 2012概述 1.SQL(Structed Query Language),结构化查询语言. 2.SSMS(SQL Server Mangement Studio),SQ ...

  9. 函数响应式编程及ReactiveObjC学习笔记 (二)

    之前我们初步认识了RAC的设计思路跟实现方式, 现在我们再来看看如果使用它以及它能帮我们做什么 One of the major advantages of RAC is that it provid ...

  10. log4j(七)——log4j.xml简单配置样例说明

    一:测试环境与log4j(一)--为什么要使用log4j?一样,这里不再重述 二:老规矩,先来个栗子,然后再聊聊感受 (1)这里栗子有一点特别呀!给出了包名唉!想必有用,是的,配置文件中要特别说明一下 ...