KETTLE数据上传
1. KETTLE简介
一种ETL工具,ETL,是英文Extract-Transform-Load的缩写,用来描述将数据从来源端经过抽取(extract)、转换(transform)、加载(load)至目的端的过程。
常见的ETL工具有datastage、informatica、kettle、ODI、Cognos等
Kettle是一款国外开源的ETL工具,纯java编写,可以在Windows、Linux、Unix上运行,数据抽取高效稳定。按项目负责人Matt的说法:就是把各种数据放到一个壶里,然后呢,以一种你希望的格式流出。
2. 安装配置
2.1 版本
绿色安装,解压即可
常用版本:4.1.0,(体积小,易于部署) ,目前最新版本8.2
操作系统:windows,Linux,Unix等
JDK:1.6以上
2.2 设置
打开我的电脑--属性--高级--环境变量
新建系统变量JAVA_HOME和CLASSPATH
变量名:JAVA_HOME
变量值:D:\Program Files\Java\jdk1.8.0_192 (具体路径以自己本机安装目录为准)
变量名:CLASSPATH
变量值:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;

添加到Path变量
变量名:Path
变量值:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;

确认JDK环境变量是否成功

3. KETTLE主要工具
转换:主要组成部分,完成数据的抽取,转换,装载
作业:定时执行转换
Spoon:图形界面工具,快速设计,维护ETL工作流,Spoon.bat,主要使用此工具
Kitchen:运行作业的命令行工具,Kitchen.bat
Pan:运行转换的命令行工具,Pan.bat
Carte:远程执行转换或作业,Carte.bat

4. 操作流程
4.1 启动
打开Spoon.bat
出现闪退情况时,请查看一下JAVA环境变量配置,JAVA版本是否正确
长时间无反应时,调整一下虚拟机内存分配
编辑Spoon.bat,以下内容
if "%PENTAHO_DI_JAVA_OPTIONS%"=="" set PENTAHO_DI_JAVA_OPTIONS="-Xmx512m" "-XX:MaxPermSize=256m"
(-Xms :表示java虚拟机堆区内存初始内存分配的大小
-Xmx: 表示java虚拟机堆区内存可被分配的最大上限
-XX:PermSize:表示非堆区初始内存分配大小
-XX:MaxPermSize:表示对非堆区分配的内存的最大上限)
4.2 主界面
第一次打开时,默认连接资源库,关闭即可,

资源库通常用于需要成员之间分工合作的大型的项目 ,
项目较小时,转换文件存储在本地即可。
4.3 新建转换
文件-新建-转换,快捷键CTL+N

4.4 数据库连接
建立两个系统数据库的连接方式

设置字符集,数据库连接-选项
新增添加参数characterEncoding,设置值为UTF8

4.5 常用控件

4.6 表输入
本地数据输入,数据库连接选择本地数据库,编写完成的SQL语句添加至此

4.7 表输出
插入对方数据库表,注意选择忽略插入错误选项

4.8 错误处理
上传数据出错时,将错误记录写入本地EXCEL,(也可以其他形式,比如数据库表) 操作步骤,如下:
转换界面,空白处,鼠标右键,定义错误处理

定义日志位置,文件名

定义日志内容

定义日志字段

KETTLE数据上传的更多相关文章
- C#工业物联网和集成系统解决方案的技术路线(数据源、数据采集、数据上传与接收、ActiveMQ、Mongodb、WebApi、手机App)
目 录 工业物联网和集成系统解决方案的技术路线... 1 前言... 1 第一章 系统架构... 3 1.1 硬件构架图... 3 1.2 ...
- PDA手持扫描资产标签,盘点完成后将数据上传到PC端,固定资产系统查看盘点结果
固定资产管理系统介绍: 致力于研发条码技术.集成条码系统的专业性公司,针对客户的不同需求,提供一站式的企业条码系统解决方案:包括功能强大的软件系统.安全可靠的无线网络.坚固耐用的硬件系统.灵活易用的管 ...
- 如何优化 FineUI 控件库的性能,减少 80% 的数据上传量!
在开始正文之前,请帮忙为当前排名前 10 唯一的 .Net 开源软件 FineUI 投一票: 投票地址: https://code.csdn.net/2013OSSurvey/gitop/codevo ...
- Octopus系列之数据上传格式要求说明
各个数据列要求 价格列:字符串类型[美元价格] 产品名字:可以支持"/"等字符 分类名字:去空格处理 不得包含"&"符号 主图:一定要有主图列 不为空 ...
- 重新想象 Windows 8.1 Store Apps (89) - 通信的新特性: 下载数据, 上传数据, 上传文件
[源码下载] 重新想象 Windows 8.1 Store Apps (89) - 通信的新特性: 下载数据, 上传数据, 上传文件 作者:webabcd 介绍重新想象 Windows 8.1 Sto ...
- C#数据上传方法
/// <summary> /// 连接成功后开始调用数据上传程序 /// </summary> public void CallDataUpload() { //指定上传日期 ...
- 【AllJoyn专题】基于AllJoyn和Yeelink的传感器数据上传与指令下行的研究
接触高通物联网框架AllJoyn不太久,但确是被深深地吸引了.在我看来,促进我深入学习的原因有三点:一.AllJoyn开源,对开源的软硬件总会有种莫名的喜爱,虽然或许不会都深入下去:二.顺应潮流,物联 ...
- Arduino UNO +ESP8266采集数据上传到贝壳网
集成电路设计大赛赛程将至,我现在还是毫无头绪,然后又报了一个互联网+,比赛报了,东西就必须出来,时间很紧的情况下,所以选择了开源的arduino的进行完成.从开始接触Arduino到完成工程,前前后后 ...
- OneNET麒麟座应用开发之四:数据上传测试
已经测试过OneNET麒麟座开发板了,这次来尝试与OneNET的连接和数据上传.这也是我们测试这块开发办的主要原因,因为在十几种我们有这种将分散的采集点数据上传到后台的需求. 先看看麒麟座这块开发板, ...
随机推荐
- C# 设置IP地址及设置自动获取IP
原文:C# 设置IP地址及设置自动获取IP </pre><pre name="code" class="csharp">1.添加引用&q ...
- Windows Phone锁屏背景相关代码
LockScreenManager: 启用应用程序,查看该应用程序是否是当前锁定屏幕背景提供程序,并将自己设置为提供程序. 属性: IsProvidedByCurrentApplication 只读指 ...
- C#字符串类型
C#字符串类型(string)是一种引用类型,是System.String的别名,表示Unicode字符串. 两种表示方法: 1.“C#” 直接用双引号括起来. 2.使用@,@“c:\test”,可以 ...
- 浅谈网络I/O多路复用模型 select & poll & epoll
http://blog.csdn.net/nk_test/article/details/50662946
- 预处理器#include 指令
预处理器发现 #include 指令后,就会寻找后跟的文件名并把这个文件的内容包含到当前文件中.被包含文件中的文本将替换源代码文件中的#include指令,就像你把被包含文件中的全部内容键入到源文件中 ...
- ubuntu QT开发环境(三种方法安装Qt4.8,其中apt-get方法安装QT库最简单)good
方法一 QT4.8.0库+QT Creator 2.4.1 特别声明:此方法极其耗时间,看电脑性能了.配置configure可减少编译时间 1.下载Qt .进入网址http://qt.nokia.co ...
- iOS11中iOS处理GIF图片的方式
GIF 五部走如下 : 1 从相册中取出GIF图的Data 2 通过腾讯的IM发送Gif图 3 展示GIF图 4 GIF图URL缓存机制 5 将展示的GIF图存到相册中 一 从相册中 ...
- 使用spring容器干掉if-else
spring容器干掉if-else 场景说明 最近新做一个项目,需要对不同店铺的商品做不同处理.例如storeA需要进行handleA操作,storeB需要进行handleB操作,如此类推 大家很容易 ...
- Nginx+Keepalived部署流程
环境介绍 1)LB01 Hostname:lb01.example.com VIP:192.168.3.33(eth0:0) IP:192.168.3.31(eth0) OS:Centos 7 2)L ...
- 简单的scrapy实例
前天实验室的学长要求写一个简单的scrapy工程出来,之前也多少看了点scrapy的知识,但始终没有太明白,刚好趁着这个机会,加深一下对scrapy工作流程的理解.由于临近期末,很多作业要做(其实.. ...