2016/11/10 kettle概述

        ETL(Extract-Transform-Load,即抽取,转换,加载),数据仓库技术,是用来处理将数据从来源(以前做的项目)经过抽取,转换,加载到达目的端(正在做的项目)的过程。也就是新的项目需要使用以前项目数据库中的数据,ETL就是解决这个问题的。

        ETL实现共同注意点:正确性,完整性,一致性,完备性,有效性,时效性,可获取性等,也就是说无论我们使用什么工具,来实现ETL技术时,达到这几个方面,才算是质量过关的。

        kettle则是其中的一种工具,其它还有:Informatica,Datastage,OWB,微软的DTS等等。好,下边简单说说kettle。

        kettle是一款国外开源的ETL工具,纯Java编写,可以在Windows,Linux,Unix上运行,数据抽取高效稳定。kettle中文名俗称“水壶”,开发目的是将各种数据放到一个壶中,然后经过各种处理加工,以特定的格式流出。

        kettle转换的设计包括几个方面:资源库,数据库连接,作业(job),转换(trans),步骤(step)。形象的举一个例子:资源库相当于我们一个Java项目,数据库连接相当于我们Java项目中的连接数据库,Job相当于Java项目中的一条线,而Trans相当于Java中的一个个类,Step则是类中的方法。所以,kettle需要我们做的就是建好资源库,连接好数据库,建立转换,写好类中的每个步骤,将转换连接起来组成任务(转换也可以独立执行)。

        最后看一下什么时候适合使用kettle。这样一个项目A,这个项目A需要实施到很多家企业,而项目A需要用到每家企业的数据库基础数据,例如员工,组织结构,客户,供应商等等一些基础数据,这时候kettle就可以很轻松的完成任务。也就是说,我们的项目需要用到大量的数据库之间迁移数据。

摘录自:http://blog.csdn.net/liujiahan629629/article/details/47061727

转载于:https://www.cnblogs.com/zcr3108346262/p/6049595.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/256012.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【深度学习】——非极大值抑制(nms/soft-nms)

目录 一、相关概念 1、iou 1)理论计算 2)Python代码(代码参考yolov3模型util.py文件) 2、nms 1)基本思路 2)标准nms和soft-nms 3)Python代码实现(yolov3中util.py文件,增加了…

移动服务安全现状分析!

2019独角兽企业重金招聘Python工程师标准>>> 由于Android开源的环境,导致Android的整体环境都存在很多不安全的因素,同时用户在移动APP客户端的便捷应用,也给用户带来了巨大的安全隐患。未经过移动服务安全加固的APP存在被静态反编…

封装不同类模板的随机数生成器

最近准备刷题,打算简单封装下随机数生成器,方便产生测试数据。C11的STL提供了很多分布类型,我比较常用的是均匀分布,均匀分布的值有两种类型,一类是整数,另一类是浮点数,STL根据值的类型定义了两…

Log4j详细设置说明

1. 动态的改变记录级别和策略,即修改log4j.properties,不需要重启Web应用,这需要在web.xml中设置一下。2. 把log文件定在 /WEB-INF/logs/ 而不需要写绝对路径。3. 可以把log4j.properties和其他properties一起放在/WEB-INF/ ,而不是Class-Pat…

【机器学习】——卷积神经网络(Keras)修改学习率(定值+自适应)

目录 1、直接获取现有模型的学习率 2、打印显示学习率 3、调整学习率 1)1.LearningRateScheduler 2)ReduceLROnPlateau 利用tensorflow的Keras模块我们可以建立我们自己定义的卷积神经网络模型,但是一般不会触碰到学习率这个问题&#x…

使用Docker构建你的第一个服务

1. 感受一下Docker的便捷 项目源码 https://github.com/MoonShining/dockernize-grape-helloworld clone下来以后运行,cd到项目目录下,运行 docker build -t api-sample . docker run -p 8080:8080 api-sample:latest 复制代码就可以访问localhost:8080看到效果了. …

MyEclipse连接MySQL

在官网http://www.mysql.com/downloads/下载数据库连接驱动 本文中使用驱动版本为mysql-connector-java-5.1.40 一、创建一个java测试项目MySQLConnectorsTest 在项目下穿件一个lib文件夹用来存放MySQL驱动包。 右键驱动包build path进行add添加操作,打开Referenced…

在Windows系统中配置Google AddressSanitizer

Google AddressSanitizer简介 AddressSanitizer (ASan) 是 C 和 C 的内存错误检测软件,它可以检测: 释放指针后继续使用堆缓冲区溢出栈缓冲区溢出全局缓冲区溢出返回后继续使用在范围之外继续使用初始化顺序的bug内存泄漏 在 Windows 系统中&#xff…

【剑指offer】——求出一个正整数的质数因子(Python)

目录 一、题目描述 二、思路 1、短除法 2、平方根法 一、题目描述 功能:输入一个正整数,按照从小到大的顺序输出它的所有质因子(重复的也要列举)(如180的质因子为2 2 3 3 5 ) 最后一个数后面也要有空格 输入描述…

Python字符串笔录

python字符串操作实方法,包括了几乎所有常用的python字符串操作,如字符串的替换、删除、截取、复制、连接、比较、查找、分割等 1、去空格及特殊符号 >>> s 123 >>> s.strip() # 去除所有空格123 >>> s1 123 >>&…

第九周进度条

第六周学习进度条 星期一 星期二 星期三 星期四 星期五 星期六 星期日 所花时间 (包括上课) 无 上午8:00-9:50 无 无 下午4:00-5:00 下午3:00-5:30 代码量(行) 0行 260行 0行 0行 0行 0…

C++ STL实现的优先队列( priority_queue )

本文参考的源码版本:gcc version 8.1.0 (x86_64-posix-seh-rev0, Built by MinGW-W64 project)。 priority_queue 本质是容器适配器,它对内部容器的元素有自己的管理方式,而 priority_queue 实际维护的是一个二叉堆。STL中 priority_queue 的…

【Python函数】——sort,sorted

1、sorted和sort的常规使用 2、关于自定义比较函数 3、试验 from functools import cmp_to_key ll [(2,3,10),(1,2,3),(5,6,7),(2,5,10),(2,4,10)]# 根据一个维度进行排序,这里根据第一维排序 ll1 sorted(ll,key lambda x:x[0]) print(根据一个维度进行排序&a…

生成相关矩阵

U是X(差异矩阵)各列向量取方向后形成的矩阵,CU^T * U 即相关矩阵,即各列向量两两的夹角,(夹角越小说明关联度越高) clc avg_e66;avg_m66;avg_s76; x1[61 63 78 65 63] -avg_e; x2[53 73 61 84 5…

Java关于Properties用法的总结(一)

最近项目中有一个这样的需求,要做一个定时任务功能,定时备份数据库的操表,将表数据写入txt文件。因为文件的读写路径可能需要随时改动,所以写死或者写成静态变量都不方便,就考虑使用配置文件,这里总结些配置…

【tensorflow】——tensorboard可视化计算图以及参数曲线图loss图

参考文献: https://zhuanlan.zhihu.com/p/71328244 目录 1.可视化计算图 2.可视化参数 3. 远程tensorboard 4、报错 真是出来混迟早是要还的,之前一直拒绝学习Tensorboard,因为实在是有替代方案,直到发现到了不得不用的地步…

Lab01:Xv6 and Unix utilities

实验测试方法 实验的测试方法主要有2个: 进入到Xv6系统中,执行相应的命令使用实验提供的评分测试 对于单个实验,可以使用 make GRADEFLAGSapplication grade其中application为要测试的实验应用,例如sleep实验对应的评分测试命令…

jQuery学习- 位置选择器

<!DOCTYPE html> <html><head><meta charset"UTF-8"><title>位置选择器</title><script src"js/jquery.js"></script><script type"text/javascript">$(function(){//获取第一个li$(&quo…

数据类型之元组

存多个值&#xff0c;对比列表来说&#xff0c;元组不可变&#xff08;是可以当做字典的key的&#xff09;&#xff0c;主要是用来读 与列表类型比&#xff0c;只不过[]换成()age(11,22,33,44,55) #本质agetuple((11,22,33,44,55)) print(type(age)) age[0]12 t(1,2,[a,b]) pri…