Kettle 使用教程
kettle 简介
- Kettle 全称为 KDE Extraction Transportation Transformation and Loading Environment,后来 Kettle 重命名为 Pentaho Data Integration。
- Kettle 是一款国外开源的 ETL (Extract-Transform-Load) 工具,纯 Java 编写,跨平台运行,绿色无需安装,数据抽取高效稳定。
- Kettle 中有两种脚本文件
transformation
和job
。transformation
完成针对数据的基础转换,job
则完成整个工作流的控制。 - Kettle 中有
4
个主要的部件:作业
、转换
、步骤
、跳
。其中作业和转换能够相互调用执行。每一个转换中的一个执行单元叫做步骤,连接步骤之间的线叫做跳。 - Kettle 提供
Spoon
图形化界面,可以开发在本地,然后在 Linux 上运行。
基本语法
在 Linux 中我们通常使用 kitchen
和 pan
执行作业和转换。kitchen
用来执行作业,pan
用来执行转换。
具体语法如下:
./kitchen.sh -file=/data/jobname.kjb
./pan.sh -file=/data/transformation.ktr
下载 Kettle
官网:https://sourceforge.net/projects/pentaho/files
选择 data-integration,下载想要的版本。
下载 JDK
官网:https://www.oracle.com/java/technologies/downloads/#java8
建立用户
groupadd kettle
useradd -r -g kettle kettle
下载并解压安装包
unzip pdi-ce-7.1.0.0-12.zip
chown kettle.kettle data-integration -R
cd data-integration
chmod 755 \*.sh
安装 jdk
mkdir /usr/local/java
tar -zxvf jdk-8u181-linux-x64.tar -C /usr/local/java/
配置 JAVA 环境变量
vi /etc/profile
export JAVA_HOME=/usr/local/java/jdk1.8.0_311
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin
安装 MySQL 驱动 mysql-connector-java
Mysql
驱动下载地址:MySQL Community Downloads
分别 copy
到如下目录中:
cp mysql-connector-java-5.1.36-bin.jar data-integration/lib/
测试安装是否成功
cd data-integration
./kitchen.sh
若出现帮助信息,证实安装成功。
配置信息
在 ~
目录下会生成 .kettle
文件夹,里面可以添加配置。
vim kettle.properties
MYSQL_HOST=127.0.0.1
MYSQL_DB=kettle
MYSQL_PORT=3306
MYSQL_USER=root
MYSQL_PASS=root