ETL利器KETTLE实战应用解析系列一 KETTLE使用介绍

ETL利器KETTLE实战应用解析系列一 KETTLE使用介绍
ETL利器KETTLE实战应用解析系列一 KETTLE使用介绍

ETL(Extract-Transform-Load的缩写,即数据抽取、转换、装载的过程),对于企业或行业应用来说,我们经常会遇到各种数据的处理,转换,迁移,所以了解并掌握一种etl工具的使用,必不可少,这里我介绍一个我在工作中使用了3年左右的ETL工具Kettle,本着好东西不独享的想法,跟大家分享碰撞交流一下!在使用中我感觉这个工具真的很强大,支持图形化的GUI 设计界面,然后可以以工作流的形式流转,在做一些简单或复杂的数据抽取、质量检测、数据清洗、数据转换、数据过滤等方面有着比较稳定的表现,其中最主要的我们通过熟练的应用它,减少了非常多的研发工作量,提高了我们的工作效率,不过对于我这个.net研发者来说唯一的遗憾就是这个工具是Java编写的。

1、Kettle概念

Kettle是一款国外开源的ETL工具,纯java编写,可以在Window、Linux、Unix上运行,绿色无需安装,数据抽取高效稳定。

Kettle中文名称叫水壶,该项目的主程序员MATT希望把各种数据放到一个壶里,然后以一种指定的格式流出。

Kettle这个ETL工具集,它允许你管理来自不同数据库的数据,通过提供一个图形化的用户环境来描述你想做什么,而不是你想怎么做。

Kettle中有两种脚本文件,transformation和job,transformation完成针对数据的基础转换,job则完成整个工作流的控制。

2、下载和部署

Kettle可以在https://www.360docs.net/doc/7f628641.html,/网站下载

下载kettle压缩包,因kettle为绿色软件,解压缩到任意本地路径即可

3、Kettle环境配置(有Java环境的直接忽略此章节)

3、1安装java JDK

1)首先到官网上下载对应JDK包,JDK1.5或以上版本就行;

2)安装JDK;

3)配置环境变量,附配置方式:

安装完成后,还要对它进行相关的配置才可以使用,先来设置一些环境变量,对于Java来说,最需要设置的环境变量是系统路径变量path。

(1)要打开环境变量的设置窗口。右击“我的电脑”,在弹出的快捷菜单中选择“属性”选项,进入“系统属性”对话框,如图所示。选择“高级”标签,进入“高级”选项卡,再单击“环境变量”按钮,进入“环境变量”对话框,如图所示:

(2)在“Administrator的用户变量”列表框中,选择变量PATH,待其所在行变高亮后,单击“编辑”按钮,如图所示。

(3)在弹出的“编辑系统变量”对话框中,将JDK安装路径下的bin目录路径设置到Path变量中,如图所示。

编辑完后,单击“确定”按钮,进行保存,环境变量Path的设置就正式完成。

注意:设置Path变量的路径,必须是JDK安装目录中的bin目录,有时候在JDK安装目录的同一层会有JRE的安装目录,因此请谨慎选取相关路径,避免将路径设置成JRE目录下的bin 目录。

3、2测试JDK配置是否成功

设置好环境变量后,就可以对刚设置好的变量进行测试,并检测Java是否可以运行。

(1)单击“开始”按钮,选择“运行”选项,在“运行”对话框中输入cmd命令。

(2)之后单击“确定”按钮,打开命令行窗口。

(3)在光标处输入:javac命令,按下Enter键执行,即可看到测试结果

3、3运行Kettle

进入到Kettle目录,如果Kettle部署在windows环境下,双击运行spoon.bat或Kettle.exe 文件,出现如下界面:

这样配置环境这一块基本上就完成了。

4、Kettle使用及组件介绍

4.1Kettle使用

Kettle提供了资源库方式的方式来整合所有的工作,但是因为资源库移植不方便,所以我们选择没有资源库;

1)创建一个新的transformation,点击保存到本地路径,例如保存到D:/etltest下,保存文件名为EtltestTrans,kettle默认transformation文件保存后后缀名为ktr;

2)创建一个新的job,点击保存到本地路径,例如保存到D:/etltest下,保存文件名为EtltestJob,kettle默认job文件保存后后缀名为kjb;

4.2组件树介绍

4.3Transformation 转换介绍

每一个环节可以通过鼠标拖动来将环节添加到主窗口中。并可通过shift+

鼠标拖动,实现环节之间的连接。

Main Tree 菜单列出的是一个

transformation 中基本的属性,可以通过各

个节点来查看。

DB 连接:显示当前transformation 中的数

据库连接,每一个transformation 的数据库

连接都需要单独配置。

Steps :一个transformation 中应用到的环

节列表

Hops :一个transformation 中应用到的节

点连接列表

Core Objects 菜单列出的是

transformation 中可以调用的环节列表,可

以通过鼠标拖动的方式对环节进行添加。

Input :输入环节

Output :输出环节

Lookup :查询环节

Transform :转化环节

Joins :连接环节

Scripting :脚本环节

转换常用环节介绍

类别环节名称功能说明

Input 文本文件输入从本地文本文件输入数据表输入从数据库表中输入数据获取系统信息读取系统信息输入数据

Output 文本文件输出将处理结果输出到文本文件

表输出将处理结果输出到数据库表

插入/更新

根据处理结果对数据库表机型插入更新,如果数据库中不存

在相关记录则插入,否则为更新。会根据查询条件中字段进

行判断

更新

根据处理结果对数据库进行更新,若需要更新的数据在数据

库表中无记录,则会报错停止

删除根据处理结果对数据库记录进行删除,若需要删除的数据在

数据库表中无记录,则会报错停止

Lookup 数据库查询

根据设定的查询条件,对目标表进行查询,返回需要的结果

字段

流查询

将目标表读取到内存,通过查询条件对内存中数据集进行查

调用DB存储过程调用数据库存储过程

Transform 字段选择

选择需要的字段,过滤掉不要的字段,也可做数据库字段对

过滤记录根据条件对记录进行分类

排序记录将数据根据某以条件,进行排序

空操作无操作

增加常量增加需要的常量字段

Scripting Modified Java

Script Value

扩展功能,编写JavaScript脚本,对数据进行相应处理

Mapping映射(子转换)数据映射Job

Sat Variables设置环境变量

Get Variables获取环境变量

4.3Job任务介绍

常用环节介绍Main Tree菜单列出的是一个Job中基本的属性,可以通过各个节点来查看。

DB连接:显示当前Job中的数据库连接,每一个Job 的数据库连接都需要单独配置。

Job entries:一个Job中引用的环节列表

Job entries菜单列出的是Job中可以调用的环节列表,可以通过鼠标拖动的方式对环节进行添加。

每一个环节可以通过鼠标拖动来将环节添加到主窗口中。

并可通过shift+鼠标拖动,实现环节之间的连接。

类别环节名称功能说明

Job entries START开始

DUMMY结束

Transformation引用Transformation流程Job引用Job流程

Shell调用Shell脚本

SQL执行sql语句

FTP通过FTP下载

Table exists检查目标表是否存在,返回布尔值

File exists检查文件是否存在,返回布尔值

Javascript执行JavaScript脚本

Create file创建文件

Delete file删除文件

Wait for file等待文件,文件出现后继续下一个环节

File Compare文件比较,返回布尔值

Wait for等待时间,设定一段时间,kettle流程处于等待状态Zip file压缩文件为ZIP包

KETTLE组件介绍与使用

KETTLE组件介绍与使用 4.1 Kettle使用 Kettle提供了资源库的方式来整合所有的工作,; 1)创建一个新的transformation,点击保存到本地路径,例如保存到D:/etltest下,保存文件名为Trans,kettle默认transformation文件保存后后缀名为ktr; 2)创建一个新的job,点击保存到本地路径,例如保存到D:/etltest下,保存文件名为Job,kettle默认job文件保存后后缀名为kjb; 4.2 组件树介绍 4.2.1Transformation 的主对象树和核心对象分别如下图:

Transformation中的节点介绍如下: Main Tree:菜单列出的是一个transformation中基本的属性,可以通过各个节点来查看。DB连接:显示当前transformation中的数据库连接,每一个transformation的数据库连接都需要单独配置。 Steps:一个transformation中应用到的环节列表 Hops:一个transformation中应用到的节点连接列表 核心对象菜单列出的是transformation中可以调用的环节列表,可以通过鼠标拖动的方式对环节进行添加: Input:输入环节 Output:输出环节 Lookup:查询环节 Transform:转化环节 Joins:连接环节 Scripting:脚本环节 4.2.2 Job 的主对象树和核心对象分别如下图: Main Tree菜单列出的是一个Job中基本的属性,可以通过各个节点来查看。 DB连接:显示当前Job中的数据库连接,每一个Job的数据库连接都需要单独配置。 Job entries/作业项目:一个Job中引用的环节列表 核心对象菜单列出的是Job中可以调用的环节列表,可以通过鼠标拖动的方式对环节进行添加。 每一个环节可以通过鼠标拖动来将环节添加到主窗口中。 并可通过shift+鼠标拖动,实现环节之间的连接。

kettle应用实践(转)

kettle应用实践(转) 今天早上在网上看到了kettle发布了最新的版本,忽然想起最近其实做了不少工作应该是ETL工具的拿手好戏,赶紧下载下来看看,看是否能够在实际的工作中应用起来。 顺便讲一下,为啥看到kettle会两眼发光。 最近写了好几个小程序,用于从一个ftp去获取数据,然后转发至另一个ftp去,或者是从一个数据库获取数据然后保存至本地的数据库中,使用的是jdk中的Timer实现的定时调度,本来也没什么问题,连续运行几个月都不会出错。 可是最近网络不是太好,周期性抽风,ping包时,每5分钟大概 会丢7-8个包,从而导致程序也会假死,过一段时间后就不正常干活了,估计是因为用了数据库连接池的问题,要是每次发起数据库连接可能就不会有问题了,偷懒也不想改了,因为网络最终肯定是会修好的 :-) 但是想试试ETL工具,因为后面还有一些类似的东西要处理,不想写代码了,用别人的轮子感觉比较好,呵呵 首先下载了kettle的最新版,kettle3.1,解压后即可运行,一般的开发人员稍微摸索一下,看看例子简单的转换还是会做的,今天小试了一把,有几个注意点记下来。 1.使用资源库(repository)登录时,默认的用户名和密码是admin/admin 2.当job是存放在资源库(一般资源库都使用数据库)中时,使用 Kitchen.bat执行job时,需使用如下的命令行: Kitchen.bat /rep kettle /user admin /pass admin /job job名 3.当job没有存放在资源库而存放在文件系统时,使用Kitchen.bat执行 job时,需使用如下的命令行: Kitchen.bat /norep /file user-transfer-job.kjb 4.可以使用命令行执行job后,就可以使用windows或linux的任务调度来 定时执行任务了 在一开始使用命令行方式执行job时,总是报如下的错误,琢磨了好长时间总算整明白正确的方式了。 Unexpected error during transformation metadata load No repository defined!

ETL及kettle介绍

目录 1. ETL知识 (2) 1.1. ETL定义 (2) 1.1.1. 定义 (2) 1.1.2. 前提 (2) 1.1.3. 原则 (2) 1.2. 模式及比较 (3) 1.3. ETL过程 (6) 1.3.1. 总流程 (6) 1.3.2. 数据抽取流程 (7) 1.3.3. 数据清洗流程 (7) 1.3.4. 数据转换流程 (9) 1.3.5. 数据加载流程 (10) 1.4. 问题分析 (11) 1.4.1. 字符集问题 (11) 1.4.2. 缓慢变化维处理 (12) 1.4.3. 增量、实时同步的处理 (12) 1.4.4. 断点续传 (13) 1.5. ETL工具 (13) 2. Kettle简介及使用 (14) 2.1. 什么Kettle? (14) 2.2. 下载及安装Kettle (14) 2.3. Kettle简单例子 (16) 2.3.1.启动Kettle (16) 2.3.2.创建transformation过程 (17) 2.3.3.创建job过程 (37) 2.3.4.命令行运行ktr和kjb (41)

1.ETL知识 1.1.ETL定义 1.1.1.定义 ●定义: 数据的抽取(Extract)、转换(Transform)、装载(Load)的过程。 ●目标: 数据优化。以最小代价(包括对日常操作的影响和对技能的要求) 将针对日常业务操作的数据转化为针对数据仓库而存储的决策支持型数据。 1.1. 2.前提 ●确定ETL范围 通过对目标表信息的收集,确定ETL的范围 ●选择ETL工具 考虑资金 运行的平台、对源和目标的支持程度、可编程的灵活性、对源数据变化的监测、数据处理时间的控制、管理和调度功能、对异常情况的处理 ●确定解决方案 抽取分析、变化数据的捕获、目标表的刷新策略、数据的转换及数据验证 1.1.3.原则 ●应尽量利用数据中转区对运营数据进行预处理。保证数据的安全性、集成 与加载的高效性。 ●ETL的过程应是主动“拉取”,而不是从内部“推送”,其可控性将大为增 强。 ●流程化的配置管理和标准协议 ●数据质量的保证 正确性(Accuracy):数据是否正确体现在现实或可证实的来源 完整性(Integrity):数据之间的参照完整性是否存在或一致

Kettle开发使用手册

Kettle开发使用手册2017年4月

版本历史说明

1.Kettle介绍 1.1.什么是Kettle Kettle是纯Java编写的、免费开源的ETL工具,主要用于抽取(Extraction)、转换(Transformation)、和装载(Loading)数据。Kettle中文名称叫水壶,该项目的主程序员MATT 希望把各种数据放到一个壶里,然后以一种指定的格式流出。在这种思想的设计下,Kettle广泛用于不同数据库之间的数据抽取,例如Mysql数据库的数据传到Oracle,Oracle数据库的数据传到Greenplum数据库。1.2.Kettle的安装 Kettle工具是不需要安装的,直接网上下载解压就可以运行了。不过它依赖于Java,需要本地有JDK环境,如果是安装4.2或5.4版本,JDK需要1.5以上的版本,推荐1.6或1.7的JDK。 运行Kettle直接双击里面的批处理文件spoon.bat就行了,如图1.1所示: 图1.1

2.Kettle脚本开发 2.1.建立资源库(repository仓库) Repository仓库是用来存储所有kettle文件的文件系统,由于数据交换平台服务器管理kettle文件也是用Repository仓库,因此我们这边本地的kettle开发环境也是要用到该资源库。建立资源库的方式是工具 --> 资源库- -> 连接资源库,这时候弹出一个窗口,我们点击右上角的“+”号,跟着点击下面的kettle file repository选项,按确定,如图2.1所示: 图2.1 跟着在右上角选择一个目录,建议在kettle路径下新建repository文件夹,再选择这个文件夹作为根目录,名称和描述可以任意写,如图2.2所示: 图2.2 建完后会kettle工具会自动连接到repository资源库,每次打开kettle 也会弹出一个窗口让你先连接到资源库。在连接到资源库的情况下打开文件就是资源库所在目录了,如图2.3所示。注意你在资源库建的目录结构要跟数据交换平台的目录结构一致,这样写好kettle脚本,保存后放的路径能跟交换平台的目录结构一致了。

2019中考英语综合练习题(05)及解析(二月版).doc

2019中考英语综合练习题(05)及解析(二月版) 注意事项:认真阅读理解,结合历年的真题,总结经验,查找不足!重在审题,多思考,多理解! I、词汇练习 A〕词语解释 1、MrGreenthinksthatmaybeJim’sChineseteacherwillgivehimsomeworktododuringtheholiday. A. onSunday B. ontheweekend C.intheholiday 2. TheheadmasterissurethatMrHuwon’tmind. A. willagree B. won’taskJimtodoanything C. won’t agree 3. MrGreenisafraidthatJimwillforgethisChineseifhemissessomanylessons. A. forgets B.loses C.gets 4. Ifyoudon’tstudyhard,youwillfailtheexam. A. notbeabletopass B. dowellin C.belatefor 5. Jimwalkstoschooleveryday. A. goestoschoolbybike B.goestoschoolonfoot C.goestoschoolbycar 6. Youshouldlookafteryourself. A.takecareof B.lookfor C.keepon 7. Mymotherwasill,soshesentforadoctoratonce. A.wenttoseeadoctor B.askedadoctortocome C.lookedforadoctor 8. Justthen thetelephonerang. A. Atthattime B. Attimes C. Sometimes B〕根据以下各句所缺单词的第一个字母,写出所缺单词。 1. Please l__k atthenewpicture. 2. UncleWanghasworkedinthefactoryallhis l_fe.

ETL及kettle介绍

目录 1. ETL知识 (3) 1.1. ETL定义 (3) 1.1.1. 定义 (3) 1.1.2. 前提 (3) 1.1.3. 原则 (3) 1.2. 模式及比较 (4) 1.3. ETL过程 (7) 1.3.1. 总流程 (7) 1.3.2. 数据抽取流程 (8) 1.3.3. 数据清洗流程 (8) 1.3.4. 数据转换流程 (10) 1.3.5. 数据加载流程 (11) 1.4. 问题分析 (12) 1.4.1. 字符集问题 (12) 1.4.2. 缓慢变化维处理 (14) 1.4.3. 增量、实时同步的处理 (14) 1.4.4. 断点续传 (15) 1.5. ETL工具 (15) 2. Kettle简介及使用 (16)

2.1. 什么Kettle? (16) 2.2. 下载及安装Kettle (17) 2.3. Kettle简单例子 (19) 2.3.1. 启动Kettle (19) 2.3.2. 创建transformation过程 (20) 2.3.3. 创建job过程 (41) 2.3.4. 命令行运行ktr和kjb (45)

1.ETL知识 1.1.ETL定义 1.1.1.定义 ●定义: 数据的抽取(Extract)、转换(Transform)、装载(Load)的过程。 ●目标: 数据优化。以最小代价(包括对日常操作的影响和对技能的要求) 将针对日常业务操作的数据转化为针对数据仓库而存储的决策支持型数据。 1.1. 2.前提 ●确定ETL范围 通过对目标表信息的收集,确定ETL的范围 ●选择ETL工具 考虑资金 运行的平台、对源和目标的支持程度、可编程的灵活性、对源数据变化的监测、数据处理时间的控制、管理和调度功能、对异常情况的处理 ●确定解决方案 抽取分析、变化数据的捕获、目标表的刷新策略、数据的转换及数据验证 1.1.3.原则 ●应尽量利用数据中转区对运营数据进行预处理。保证数据的安全性、集 成与加载的高效性。

kettle入门例子大全

Kettle 培训技术文档0507 Etl 介绍 ETL(Extract-Transform-Load的缩写,即数据抽取、转换、装载的过程),对于金融IT 来说,经常会遇到大数据量的处理,转换,迁移,所以了解并掌握一种etl工具的使用,必不可少。 Kettle是一款国外开源的etl工具,纯java编写,绿色无需安装,数据抽取高 效稳定。Kettle中有两种脚本文件,transformation和job,transformation完成针 对数据的基础转换,job则完成整个工作流的控制。 kettle 部署运行 将kettle2.5.1文件夹拷贝到本地路径,例如D 盘根目录。 双击运行kettle文件夹下的spoon.bat文件,出现kettle欢迎界面:

稍等几秒 选择没有资源库,打开kettle主界面

创建transformation,job 点击页面左上角的创建一个新的transformation,点击保存到本地路 径,例如保存到D:/etltest下,保存文件名为EtltestTrans,kettle默认transformation 文件保存后后缀名为ktr 点击页面左上角的创建一个新的job,点击保存到本地路径,例如保 存到D:/etltest下,保存文件名为EtltestJob,kettle默认job文件保存后后缀名为kjb 创建数据库连接 在transformation页面下,点击左边的【Main Tree】,双击【DB连接】,进行 数据库连接配置。

connection name自命名连接名称Connection type选择需要连接的数据库Method of access选择连接类型 Server host name写入数据库服务器的ip地址Database name写入数据库名 Port number写入端口号 Username写入用户名 Password写入密码 例如如下配置:

个人切实的经验:bt4-pre-final下用spoonwep+spoonwpa破解wep或wpa加密的无线网络

个人切实的经验:bt4-pre-final下用spoonwep+spoonwpa破解wep或wpa加 密的无线网络 2010-11-20 10:43 一、首先下载这三个工具: 1、BT4正式版: 下载地址:http://ftp.heanet.ie/mirrors/backtrack/bt4-pre-final.iso 2、U盘启动制作工具:unetbootin-windows-356 下载地址:https://www.360docs.net/doc/7f628641.html,/blog/attachments/month_0906/t2009621225526.rar 3、spoonwep-wpa破解工具用于BT4下的deb安装包 迅雷下载地址:(已经修正下载地址,打开迅雷,然后复制以下地址即 可)thunder://QUFodHRwOi8vbXkueHd0b3AuY29tL2ZpbGVteS8yMDA5MDUxNy82NzljMTNkMi4xLmRlYlpa 二、运行unetbootin制作BT4的U盘启动系统。 点确定就开始制作了。 在这里需要泡杯茶点支烟等一下。 从ISO文件里提取文件拷贝到U盘里需要一段时间。

完成之后,不要重启,再把刚刚下到的“spoonwep-wpa破解工具用于BT4下的deb安装包”手动拷贝到U盘根目录下面,自己记好它好的名字,方便到BT4下找到它。 三、启动BT4 在BIOS里面设置从U盘启动,这个无法截图,自己摸索吧。呵呵~~ 四、进入BT4 登陆的用户名:root,密码:toor startx命令启动图形化界面。 五、安装spoonwep-wpa-rc3.deb包 点击左下角的开始菜单,点击一个叫system mune的弹出菜单,再点击“storeage media”,会打开一个窗口,点击窗口上面有个刷新的按钮,在窗口下面空白的地方会列出你的硬盘和外设,进入U盘,找到刚才放入的spoonwep-wpa-rc3.deb,把这个文件复制到BT4的桌面(其实就是/root),可以直接拖到桌面,打开命令行窗口 运行“dpkg -i spoonwep-wpa-rc3.deb” 稍等几秒中,桌面上出现desktop的文件夹,里面就有了spoonwep2+spoonwpa,好了,大功告成,直接单击图标就能运行spoonwep2或spoonwpa了。 也可以输入以下命令执行: spoonwep2 执行: spoonwep2 spoonwpa 执行: spoonwpa 六、开始破解!!!! 【spoonwep2 破解法】 输入spoonwep2回车后就会弹出spoonwep2的窗口。 点击SPOONWEP SETTINGS,在NET CARD里选WLAN0,在DRIVER里选NORMAL,在MODE里选UNKNOWN VICTIM,再点击NEXT、点击LAUNCH进入搜索,然后关闭spoonwep2再开一下,点击SPOONWEP SETTINGS,在NET CARD里选MON0,在DRIVER里选NORMAL,在MODE里选UNKNOWN VICTIM,再点击NEXT、点击LAUNCH进入搜索后就可以看见好多网卡啦,选定1个网卡点击SELECTION OK,选定PO841 REPLAY ATTACK(这里有4条命令选择),点击LAUNCH后就等待密码的出来(sata数据包到30000个左右)。 【spoonwpa 破解法】

KETTLE详细设计说明

. . . . KETTLE详细设计说明书 V0.1 变更记录

1 Kettle界面介绍 双击Kettle.exe或者Spoon.bat打开Kettle图形界面化如下: (图1.1) Kettle中有两类设计分别是:Transformation(转换)与Job(作业),Transformation完成针对数据的基础转换,Job则完成整个工作流的控制。 Kettle常用三大家族:Spoon、Pan、Kitchen。 Spoon:通过图形界面方式设计、运行、调试Job与Transformation。 Pan:通过脚本命令方式来运行Transformation。 Kitchen:通过脚本命令方式来运行Job,一般就是通过调用Kitchen脚本来完成定时任务。 说明:当打开Kettle时显示的是Kettle的相关版本信息与GNU相关协议说明。

(图1.2) 说明:打开Kettle时弹出的窗口提示以资源库方式登录相关信息,关于乌江水电项目工程存储方式是以XML文件方式来进行存储,所以我就直接点击“没有资源库”。 图(1.3) 说明:进入Kettle设计界面。提示关于Spoon相关信息,这里直接点击“关闭”按钮。

(图1.4) 说明:图片中所使用到的字母位置标识说明。 (A):Kettle所使用到的菜单栏。 (B):在使用Kettle时所涉及使用到的对象。 (C):Kettle中所有的组件。 (D):根据选择(B)或者(C)显示相应的结果。 (E):Kettle设计界面。 (图1.5) 说明: 文件:是对Kettle所生成的Job与Trans进行相关的操作,如:新建、打开、保存、导入、

pentaho-Kettle安装及使用说明(例子)

Kettle安装及使用说明 1.什么Kettle? Kettle是一个开源的ETL(Extract-Transform-Load的缩写,即数据抽取、转换、装载的过程)项目,项目名很有意思,水壶。按项目负责人Matt的说法:把各种数据放到一个壶里,然后呢,以一种你希望的格式流出。Kettle包括三大块: Spoon——转换/工作(transform/job)设计工具(GUI方式) Kitchen——工作(job)执行器(命令行方式) Span——转换(trasform)执行器(命令行方式) Kettle是一款国外开源的etl工具,纯java编写,绿色无需安装,数据抽取高 效稳定。Kettle中有两种脚本文件,transformation和job,transformation完成针对数据的基础转换,job则完成整个工作流的控制。 2.Kettle简单例子 2.1下载及安装Kettle 下载地址:https://www.360docs.net/doc/7f628641.html,/projects/pentaho/files 现在最新的版本是 3.6,为了统一版本,建议下载 3.2,即下载这个文件pdi-ce-3.2.0-stable.zip。 解压下载下来的文件,把它放在D:\下面。在D:\data-integration文件夹里,我们就可以看到Kettle的启动文件Kettle.exe或Spoon.bat。 2.2 启动Kettle 点击D:\data-integration\下面的Kettle.exe或Spoon.bat,过一会儿,就会出现Kettle的欢迎界面:

稍等几秒,就会出现Kettle的主界面: 2.3 创建transformation过程 a.配置数据环境 在做这个例子之前,我们需要先配置一下数据源,这个例子中,我们用到了三个数据库,分别是:Oracle、MySql、SQLServer,以及一个文本文件。而且都放置在不同的主机上。 Oralce:ip地址为192.168.1.103,Oracle的实例名为scgtoa,创建语句为:create table userInfo( id int primary key,

亮片分SPINNER和SPOON两种

亮片分SPINNER和SPOON两种,是一种适用性非常广泛的路亚,可以用于钓获淡水中的翘嘴白鱼、大口鲈、黑鱼、鲶鱼, 呈现方式是使用匙型拟饵钓鱼的重要关键。虽然不容易使到一片金属像鱼一样游动,但要令鱼作出攻击也不是一件很难的事,当然,这需要一点技巧。大部份匙型拟饵的设计原理是在水中收回来时,因水压的关係而摇摆或旋转。也有一些不会摇摆或旋转的匙型拟饵,例如扁平者。这种拟饵必须快速收线,并作出额外的猛抽以吸引鱼,这种动态是為了模仿欲逃离掠食者的小鱼,而掠食者最难抗拒的就是这种动态,也有人把这种拟饵当作铁板来从事晃饵钓法(Jigging)。 除了上层及中层水域,匙型拟饵也可在水底呈现。使用此方法时,先把拟饵投到心目中的标点,让它沉到水底去。钓竿向后猛抽一下,以使到拟饵向前跳,然后让它再往下沉,这种呈现法是為了模仿一些小鱼或虾的动态。 匙型拟饵的形状和厚度将决定其功效。薄的拟饵会产生大幅度方旋转和摇摆动态;当沉下水底途中,其形状也会产生动态。一些拟饵会出现摇晃或摇摆的动态,这些动态对掠食鱼类来说是难以抗拒的。有时候我们还未开始收线便产生鱼讯,便是因為匙型拟饵在下沉途中便已开始产生了诱鱼的动态。 申明我没有挑战各位路亚前辈和大师的意思,在你们眼中我这个初学者只是小儿科,井底之蛙,一个只会钓翘嘴的菜鸟。我基本没有仔细看各大路亚网站或者大师级人物对拟饵选择操作的文章,几乎所有我知晓的东西都是在自己胡乱路亚的过程中总结出来的。对于我这个初学者来说,没有资格著书立说,只是我乐意把大师们认为最初级的路亚钓法在这里用个人的理解和个人的话说出来,让和我同样是很初级的钓友分享个人的经验。可能我所说的是最初级的一些东西,甚至和各位大师级人物的理解大相径庭,但我简陋的工具和愚笨的办法在升钟是能钓到鱼的,所以还请各位路亚神仙高抬贵手。我想当我的路亚之旅达到一定高度的时候,我会细细去品味各位前辈、大师的文章,去升华我的路亚经验。不过,现在,我只是一个菜鸟。 一、亮片。 目前,我和在升钟钓了N年的一些老钓手普遍认为对于翘嘴和鲶鱼,在升钟亮片都是最强大的一种拟饵。亮片英文名spoon,是模拟小鱼在水里游动反射的光线引诱攻击性鱼类瞬间攻击的拟饵种类。 经过N次升钟路亚,参考升钟当地老钓手的经验之谈,我们来谈谈亮片这个很简单的拟饵的选择和操作。 亮度: 我先自我批评以前对大家的误导,这也是我最近路亚过程中逐步摸索出来自己的失误,我长期以自己的眼力来判断亮片的亮度,主观的认为亮片在漆黑的夜晚没有光线反射,因此亮片是不会有鱼类攻击的。实际上,现在我要颠覆以前的理解: 掠食性鱼类攻击首先是通过侧线对水纹异像的感知以及瞬间的亮度反射对鱼类视线的刺激来产生条件性的攻击动作的。 当拟饵在掠食性鱼类身边划过,首先带动掠食性鱼类感知的是水纹异像,这种感知是通过侧线,进而在瞬间的亮度刺激下,鱼类向亮度方向张开大嘴进行攻击。这是一个一气呵成的过程,这个过程是掠食性鱼类在长期的捕食过程中形成的条件反射。 另一个是,即使在伸手不见五指的漆黑夜晚,亮片的亮度足够的情况下,在大约60厘米以上一米以内的水体内,亮片的反光依然是掠食性鱼类可见的。 因此,我在农历初一左右没有月亮的夜晚进行过多次实践,得出一个结论是:虽然在60厘米的距离,我看不到亮片的亮度,但亮片也是可以路到翘嘴和鲶鱼的。实践说明不能以我的视力去判断鱼是否看得见,这是不能相

自己总结的Kettle使用方法和成果

KETTLE使用自己总结的Kettle使用方法和成果说明 简介 Kettle是一款国外开源的ETL工具,纯java编写,可以在Window、Linux、Unix上运行,绿色无需安装,数据抽取高效稳定。 Kettle 中文名称叫水壶,该项目的主程序员MATT 希望把各种数据放到一个壶里,然后以一种指定的格式流出。 Kettle这个ETL工具集,它允许你管理来自不同数据库的数据,通过提供一个图形化的用户环境来描述你想做什么,而不是你想怎么做。 Kettle中有两种脚本文件,transformation和job,transformation完成针对数据的基础转换,job则完成整个工作流的控制。 Kettle可以在https://www.360docs.net/doc/7f628641.html,/网站下载到。 注:ETL,是英文Extract-Transform-Load 的缩写,用来描述将数据从来源端经过萃取(extract)、转置(transform)、加载(load)至目的端的过程。ETL 一词较常用在数据仓库,但其对象并不限于数据仓库。 下载和安装 首先,需要下载开源免费的pdi-ce软件压缩包,当前最新版本为5.20.0。 下载网址:https://www.360docs.net/doc/7f628641.html,/projects/pentaho/files/Data%20Integration/然后,解压下载的软件压缩包:pdi-ce-5.2.0.0-209.zip,解压后会在当前目录下上传一个目录,名为data-integration。 由于Kettle是使用Java开发的,所以系统环境需要安装并且配置好JDK。 ?Kettle可以在https://www.360docs.net/doc/7f628641.html,/网站下载 ? 下载kettle压缩包,因kettle为绿色软件,解压缩到任意本地路径即可。运行Kettle 进入到Kettle目录,如果Kettle部署在windows环境下,双击运行spoon.bat 或Kettle.exe文件。Linux用户需要运行spoon.sh文件,进入到Shell提示行窗口,进入到解压目录中执行下面的命令: # chmod +x spoon.sh # nohup ./spoon.sh &后台运行脚本 这样就可以打开配置Kettle脚本的UI界面。

Kettle使用手册

Kettle培训手册 Etl介绍 ETL(Extract-Transform-Load的缩写,即数据抽取、转换、装载的过程),对于金融IT来说,经常会遇到大数据量的处理,转换,迁移,所以了解并掌握一种etl工具的使用,必不可少。 Kettle是一款国外开源的etl工具,纯java编写,绿色无需安装,数据抽取高效稳定。Kettle中有两种脚本文件,transformation和job,transformation完成针对数据的基础转换,job则完成整个工作流的控制。 kettle部署运行 将kettle2.5.1文件夹拷贝到本地路径,例如D盘根目录。 双击运行kettle文件夹下的spoon.bat文件,出现kettle欢迎界面:

稍等几秒 选择没有资源库,打开kettle主界面

创建transformation,job 点击页面左上角的解并到本地路径,例如保存到D:/etltest下,保存文件名为EtltestTrans,kettle默认transformation 文件保存后后缀名为ktr 点击页面左上角的解并到本地路径,例如保存到D:/etltest下,保存文件名为EtltestJob,kettle默认job文件保存后后缀名为kjb 创建数据库连接

在transformation页面下,点击左边的【Main Tree】,双击【DB连接】,进行数据库连接配置。 Connection name自命名连接名称 Connection type选择需要连接的数据库 Method of access选择连接类型 Server host name写入数据库服务器的ip地址 Database name写入数据库名 Port number写入端口号 Username写入用户名 Password写入密码 例如如下配置:

kettle经验总结

Pan命令来执行转换,下面给出的是pan参数。 Kitchen 命令用于执行作业 Carte 用于添加新的执行引擎

Kettle的资源库和Carte的登录,密码都是用Encr加密的。 使用中遇到的问题及总结: 这两个组件用之前必须先对数据进行排序,否则数据会不准确。而且merge join会很慢,尽量要少用。 这个组件默认auto commit false,所以如果要执行一些sql,必须在后面加commit。 貌似没什么用,其实也没什么用。Kettle讲究有进有出,如果最后的没有输出,要加上这个空操作。实际上测试不写也没问题。 执行java script,这个组件很强大,大部分用组件实现不了 的东西,都可以通过这个来转换。而且可以调用自己写的java 类。强大到不行~ 这个组件很奇怪,顾名思义调用存储过程的,但实际上不能调用不传参数的存储过程。如果有没有参数的存储过程,现在的解决方案是用sql脚本来执行。

一个设置变量,一个获得变量。这个本来没什么要说的,但在实际应用中发现,在一个trans中设置的变量,在当前trans中并不一定能获得到,所以设计的时候先在一个trans中设置变量,然后在后续的trans中来获得就可以了。 让人惊喜的东西,大数据量导入,事实上让人近乎绝望,研究了一天依旧不会用。而且我怀疑确实不能用。其实这个组件无非是实现了copy命令,目前的解决方案,sql脚本,先汗一个,不知道跟这些组件相比效率会怎样。 三个亲兄弟,功能差不多,长的也很像,看了源码感觉,性能有差异,就性能而言,文本文件输入组件很差,它不如csv file input和fixed file input组件,因为后面的两者启用了java nio技术。顺便提一句而已。 kettle内置性能监控,通过分析能知道哪一环节出现瓶颈。 以上是trans的内容,关于job相比而言简单一些,只是调用trans而已。值得一说的是job 以start开始,这个start只能有一个。当然不说很多人也会认为是只能有一个,

kettle使用手册

1打开程序,点击 spoon.bat 其实对于简单的数据库数据的抽取,基本只需要转换(.ktr格式)和作业(.kjb格式)这两种东西。下面就是建立一个转换的步骤: a 点击文件-->新建-->转换。 b 在左侧的树状列表中选“主对象树”,新建DB连接(参照第4点)。 c 在核心对象-->输入这个地方拖出一个表输入,在“输出”目录下拖出“表输出”,按住shift,从一个对象拖到另一个对象可进行连线。 2基本作业由开始,转换,成功3步骤组成。步骤之间使用shift+左键连线。 2.1‘1’代表无条件执行; 2.2‘2’代表上一步执行完成后,再执行下一步; 2.3‘3’代表不执行,左击连接线使其生效(绿色)或失效(灰色)。

3打开具体步骤中的转换流程,点击‘Transformation’跳转至相应具体转换流程, 编辑此转换具体路径,双击转换,弹出窗口,‘1’为相对路径,点击‘2’选择具体Visit.ktr 转换,为绝对路径。

4建立数据库连接,输入相应信息测试,成功即可 图4 5转换具体设置,如图4,‘表输出’至‘文本文件输出’流程跳接线为错误处理步骤,当输出格式不能满足表输出的目的表结构类型时,将会将记录输出到‘文本文件输出’

中的记录中。 5.1双击‘表输入’,输入相应的SSQL语句,选择配置数据库连接,或新增,预览查询 生成的结果(如果数据库配置中使用变量获取,此处预览生成错误)。 5.2双击‘表输出’,选择数据库连接,‘浏览’选择相应目标表,(此处‘使用批量插 入’勾选去除,目的是在错误处理步骤中无法使用批量处理,可能是插件兼容问 题) 6表输出插件定义 a) Target Schema:目标模式。要写数据的表的Schema的名称。允许表明中包含“。”对数据源来 说是很重要的 b) 目标表:要写数据的表名。

kettle使用经验总结

Kettle使用经验总结 一、关于变量的使用 在etl过程中难免不使用变量,所以就先介绍变量的使用。 其中可以使用kettle已经定义好的变量。 个人感觉最有用的就是“Internal.Job.Filename.Directory”。这个变量为运行时变量,含义为启动的当前job的目录,是个相对路径。可以在job中的作业转换名、日志文件名、转换文件名等任何可以使用到文件路径的地方使用。这样很方便移植,不用每次当文件更改目录后或者移植到不同系统下需要一一更改每个步骤的路径,节省了许多不必要的时间。 还可以在Kettle的属性文件kettle.properties中设置环境变量。此文件所在目录如下:$HOME/.kettle (Unix/Linux/OSX) C:\Documents and Settings\\.kettle\kettle.properties (Windows) 使用变量的方法可以如下指定:${V ARIABLE}。 还可以设置运行时变量。关于命令行启动job/trans直接设置动态变量还没有验证。待验证后补充。 现在使用的是将参数输入到文本中,然后从文本取得变量的值再在各个trans中使用。

包含设置变量的trans里不能放置使用此变量的步骤,此变量只能在之后的trans/Job中才能使用。使用的时候直接${varName}即可。 还有一种是使用局部变量可以直接用?代替。 这个需要注意的是在使用变量的步骤中有一个“从步骤插入数据”下拉列表,需要从中选择之前的变量。 对于全量提取和每天增量提取,可以将提取的过程作为一个通用的job,前面根据提取方式的不同连接不同的时间变量,后面提取的sql写为between…and…。这样既实现了功能,又实现了代码复用。但是需要注意的是格式问题,获取系统信息取到的时间格式形如“2009/08/10 00:00:00.000”。如果将此时间使用js截断后再设置,格式会变成类似“Sat Aug 10 00:00:00 CST 2009”。可以在sql中使用substr,例如“to_date(substr('${BEGINTIME}',1,10),'yyyy/MM/dd')”。当然也可能会有更好的解决方案。 二、命令行执行job Linux下:sh kitchen.sh /norep /file [path]/JobName.kjb 其中/norep /file代表不使用资源库,使用文件系统。 如果使用资源库的话改为/rep kettle /user admin /pass admin。 用命令行可以执行后就可以使用windows或linux下的任务调度来定时执行任务了。 三、序列的使用 在“转换”里有一个步骤是“增加序列”。很多时候我们都需要用一个序列做为表中的一个字段。

kettle操作文档

Kettle操作文档 1.Kettle介绍。 (2) 2. Kettle下载。 (2) 3.使用规范和注意事项。 (3) 3.1.配置数据库的全局变量。 (3) 3.2.文件命名规范(不要用汉字)。 (3) 3.3.文件存放位置。 (3) 3.4.配置启动任务文件。 (3) 3.5.注意事项。 (4) 4. Kettle部署使用。 (4) 4.1.启动kettle。 (4) 4.2.创建转换文件。 (5) 4.2.1.使用标识字段实现新增数据。 (5) 4.2.2.使用时间戳实现新增或修改数据。 (11) 4.2.3.使用时间比较实现新增或修改数据。 (14) 4.2.4.使用对某一数据值比较实现新增或修改数据。 (17) 4.3.创建任务文件。 (19) 4.4.命令行启动任务。 (20)

1.Kettle介绍。 ETL(Extract-Transform-Load的缩写,即数据抽取、转换、装载的过程),对于政府部门来说,经常会遇到大数据量的处理,转换,迁移,所以了解并掌握一种etl工具的使用,必不可少。 Kettle是一款国外开源的etl工具,纯java编写,绿色无需安装,数据抽取高效稳定,提供了图形化界面,使用很方便。Kettle中有两种脚本文件,transformation和job,transformation 完成针对数据的基础转换,job则完成整个工作流的控制。 2.Kettle下载。 Kettle可以在http://2.2.2.240/bbs/网站下载kettle压缩包,因kettle为绿色软件,解压即可使用。这个压缩包,公司加了一些功能,跟官网下载的不太一样,建议使用公司论坛上的压缩包。 资料网站:https://www.360docs.net/doc/7f628641.html,/。 注:解压路径尽量不要有中文。 .kettle:存放kettle的一些环境变量信息,资源库的信息。 jre6:存放java运行库文件(1.6版本)。 launcher:存放启动的文件以及启动的配置信息。 lib:存放kettle的库文件。 libext:存放用到的外部库文件。 libswt:存放用到的界面库文件。 plugins:存放插件文件。 resources:存放编写的转换和任务文件,以及日志和任务 配置信息。 ui:存放用到的的图片和配置信息。 Kitchen.bat:任务文件执行器(命令行模式)。 Pan.bat:转换文件执行器(命令行模式)。 set-pentaho-env.bat:设置kettle运行的环境变量。 Spoon.bat:打开设计工具(界面方式)。 Spoon.ico,spoon.png:工具的图标。 start.bat:启动存放在resources目录下的任务配置文件。 说明.txt:使用的规范和注意事项。

商务英语翻译心得 张留芳 1156110309

商务英语翻译心得 从开学到现在,商务英语翻译(汉译英)共学习了两大类,一类为产品说明的翻译,包括商业广告、产品说明书、商名; 一类为企业旅游类,包括企业单位宣传材料、学校简介、旅游宣传材料。现将所学内容详细进行总结。 I.产品说明类汉译英 1. 商业广告的汉英翻译 1.1商务广告的主要功能有三个:传播商业信息,诱发公众需求;塑造企业形象,提高企业知名度; 展示商情,为公众咨询提供方便。要取得这些功能,作为促销手段的广告首先必须引人注目,即具有“注意价值”(attention value)和“可读性”(readability)。例如“谁跑到最后,谁笑得最好------He who lasts last laughs best(某一轮胎广告)”,该广告是模仿某句谚语“He who laughs last laughs best”改编而来的,读起来朗朗上口又颇具意味,达到了上述的注意价值和可读性;其次,必须具有“说服力”(persuasive power)或“推销能力”(selling power),能使人产生购买所促销售产品的欲望。例如“美酒酿出世界的爱------Good liquor helps you to get love everywhere”该翻译运用you这个单词,使酒与消费者很好的融为一体,达到了推销的作用。 1.2 商务广告的翻译要符合以下几点要求:鲜明突出,简明通俗,新颖别致以及生动形象。 例一:日本航空:舒适与温馨撒满世界 A world of comfort.(Japan Airlines) 例二:我们肆无忌惮的知道如何卖鸡蛋 We know Eggsactly how to sell Eggs 例三: 你会像阳光一样明媚。(阳光衬衫广告) You will be as charming as the Sunshine(一语双关,生动形象) 2.产品说明书的汉英翻译 2.1 产品说明书简介 产品说明书通常翻译做“Instruction Manual 或Operation Manual”. 内容包括1)产品的一般特性:安装,使用,维修。2)产品的具体特征:注意事项,基本原理,结构,安装调整步骤,使用,维修,故障/疑难排除,备件单。 2.2 产品说明书的语言及文体特点 2.2.1 语言特点 1)广泛使用一般现在时和主动语态;多使用祈使句以实现说服功能 例:药片溶解后,溶液应置于阴凉避光处保存。 Store away from light in a cool place after dissolving a tablet. 2)多使用省略句省去不必要的词; 例:本品配方温和,膏体轻盈,含防止过敏成份,不会令皮肤干燥。 This product is extremely gentle, the lightweight formula contains anti-irritants and will not over-dry the skin. 红色的字是要注意的地方,并不一定要逐字翻译,例如这个句子就将“配方温和”和“膏体轻盈”结合在一起翻译了,“extremely gentle”,“lightweight formula”。“令皮肤干燥”我们一般可能会翻译成“make our skin dry”,就不如“over-dry”来的简练。 3)常使用动词的非谓语形式以简化表达; 例:请确认存储器剩余的容量及要下载的文件大小

相关文档
最新文档