kettle(一)概述
近期两个月一直和kettle打交道,从開始的没听说过,到如今能够熟练运用,不得不说项目驱动下,学习东西是最快的。好了,尽管使用kettle应付项目的任务绰绰有余。可是还是想系统的学习一下,总结一下。比如job用的比較少,kettle的集群模式没有涉及到等等。
说起kettle,还是先说说ETL(Extract-Transform-load,即抽取,转换。载入)数据仓库技术。是用来处理将数据从来源(比如:单位基础server)经过抽取。转换。载入到达至目的端(正在做的项目)的过程。
也就是新的项目须要使用曾经项目数据库中的数据,ETL就是解决问题的。
ETL实现共同注意点:、空值处理:可捕获字段空值。进行载入或替换为其它含义数据,并可根据字段空值实现分流载入到不同目标库。
2、规范化数据格式:可实现字段格式约束定义,对于数据源中时间、数值、字符等数据,可自己定义载入格式。
3、拆分数据:根据业务需求对字段可进行分解。例,主叫号 861082585313-8148,可进行区域码和电话号码分解。
4、验证数据正确性:可利用Lookup及拆分功能进行数据验证。比如,主叫号861082585313-8148。进行区域码和电话号码分解后,可利用Lookup返回主叫网关或交换机记载的主叫地区,进行数据验证。
5、数据替换:对于因业务因素。可实现无效数据、缺失数据的替换。
6、Lookup:查获丢失数据 Lookup实现子查询,并返回用其它手段获取的缺失字段,保证字段完整性。
7、建立ETL过程的主外键约束:对无依赖性的非法数据。可替换或导出到错误数据文件里。保证主键唯一记录的载入。
而,kettle则是当中的一种工具,其它还有:Informatica,Datastage,OWB,微软的DTS等等。
好。下边简单说说kettle。
kettle是一款国外开源(受欢迎)的ETL工具,纯Java编写(和Java开发非常好集成)。能够在Windows,Linux,Unix上运行(Linuxserver流行时代下,kettle更加受欢迎)。数据抽取高效稳定(更更受欢迎了)。kettle中文名俗称“水壶”,开发目的是将各种数据放到一个壶中。然后经过各种处理加工。以特定的格式流出。
kettle家族包含:Spoon,Pan,CHEF,Kitchen。
Spoon:是通过图形界面来设计ETL转换过程(Transformation)(最经常使用)。
PAN:同意批量运行由Spoon设计的ETL转换(比如使用一个时间任务调度器)Pan是一个后台运行程序,没有图形界面。
CHEF:同意创建任务(Job)。
任务通过运行,每一个转换。任务,脚本等。使其更加有利于完毕更为复杂的任务。
Kitchen:同意你批量使用由Chef设计的任务(比如使用一个时间调度器),也是后台运行程序。
kettle转换的设计包含几个方面:资源库,数据库连接,作业(job)。转换(trans),步骤(step)。形象的举一个样例:资源库相当于我们的一个Java项目 ,数据库连接相当于我们的Java项目中的连接数据库,Job相当于Java项目中的一条线,而Trans相当于Java的一个个类,Step则是类中的方法。
所以从这个层面来看,事实上Kettle还是非常easy的。
须要我们做的就是建好资源库,连接好数据库。建立转换。写好类中的每一个步骤,将转换连接起来组成任务(当然转换也能够独立运行)。
好,最后看一下什么时候适合使用kettle。
这样一个项目A,这个项目A须要实施到非常多家企业。而项目A须要用到每家企业的数据库基础数据。比如员工。组织结构,客户,供应商等等一些基础数据。这时候kettle就能够非常轻松的完毕任务。也就是说,我们的项目须要用到大量的数据库之间迁移数据。
好,kettle理论简单介绍,后边看kettle简单使用。最后附一张kettle工具的界面图:
kettle(一)概述的更多相关文章
- 2016/11/10 kettle概述
ETL(Extract-Transform-Load,即抽取,转换,加载),数据仓库技术,是用来处理将数据从来源(以前做的项目)经过抽取,转换,加载到达目的端(正在做的项目)的过程.也就是新的项目需要 ...
- Kettle解决方案: 第二章 Kettle基本概念
2概述 设计模块最主要的操作分为: 转换和作业 选择转换和作业后就可以选择对应主对象树和核心对象 主对象树大同小异 核心对象是不同的 比如转换需要用到的CSV表输入, 表输入等都在这里可以选择 而作业 ...
- Storm Topology 提交 总结---Kettle On Storm 实现
一,目的 在学习的过程中,需要用到 PDI---一个开源的ETL软件.主要是用它来设计一些转换流程来处理数据.但是,在PDI中设计好的 transformation 是在本地的执行引擎中执行的,(参考 ...
- kettle学习笔记(十)——数据检验、统计、分区与JS脚本
一.概述 数据剖析和数据检验: 用于数据的检查.清洗 . 统计步骤: 提供数据采样和统计的功能 分区: 根据数据里某个字段的值,拆分成多个数据块.输出到不同的库表和文件中. 脚本: Javascrip ...
- kettle学习笔记(九)——子转换、集群与变量
一.概述 kettle中3个重要的步骤: 子转换/映射 在转换里调用一个子转换,便于封装和重用. 集群 集群模式 变量和参数 变量和参数的用法 二.子转换 1.定义子转换 主要由映射输入与映射输出定义 ...
- kettle学习笔记(八)——kettle查询步骤与连接步骤
一.概述 查询步骤: 用来查询数据源里的数据并合并到主数据流中 . 连接步骤: 结果集通过关键字进行连接 .(与前面的UNION不同) 二.查询步骤 1.流查询 流查询示例:(注意上文中的流查询的限制 ...
- kettle学习笔记(一)——入门与安装
一.概述 1.kettle是什么 Kettle是一款国外开源的ETL工具,纯java编写,可以在Window.Linux.Unix上运行,绿色无需安装,数据抽取高效稳定.中文名称叫水壶,该项目的主程序 ...
- 大数据入门第五天——离线计算之hadoop(上)概述与集群安装
一.概述 根据之前的凡技术必登其官网的原则,我们当然先得找到它的官网:http://hadoop.apache.org/ 1.什么是hadoop 先看官网介绍: The Apache™ Hadoop® ...
- Hive2.2.1概述(待重写)
概述 hive 是一个包裹着 hdfs 的壳子,hive 通过 hql,将 sql 翻译成 MR ,进行数据查询. Hive是⼀个构建在Hadoop之上的数据仓库 hive的数据存在hdfs上,元信息 ...
随机推荐
- rest_framework 权限功能
权限: 问题:不用视图不用权限可以访问 基本使用 写上一个权限类 创建utils 中 permission.py文件 class SvipPermisson(object): message = &q ...
- WEB前端开发中的SEO注意点
近几年来,SEO在国内得到了蓬勃的发展,其中很多的SEO技术越来越体现在web前端的一些细节上.要做好SEO,WEB前端这一块也要做必不可少的优化. 这就要求我们WEB前端工程师在开发页面的时候,要写 ...
- 如何启动和关闭MySQL?(四)
分为: 图形化 命令行 方法一:在“计算机”的图标上右键,然后选择“管理”,双击“服务和应用程序”,然后选择“服务”,找到“MySQL”这个服务,然后点击“右键”,就可以进行“停止”和“重新启动”的操 ...
- 【DotNetNuke介绍】
简介 DotNetNuke(以下简称DNN)的最终目的是创建一个门户的框架平台,这个平台可以为开发者增添模块搭建应用程序提供坚实的可靠的支持.应用程序的一个关键的功能就是数据存取..NET Frame ...
- 虚拟主机TOMCAT配置
在tomcat中添加虚拟主机: 编辑"tomcat\conf\server.xml",在"<Engine></Engine>"元素中新加 ...
- Generic type test java
package test; public class GenericTest { public class Room<T> { private T t; public void add(T ...
- <Sicily>Pythagorean Proposition
一.题目描述 One day, WXYZ got a wooden stick, he wanted to split it into three sticks and make a right-an ...
- Scala和范畴论 -- 对Monad的一点认识
Scala和范畴论 -- 对Monad的一点认识 背景 所有一切的开始都是因为这句话:一个单子(Monad)说白了不过就是自函子范畴上的一个幺半群而已,有什么难以理解的.第一次看到这句话是在这篇文章: ...
- CentOS7.4-btrfs管理及使用
btrfs, B-tree File System, GPL开源文件系统, 支持CoW即读时写入. 核心特性: 多物理卷支持; btrfs可由多个底层磁盘组成 支持RAID mkfs.btrfs 命令 ...
- [国家集训队]拉拉队排练 Manancher_前缀和_快速幂
Code: #include <cstdio> #include <algorithm> #include <cstring> using namespace st ...