Kettle数据抽取解决方案
一、 Kettle介绍
1. Kettle简介
ETL即数据抽取(Extract)、转换(Transform)、装载(Load)的过程。Kettle的中文翻译为水壶。Kettle以元数据驱动的方式提供强大的抽取、转换和加载(ETL) 能力。本身提供了强大的图形界面设计器,可以大大缩短数据抽取项目的开发周期,并且容易维护。 Kettle设计器界面友好,提供了工作流设计模式,能满足各种场景的实现。
2. Kettle的模型架构

3. Kettle的优点
1) 支持多种数据源;
2) 支持多任务并发,支持大数据量的抽取转换处理,执行效率高;
3) 成熟的异常处理流程;
4) 可与Java应用很好结合。
4. Kettle的扩展性
Kettle的控件采用插件式开发模式,因此本身就具备了很好的扩展性,支持插件式开发。插件式开发可以提高应用的可用性,插件可以单独更新与升级。
二、 实施方案
1. 数据更新流程
示例方案的部署图如下:

通过部署在各个节点的监听触发器监听各个节点的业务表数据状态,当有数据更新时,触发器会将记录此部分数据,并将源节点名称和应抽取数据的表名等参数传递到ETL调度程序,ETL调度程序通过表名调度ETL脚本,将此节点的未抽取状态的增量数据抽取到目标数据库中,执行结束后将返回值参数传递给触发器更新数据状态。
2. 新增节点
新增节点时,将源节点的数据库配置(数据库名,表空间名,用户名,密码等信息)配置到相应的调度表中,在源数据库中配置监听触发器,人工手动执行脚本将新增节点的业务表的全量数据抽取到目标表中即可。
3. 问题处理
在调度程序中存在一种配置即当由于断网导致ETL脚本报错时,将脚本复位至执行前的状态并静置一段时间(时间可配置)后再次执行脚本,直到脚本运行成功。由于断网导致ETL脚本报错时,本次运行成功抽取到数据库中的数据回滚,等到下一次运行时重新抽取该数据。
<!-- Start -->
获知及时信息,请关注我的个人微信订阅号:0与1的那点事

<!-- End -->
本文为博主原创文章,转载请注明出处!
http://www.cnblogs.com/libingbin/
感谢您的阅读。
Kettle数据抽取解决方案的更多相关文章
- kettle 数据抽取时会出现 无法插入NULL
kettle 数据抽取时会出现 无法插入NULL,其实是空字符串,原因是kettle默认不区分空字符串和NULL. 解决办法: 修改kettle.properties 文件:
- Kettle 数据抽取
1.创建数据库连接 2.建立转换 3.指定源数据库和目标数据库的字段映射 一定要在「输出」中勾选「指定字段」,然后点按钮「Get All fields」,再「Enter mapping」,在弹出窗口映 ...
- KETTLE——(二)数据抽取
过了个春节,好长时间没有更新了,今天接着写第二部分——数据抽取. 进入界面以后会发现左侧菜单有两个东西:转换和作业:简单说一下,转换是单次的转换,不可重复,但可重复利用:作业是汇聚了其他操作和多次(可 ...
- ETL kettle 数据调取防止意外停止处理
pentaho kettle是目前使用比较广泛的一种etl工具 但是在使用的时候如做定时任务 会存在如果任务异常停止会发生数据不准或者丢失数据的情况 这种情况在<Pentho Kettle So ...
- Kettle定时抽取两个库中的两个表到目标库SYS_OPLOG表
A库a表(红色为抽取字段): 关联用户表: B库b表(红色为抽取字段): 关联用户表 C目标库SYS_OPLOG表(c表) 利用kettle抽取A库a表(具体名称见上图),B库b表的上面红色框起来 ...
- KETTLE数据上传
1. KETTLE简介 一种ETL工具,ETL,是英文Extract-Transform-Load的缩写,用来描述将数据从来源端经过抽取(extract).转换(transform).加载(l ...
- Spark数据倾斜解决方案(转)
本文转发自技术世界,原文链接 http://www.jasongj.com/spark/skew/ Spark性能优化之道——解决Spark数据倾斜(Data Skew)的N种姿势 发表于 2017 ...
- HR数据抽取:通过 Read Master Data 转换规则读取时间相关主属性数据
声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...
- 《BI项目笔记》增量ETL数据抽取的策略及方法
增量抽取 增量抽取只抽取自上次抽取以来数据库中要抽取的表中新增或修改的数据.在ETL使用过程中.增量抽取较全量抽取应用更广.如何捕获变化的数据是增量抽取的关键.对捕获方法一般有两点要求:准确性,能够将 ...
随机推荐
- 移动APP的用户体验测试
经常被问到用户体验测试,什么是用户体验测试,用户体验测试要关注的都有哪些呢,现在为大家来罗列一下: 1.横竖屏测试 在移动设备上做用户体验测试,最容易想到的就是对APP做横竖屏的测试来观察APP的显示 ...
- PIE SDK影像坏线修复
1.算法功能简介 坏条带的由来:2003年5月31日,Landsat-7ETM+机载扫描行校正器(SLC) 故障,导致此后获取的影像出现了数据条带丢失,严重影响了Landsat ETM遥感影像的使用. ...
- Jenkins 发布平台 MSB4064: The "Retries" parameter is not supported & error MSB4063: The "Copy" task could not be initialized
____________________________________________________________________________________________________ ...
- TomCat端口被占用问题
TomCat在使用时,有时会爆出端口被占用的问题 解决方法: 1.快捷键win+R,输入cmd,点击回车后再输入netstat -ano|findstr 8005 注:什么端口被占用就输入什么端口号 ...
- 透视效果shader(边缘光)
思路:渲染两次. 1.第一次渲染:利用Greater进行深度测试,当目标被遮挡时,用一个边缘光的效果显示. 2.第二次渲染:正常渲染. 边缘光的思路:观察方向和顶点法向量夹角越大,边缘光越明显.边缘光 ...
- python入门练习之如何连接数据库
!/usr/bin/python -- coding: UTF-8 -- author = 'luke' from sqlalchemy import create_engine from sqlal ...
- 在VM虚拟机中彻底删除Linux系统
前言:很久之前安装了Linux虚拟系统,然后用户名忘记了,想着重新安装个Ubuntu系统,就想着删除以前的系统. 删除方法如下: 1.点击打开该Linux系统. 2. 点击虚拟机的左上方“虚拟机”-& ...
- Cloudera Manager集群官方默认的各个组件开启默认顺序(图文详解)
不多说,直接上干货! 如下是 Cloudera Manager集群官方默认的各个组件开启默认顺序. http://192.168.80.31:7180/cmf/clusters/1/express-a ...
- 【随笔】关于绝对定位absolute相对于父元素定位的问题
绝对定位absolute的官方定义: 设置为绝对定位的元素框从文档流完全删除,并相对于其包含块定位,包含块可能是文档中的另一个元素或者是初始包含块.元素原先在正常文档流中所占的空间会关闭,就好像该元素 ...
- Mutex,Monitor,lock,MethodImplAttribute,SynchronizedAttribute的用法差异
1)Mutex:进程之间的同步(互斥量). 2)lock/Monitor……:线程同步.其中lock是Monitor的简化版本(直接生成try{Monitor.Enter(……)}finally{Mo ...