ETL工具Kettle使用以及与Java整合实现数据清洗
本文主要讲述kettle的使用和与Java整合,具体下载与安装请自行百度!
kettle有两种脚本方式:转换和工作,工作中可以添加转换.以下以转换为例.

1.新建一个转换,

2.在工作中经常用到的是表输入和表输出(从一个数据库中提炼数据,插入到另外一个数据库中进行保存)
点击核心对象 --> 输入 --> 表输入


这个节点是用来从数据库中查询数据
点击“表输入”-->新建 首先创建一个数据库连接,要让kettle知道从哪里查询数据

kettle支持多种数据库连接,因为工作中用到的是mysql,所以其余的可以自行百度了解

因为在使用过程中,可能数据库编码方式不一致,所以需要制定编码,在创建数据连接的时候,点击高级选项卡,如图所示(set names utf8;)

在点击选项选项卡,如图所示:characterEncoding:utf8

创建完成后,点击保存,下面就是开始写sql,kettle支持sql中油自定义参数的形式,参数要使用${}来进行创建。注意一点,要勾选下面的,替换sql语句里的变量。

创建好后点击确定。
在创建一个节点,用来接收数据,点击输出中的表输出,创建数据库连接,和上面创建步骤一样

点击输入字段映射,可自动生成对应字段。
3.创建完成后,使用shift和鼠标左键将两个节点连接在一起

4.启动:
如果在查询时自定义了参数,那么在启动时需要个参数赋值:

5.还需注意一点,如果没有创建资源库,那么创建的转换/作业是要保存成脚本存放到本地,但是,如果已创建了资源库,那么脚本会错放到数据库中,不会生成文件!
6.资源库的创建

第一次需要新建资源库,如果已经创建,选择对应的资源库然后输入账号密码即可(账号密码默认admin)

在创建资源库时,点击+号,然后会出现图中的样式,我们选择第二个,会将数据生成到数据库中进行保存。

我们需要指定资源库存放的数据库连接是哪个,创建方式和上面我们创建节点的数据库连接一样,创建完后,选择数据库连接,名称和描述自己取名即可(尽量不要重复,与Java整合时需要这两个参数)
创建完成后,我们输入账号密码即可登录到资源库中。
ETL工具Kettle使用以及与Java整合实现数据清洗的更多相关文章
- 可用于Hadoop下的ETL工具——Kettle
看大家分享了好多hadoop相关的一些内容,我为大家介绍一款ETL工具——Kettle. Kettle是pentaho公司开源的一款ETL工具,跟hadoop一样,也是java实现,其目的就是做 ...
- 开源ETL工具kettle系列之常见问题
开源ETL工具kettle系列之常见问题 摘要:本文主要介绍使用kettle设计一些ETL任务时一些常见问题,这些问题大部分都不在官方FAQ上,你可以在kettle的论坛上找到一些问题的答案 1. J ...
- 大数据之ETL工具Kettle的--1功能介绍
Kettle是一款国外开源的ETL工具,纯java编写,可以在Window.Linux.Unix上运行. 说白了就是,很有必要去理解一般ETL工具必备的特性和功能,这样才更好的掌握Kettle的使用. ...
- ETL工具--kettle篇(17.10.09更新)
ETL是EXTRACT(抽取).TRANSFORM(转换).LOAD(加载)的简称,实现数据从多个异构数据源加载到数据库或其他目标地址,是数据仓库建设和维护中的重要一环也是工作量较大的一块.当前知道的 ...
- ETL工具kettle基本使用
1.下载kettle:https://sourceforge.net/projects/pentaho/files/Data%20Integration/7.0/pdi-ce-7.0.0.0-25.z ...
- ETL工具-KETTLE教程专栏1----术语和定义
1-资源库 资源库是用来保存转换任务的,用户通过图形界面创建的的转换任务可以保存在资源库中. 资源库可以使多用户共享转换任务,转换任务在资源库中是以文件夹形式分组管理的,用户可以自定义文 ...
- 八步学会数据迁移:ETL工具kettle使用方法
一.目的 将不同服务器上的表合并到另外一个服务器上.例如:将服务器1上的表A和服务器2上的表B,合并到服务器3上的表C 要求:表A需要被裁剪(去掉不必要的字段).表B需要增加一些字段 二.使用方法 ( ...
- etl学习系列1——etl工具安装
ETL(Extract-Transform-Load的缩写,即数据抽取.转换.装载的过程),对于企业或行业应用来说,我们经常会遇到各种数据的处理,转换,迁移,所以了解并掌握一种etl工具的使用,必不可 ...
- ETL利器Kettle
ETL利器Kettle实战应用解析系列一[Kettle使用介绍] 本系列文章主要索引如下: 一.ETL利器Kettle实战应用解析系列一[Kettle使用介绍] 二.ETL利器Kettle实战应用解析 ...
随机推荐
- vscode 代码缩进2格
"editor.detectIndentation":false,
- 自定义springmvc参数解析器
实现spring HandlerMethodArgumentResolver接口 通过使用@JsonArg自定义注解来解析json数据(通过fastjson的jsonPath),支持多个参数(@Req ...
- python3学习笔记(三):注释和字符串
一.注释 为了让别人能够更容易理解程序,使用注释是非常有效的,即使是自己回头再看旧代码也是一样. # 打印圆的周长: print(2* pi* r) 在python 中用井号(#)表示注释.井号(#) ...
- 什么是webpack以及为什么使用它
什么是webpack以及为什么使用它 新建 模板 小书匠 在ES6之前,我们要想进行模块化开发,就必须借助于其他的工具.因为开发时用的是高级语法开发,效率非常高,但很可惜的是,浏览器未必会支持或认识 ...
- P1364 医院设置 (补锅,memset初始化较大值不可用0x7fffffff )
P1364 医院设置 题解 弗洛伊德水过 注意初始化一个大数 0x3f 可以,0x5f 好像也可以,但是0x7fffffff 我是真的炸了,初始化为-1 (后面补锅有详细解释) 代码 #include ...
- bash中的set, env, export unset的区别
参考这篇文章很好 参考这篇文章2 -------------------------- == set显示的是当前shell的变量, 不同的shell, 它的私有变量是不同的 env是显示用户的变量, ...
- 为什么在vmware中不能使用ctrl+alt+F1~6切换到字符控制台
为什么在vmware中不能使用ctrl+alt+F1~6切换到字符控制台 是因为vmware虚拟机的快捷键: ctrl+alt也用到了 因为vmware本身的hot keys也用到了ctrl+alt: ...
- 基于python+requests的简单接口测试
在进行接口测试时,我们可以使用已有的工具(如:jmeter)进行,也可以使用python+requests进行.以下为简单的接口测试模板: 一.提取常用变量,统一配置 新建一个config.py文件, ...
- ubuntu服务器允许Root用户登录
1.重置root密码 sudo passwd root 2.修改ssh配置文件 sudo vim /etc/ssh/sshd_config后进入配置文件中修改PermitRootLogin后的默认值为 ...
- Flink集群环境搭建
环境准备 master:171:slave:171,172:flink版本:1.3.0 下载地址:http://archive.apache.org/dist/flink/flink-1.3.0/ 集 ...