可用于Hadoop下的ETL工具——Kettle
看大家分享了好多hadoop相关的一些内容,我为大家介绍一款ETL工具——Kettle。
Kettle是pentaho公司开源的一款ETL工具,跟hadoop一样,也是java实现,其目的就是做数据整合中时数据的抽取(Extract)、转换(Transformat)、加载(Load)工作。Kettle中有两种脚本文件,transformation和job,transformation完成针对数据的基础转换,job则完成整个工作流的控制。Transformation工作原理上采用并发流式处理,可采用集群分布式处理。
像Eclipse一样,Kettle也是采用插件模式实现,任何个人或团体可以向其贡献插件代码;目前kettle支持很多中数据源,如:大多数市面上的数据库、文本文件、Excel、XML、Json文件、等等,能够对抽取的数据做排序、分组、合并、行转列、列转行、字段合并和分隔、不同数据源间的连接(如数据库表那样)、数据库文件的导入导出等操作。另外还支持Hadoop上文件的读取和写入,以及HBase的输入输出;其中的TableInput组件还支持Hive数据的读写,真是一款数据整合中不可多得的利器。
我目前工作中在使用,所以在这里向大家推荐了解;如果有使用的同学,欢迎多多交流!
感兴趣的朋友可以了解了解。地址:kettle.pentaho.com
以下是在transfrmation中读取hdfs中文件的步骤:
1.拖拽“Hadoop File Input”到Transformation的设计界面
2.双击刚才拖拽的控件或者右键选编辑,进入到“Hadoop File Input”的配置窗口
3.点击“浏览(Browse)”按钮,进入到连接配置窗口
4.输入hdfs的地址和端口号
5.点击“连接(Connect)”按钮, 这时你就会看到下边的浏览部分就会进入到你的hdfs文件系统
之后进入要读取的目录,选择要读取的文件即可。如果是读取多文件可以用通配符表示。
6.配置文件内容
①选择文件类型
②设置字段间的分隔符
③字段是否有封闭字符,有的话需要填写用的封闭符是什么,如默认是双引号;没有的话就可以去掉
④是否包含文件头,如包含,第几行是
⑤文件格式,Unix or Windows?
⑥设置文件字符集。否则会有乱码出现
7.设置要读取的字段。按文本中列序确定,从左至右;若读取全部,可以不填写字段(前提要有列头,即上一步说到的文件头)。
输出到hdfs也一样,选择“Hadoop File Output”即可。配置类似,我就不赘述了。 想练习的话,可以从hdfs读取一个文件,并输入到hdfs的其他目录
可用于Hadoop下的ETL工具——Kettle的更多相关文章
- 开源ETL工具kettle系列之常见问题
开源ETL工具kettle系列之常见问题 摘要:本文主要介绍使用kettle设计一些ETL任务时一些常见问题,这些问题大部分都不在官方FAQ上,你可以在kettle的论坛上找到一些问题的答案 1. J ...
- ETL工具--kettle篇(17.10.09更新)
ETL是EXTRACT(抽取).TRANSFORM(转换).LOAD(加载)的简称,实现数据从多个异构数据源加载到数据库或其他目标地址,是数据仓库建设和维护中的重要一环也是工作量较大的一块.当前知道的 ...
- ETL工具kettle基本使用
1.下载kettle:https://sourceforge.net/projects/pentaho/files/Data%20Integration/7.0/pdi-ce-7.0.0.0-25.z ...
- 大数据之ETL工具Kettle的--1功能介绍
Kettle是一款国外开源的ETL工具,纯java编写,可以在Window.Linux.Unix上运行. 说白了就是,很有必要去理解一般ETL工具必备的特性和功能,这样才更好的掌握Kettle的使用. ...
- ETL工具Kettle使用以及与Java整合实现数据清洗
本文主要讲述kettle的使用和与Java整合,具体下载与安装请自行百度! kettle有两种脚本方式:转换和工作,工作中可以添加转换.以下以转换为例. 1.新建一个转换, 2.在工作中经常用到的是表 ...
- ETL工具-KETTLE教程专栏1----术语和定义
1-资源库 资源库是用来保存转换任务的,用户通过图形界面创建的的转换任务可以保存在资源库中. 资源库可以使多用户共享转换任务,转换任务在资源库中是以文件夹形式分组管理的,用户可以自定义文 ...
- 八步学会数据迁移:ETL工具kettle使用方法
一.目的 将不同服务器上的表合并到另外一个服务器上.例如:将服务器1上的表A和服务器2上的表B,合并到服务器3上的表C 要求:表A需要被裁剪(去掉不必要的字段).表B需要增加一些字段 二.使用方法 ( ...
- etl学习系列1——etl工具安装
ETL(Extract-Transform-Load的缩写,即数据抽取.转换.装载的过程),对于企业或行业应用来说,我们经常会遇到各种数据的处理,转换,迁移,所以了解并掌握一种etl工具的使用,必不可 ...
- ETL利器Kettle
ETL利器Kettle实战应用解析系列一[Kettle使用介绍] 本系列文章主要索引如下: 一.ETL利器Kettle实战应用解析系列一[Kettle使用介绍] 二.ETL利器Kettle实战应用解析 ...
随机推荐
- 关于count(1) 和 count(*)
Q:What is the difference between count(1) and count(*) in a sql queryeg.select count(1) from emp; an ...
- Delphi与Qt在Windows下使用共享内存进程间通信
Delphi部分 type TGuardInfo=record Lock: Integer; end; PGuardInfo = ^TGuardInfo; TGuardShareMem=c ...
- MongoDB的C#驱动基本使用
转载:http://www.cnblogs.com/wilber2013/p/4175825.html MongoDB的官方C#驱动可以通过 这个链接 得到.链接提供了.msi和.zip两种方式获取驱 ...
- C#中结构体与字节流互相转换
1.定义与C++对应的C#结构体 在c#中的结构体不能定义指针,不能定义字符数组,只能在里面定义字符数组的引用. C++的消息结构体如下: //消息格式 4+16+4+4= 28个字节 struct ...
- ExtJS4.2学习(九)属性表格控件PropertyGrid(转)
鸣谢网址:http://www.shuyangyang.com.cn/jishuliangongfang/qianduanjishu/2013-11-15/178.html ------------- ...
- 【数位DP】Hdu 3652:B-number
B-number Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Su ...
- jsp的静态包含与动态包含:<%@ include file="" %>和<jsp:include page=""></jsp:include>区别与分析
<%@ include file="" %>是将文件原封不动的copy进现有的文件中,像是拼接好后,再编译成为servlet运行. <jsp:include pa ...
- The 7th Zhejiang Provincial Collegiate Programming Contest->Problem B:B - Somali Pirates
http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3323 题意:去掉字符串里面的数字然后按输入顺序输出 #include< ...
- ****JFinal 部署在 Tomcat 下推荐方法
首先明确一下 JFinal 项目是标准的 java web 项目,其部署方式与普通 java web 项目没有任何差别.Java Web 项目在 Tomcat 下部署有一些不必要的坑需要避免 经常有人 ...
- redis 性能监控和排查
最近项目中接连遇到redis出现瓶颈的问题,现在把排查的一些经验记录下来备查,本篇只是思路的整理,不涉及具体的使用. 大体的思路如下: 1.通过slow log查看 参考 http://www.cnb ...