大数据技术暑期实习一、Kettle技术认识

  kettle是一款开源的ETL(extract抽取、transform转换、load加载)工具,纯java编写,可以在Windows、Linux、Unix上运行,绿色无需安装,图形化界面拖拽操作,数据抽取高效稳定。

在公司中对公司数据库直接进行改动是大忌,所以需要将数据拷贝一份,ETL工具由此诞生,由于kettle开源,相比高额的付费软件,很划算。

Kettle以xml形式或资源库方式存储,有两种设计:Transformation(转换)——完成针对数据的基础转换;Job(作业)——完成整个工作流的控制。其中作业是步骤流,转换是数据流。

Kettle有三个主要组件:

Spoon(勺子):图形化界面,windows选择.bat,linux选择.sh。

Kitchen(厨房):利用kitchen命令可以用命令行调用Job。

Pan(锅):利用pan可以用命令行的形式调用Trans。

另外,Carter(菜单)是一个轻量级的web容器,用于建立专用、远程的ETL server。

Windows下kettle的安装使用

一、安装

1.概述

在实际企业开发中,都是在本地环境下进行kettle的Job和Transformation开发,可以在本地运行,也可以连接远程机器运行。

2.安装jdk

不再赘述(kettle要在java环境中运行)

3.下载解压kettle

kettle为绿色软件,可下载后直接解压到本地任意路径,即可用。下载地址

4.数据库安装

不再赘述,以mysql为例(强烈建议大家数据库版本不要追新,由于版本问题在其他软件的协同工作时会出很多问题,目前稳定版本mysql5.6  5.7就可以了。)

5.启动

找到spoon.bat文件,打开,第一次开启时间略长

(文件中有.sh和.bat文件,Linux下使用.sh文件,windows下用.bat文件)

二、案例

案例一

把stu1的数据按id同步到stu2,stu2有相同id则更新数据

在mysql中创建两张表

1.打开 作业

 2.在mysql中创建两张表并插入一些数据

mysql>create database kettle;

mysql>use kettle;

mysql>create table stu1 (id int ,name varchar(20),age int);

mysql>create table stu2 (id int ,name varchar(20));

 mysql>insert into stu1 values(1001,’bajie’,20),(1002,’shaseng’,18),(1003,’sanzang’,23);

mysql>insert into stu2 values(1001,’wukong’);

3.kettle操作

        

 

猜你喜欢

转载自www.cnblogs.com/wjwjs/p/11459513.html