Kettle 使用入门
Kettle是一款国外开源的ETL工具,纯java编写,可以在Window、Linux、Unix上运行,数据抽取高效稳定。
本文介绍一个入门例子:使用Kettle从动态指定的文件名对应的文本文件里抽取数据,导入到数据库临时表。
共分为2个步骤:
1、使用Kettle工具生成代表上述数据导入流程和转换的ktr文件

文本文件输入 -> 表输出
特别说明的是文本文件输入里的文件名是可以用变量,然后在步骤2中动态指定文件名的,如下

2、在java程序中使用Kettle API调用上述ktr文件,执行导入。
public static void main(String[] args){
String ktrFile = "C:\\Users\\ocf\\Documents\\Tencent Files\\FileRecv\\支付接口\\支付接口\\对账文件\\市民卡\\DLD0001.ktr";
try {
//指定文件名变量
System.getProperties().put("filename","C:\\Users\\ocf\\Documents\\Tencent Files\\FileRecv\\支付接口\\支付接口\\对账文件\\市民卡\\DLD0001.txt");
KettleEnvironment.init();
TransMeta transMeta;
transMeta = new TransMeta(ktrFile);
Trans trans = new Trans(transMeta);
//此处为输入的参数,也可以通过参数传进方法中
String dataFile = "DLD0001.txt";
String [] s = {dataFile};
trans.prepareExecution(s);
trans.startThreads();
trans.waitUntilFinished();
if (trans.getErrors() != 0) {
System.out.println("kettle导入Error");
return;
}
System.out.println("kettle导入执行成功!");
} catch (Exception e) {
e.printStackTrace();
}
}
Kettle 使用入门的更多相关文章
- KETTLE使用入门
一.准备文件 1.安装java虚拟机 2.安装kettle安装文件 二.使用步骤 1.点击Spoon.bat,启动kettle,弹出DOS窗口如下: 2.进入主界面 3.新建资源库
- Kettle Spoon入门教程
Kettle是一款国外开源的ETL工具,纯java编写,可以在Window.Linux.Unix上运行,数据抽取高效稳定.其中,Spoon是Kettle中的一个组件,其他组件有PAN,CHEF,Enc ...
- Kettle解决方案: 第一章ETL入门
第一章ETL入门 1.1 OLPT和数据仓库对比 普通的事务系统和商业智能系统(BI)有什么区别? 1个独立的普通事务系统也被称为在线事务处理系统(OLTP) 商业智能系统也常被称为决策支持系统(DS ...
- Kettle入门教程
最近做的项目用到了ETL工具Kettle,这个工具相当好用,可以将各种类型数据作为数据流,经过处理后再生成各种类型的数据.正如其名“水壶”,将各个地方的水倒进水壶里,再用水壶倒入不同的容器.不过一来初 ...
- kettle教程(1) 简单入门、kettle简单插入与更新。打开kettle
本文要点:Kettle的建立数据库连接.使用kettle进行简单的全量对比插入更新:kettle会自动对比用户设置的对比字段,若目标表不存在该字段,则新插入该条记录.若存在,则更新. Kettle ...
- Kettle入门
kettle 水壶 正如其名“水壶”,将各个地方的水倒进水壶里,再用水壶倒入不同的容器. 勺子-Spoon.bat/spoon.sh 图形界面工具,就是启动上图主界面的命令行. ketchen 厨房 ...
- kettle学习笔记(一)——入门与安装
一.概述 1.kettle是什么 Kettle是一款国外开源的ETL工具,纯java编写,可以在Window.Linux.Unix上运行,绿色无需安装,数据抽取高效稳定.中文名称叫水壶,该项目的主程序 ...
- kettle——入门操作-行列转换(行转列,字段拆分)
1.Row Normaliser,将一行多列数据转换为多行一列数据. 输入数据流: 计算器配置如下: 与计算器相连接的excel输出如下: Row Normaliser,设置如下, 与Row No ...
- Kettle入门及性能优化FAQ
1.安装 配置Java环境 Java环境配置问题 java_home:D:\Program Files\Java\jdk1.7.0_25(安装jdk路径) classpath:.;%java_home ...
随机推荐
- Swift 基本语法03-"if let"和"guard let"
1. /// 如果JY_WINDOW有rootViewController, 并且rootViewController类型是AdvertisementViewController,就执行stopPla ...
- 解决 listView gridView 与ScrollView嵌套时的冲突
package com.xqx.fight; import android.app.Activity; import android.os.Bundle; import android.view.Me ...
- Fragment----静态创建碎片
import android.os.Bundle; import android.app.Activity; import android.app.Fragment; import android.a ...
- datagridview 如何禁止行被选中
如题,如何规定特定的行,光标不能定位,也不能被选中,就好想Button中的Enable属性那样,变灰,而且点击也没有反应那种,这样的效果,如何实现. datagridview [解决办法]dataGr ...
- ubuntu and centos各种上网代理设置
1.Ubuntu 一. apt-get 代理设置 由于公司通过代理上网,firefox的代理设置很容易就搞定了,但是通过apt-get安装软件还是不行,于是,查阅了很多资料,最多的方法就是网上流传的三 ...
- js导出到word、json、excel、csv
tableExport.js ///*The MIT License (MIT) //Copyright (c) 2014 https://github.com/kayalshri/ //Permis ...
- cuda使用
import torchx = torch.randn(2, 3)x = x.cuda() print (x)#最简单的cuda使用,但是感觉好慢啊
- part1:6-Linux文本编辑器vi
vi编辑器简介: vi是Linux系统的第一个全屏幕交互式编辑器:vim则是vi的升级版得到广大用户青睐. vim有三种工作模式:命令行模式.插入模式.底行模式 命令行模式常用功能键: yy:复制当前 ...
- C语言dos程序源代码分享(进制转换器)
今天给大家分享一个dos程序的源代码 这个程序是本人在学习中的经验分享 如果有问题或者建议,欢迎大家一起交流 源代码: /*本程序为一个进制转换器 本程序不作为商业用途,完全为技术交流 喜欢C语言的同 ...
- arduino一些内容
arduino 套件使用说明书V1.0.pdf, 步进电机 DHT11 传感器另外一脚要接A0 /* Web client This sketch connects to a website (htt ...