pentaho DI--- Tutorial (spoon)

Pentaho Data Integration (PDI, also called Kettle),是pentaho的etl工具.虽然etl工具一般都用在数据仓库环境中,可是,PDI还是可以做以下事情:

1)在数据库或应用系统间迁移数据.

2)把数据导成为检系统

3)大数据的批量倒入数据库。

4)系统整合。

5)数据清洗。

PDI的使用非常简单,每一步基本上都可以听过图形化的工具来完成,而不需要写代码。从这个意义上说,PDI是面向元数据的。

PDI既可以作为一个单独工具使用,也可以作为pentaho的整个软件包的一部分使用。作为一个单独的工具,PDI支持各种数据源的输入和输出,包括:

文本文件;数据表;各种商业化的数据库引擎。PDI允许你对数据进行各种精细的控制。

现在,我们通过传统的“Hello world”的例子,来展示使用PDI是多么的简单。

1)下载PDI;

2)spoon的简介:

spoon是一个图形化的工具,用来设计和测试PDI要使用的过程等。设计测试完毕后,可以在终端窗口运行。

In Spoon, you build Jobs and Transformations. PDI offers two methods to save them:

  1. Database repository
  2. Files

3)例子

 a)源数据是一个csv文件,内容如下:

    last_name, name
Suarez,Maria
Guimaraes,Joao
Rush,Jennifer
Ortiz,Camila
Rodriguez,Carmen
da Silva,Zoe

b)经过转换后,变为xml文件,期望值如下:

- <Rows>
  - <row>
        <msg>Hello, Maria!</msg>
    </row>
  - <row>
        <msg>Hello, Joao!</msg>
    </row>
  - <row>
        <msg>Hello, Jennifer!</msg>
    </row>
  - <row>
        <msg>Hello, Camila!</msg>
    </row>
  - <row>
        <msg>Hello, Carmen!</msg>
    </row>
  - <row>
        <msg>Hello, Zoe!</msg>
    </row>
  </Rows>

下面是具体操作:

 第一步:菜单选择:文件--〉新建--〉转换

第二步:设置。对转换过程进行设置。如上图。

命名并保存。

使用 Steps and Hops构建转换的骨架。

  在转换里面:step是最小的单元步骤。step的种类非常繁多,基本上,可以归纳成几类,比如input和output,还有其他归类。每一个step都认为是

完成一个工作,比如恢复数据集合等。

而hop,是在两个step之间数据转换流动的图示。包含数据的起始和传递方向。

我们这次转换例子,包含三个步骤:

1)读取csv文件。

2)加入问候语句。

3)存成xml文件。

  • To the left of the workspace is the Steps Palette. Select the Input category.
  • Drag the CSV file onto the workspace on the right.
  • Select the Scripting category.
  • Drag the Modified JavaScript Value icon to the workspace.
  • Select the Output category.
  • Drag the XML Output icon to the workspace.

 

下面,选择第一个step,按住shift键,拖到第二个step上。

同样操作第二个到第三个。

现在,配置第一个step,双击它。可以看到:

这里还有2个步骤:get fields,和preview。

 

 

 

转载于:https://www.cnblogs.com/aomi/archive/2013/05/16/3082505.html

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

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

相关文章

linux 系统调用

5.1.5 如何使用系统调用 如图5.2所示&#xff0c;用户应用可以通过两种方式使用系统调用。第一种方式是通过C库函数&#xff0c;包括系统调用在C库中的封装函数和其他普通函数。 图5.2 使用系统调用的两种方式 第二种方式是使用_syscall宏。2.6.18版本之前的内核&#xff0…

python3 csv读写_python3 csv

一、python3 csv 的中文乱码解决方案 将文件保存为 csv 格式的话&#xff0c;用记事本打开是没有问题的&#xff0c;但用excel 打开就会乱码&#xff0c;在网上找了些解决方法都是适用python2 这里提供下一个解决方案 >>> import csv >>> import codecs >…

通用返回_Springboot项目整合通用mapper

1.简介什么是通用mapper什么是通用mapper&#xff0c;用一句话概括就是&#xff0c;它就是一个辅助mybatis开发的组件&#xff0c;它不是替代mybatis&#xff0c;而是使mybatis更方便的开发。通用mapper提供极其方便的单表的增删改查&#xff0c;可以按照自己的需要使用通用方法…

差值平方和匹配_机器学习实战 | 简单目标识别与意图分析之模板匹配

(点击上方快速关注并设置为星标&#xff0c;一起学Python)一天&#xff0c;我正在学校楼下撸猫&#xff0c;同学发来消息&#xff0c;他的老师给了他一个研究课题&#xff0c;大致的方向是对图片或者视频里面的内容进行识别&#xff0c;然后判断意图&#xff0c;而且举了个例子…

如何创建_如何创建自己的微信圈子?圈子创建运营指南

原创&#xff1a;爱捣鼓的猿 袁小猴最近很多小伙伴在问微信圈子是什么&#xff0c;如何才能创建自己的微信圈子&#xff1f;于是小编花时间去研究了下&#xff0c;整理了一些微信圈子的规则&#xff0c;方便大家使用。一、微信圈子是什么&#xff0c;圈子入口&#xff1f;其实曾…

js 获取鼠标在画布的位置_云凤蝶如何打造媲美 sketch 的自由画布

在 Design Tools 中&#xff0c;组件间的对齐与吸附功能是否好用是决定其画布是否可以高效进行产品设计的关键因素。云凤蝶作为一款快速制作高品质中后台应用的 hpaPaaS 平台&#xff0c;同样拥有自由拖拽的可视化画布。那么在云凤蝶的自由画布中&#xff0c;对齐规则是怎样的&…

Linux下TI omap芯片 MUX 配置分析(以AM335X芯片为例)

在移植内核的时候&#xff0c;通常会遇到引脚复用&#xff08;MUX&#xff09;的配置问题。在现在的Linux内核中&#xff0c;对于TI的ARM芯片&#xff0c;早已经有了比较通用的MUX配置框架。这对于许多TI的芯片都是通用的&#xff0c;这次看AM335X的代码顺手写一下分析&#xf…

是网关吗_智能家居网关功能这么多,你都知道吗?

在科技发达的今天&#xff0c;我们的生活也开始趋向于智能化&#xff0c;智能家居已经迎来了新时代。电动窗帘、扫地机器人、电视、空调等电器都能智联wifi&#xff0c;可是使用的时候得一个个去控制&#xff0c;数量多的话懒癌们肯定嫌麻烦的。所以很多聪明的人都选择安装智能…

一个数据包大小是多少k_算法交流: 6046 数据包的调度机制 【2.6基本算法之动态规划】...

【题目描述】 6046 数据包的调度机制 By OIer14wa随着 Internet的迅猛发展,多媒体技术和电子商务应用日益广泛,Internet上的服务质量(QoS,Qualityof Service)问题已越来越受到重视。网络中采用的数据包调度机制与网络的服务质量 QoS 有着密切的关系。研究表明传统的基于队列的调…

iOS vs. Android,应用设计该如何对症下药?

摘要&#xff1a;从iOS到Android&#xff0c;两大平台应用设计有何不同&#xff1f;又都存在什么样的问题&#xff1f;Android定制性太高&#xff0c;该如何进行UI设计&#xff1f;在CMDN CLUB第28期活动中&#xff0c;咕咚网高级产品经理王磊&#xff0c;从iOS、Android谈起&a…

cs8900a网卡驱动--寄存器

1. CS8900内部有一个4k的RAM用于访问其内部寄存器&#xff0c;称为PacketPage。 2. LineCTL 网卡状态设置 从上图看到&#xff0c;此寄存器的6&#xff0c;7位用于设置网卡的收发使能。8&#xff0c;9位用于设置网卡状态。是10BASE-T还是 AUI。下面这图更详细介绍了8&…

jQuery图表插件 JS Charts

JS Charts 是一款免费的基于javascript的轻量级插件&#xff0c;用JS Charts 绘制图表是很轻松地事,因为你只需要关心客户端的脚本。 Loading...Loading...Loading...Loading...Loading...Loading...Loading...Loading...Loading...Loading...Loading...转载于:https://www.cnb…

使用正则把数字前面的符号替换_正则表达式(一) 基本表达式

定义 正则表达式(Regular Expression)用某种模式去匹配一类字符串的公式&#xff0c;主要用来描述字符串匹配的工具。 匹配文本或字符存在不止一个部分满足给定的正则表达式&#xff0c;这是每一个这样的部分都被称为一个匹配。 匹配分为以下三种类型&#xff1a; 形容词性的匹…

jsp思维导图_2019年经济法基础思维导图

参加2019年初级考试的考生们明天可以打印准考证啦时间&#xff1a;2019.4.26-5.5日(传送门&#xff1a;http://kjbm8.mof.gov.cn/ksbm/usercxzkz.jsp)为了帮助大家快速梳理教材考点&#xff0c;下面蓝星职业教育为大家整理了初级会计职称考试各章节思维导图&#xff0c;希望给大…

海量数据持久层解决方案_爱数AnyBackup重磅发布海量非结构化数据超可用解决方案...

海量非结构化数据有三大备份恢复问题一直没有得到有效解决&#xff1a;备份慢、恢复慢、备份数据不可查询。这三大问题已经对行业数字化转型造成了重大阻碍。今天&#xff0c;AnyBackup Family 7线上发布会——重磅发布海量非结构化数据超可用解决方案。AnyBackup以创新超可用技…

wpf 使子ui元素可视区域不超过父元素_对游戏UI设计的一点思考

UI决定了一个游戏的初体验&#xff0c;甚至决定了玩家的初始留存&#xff0c;甚至可以说决定了一个游戏的品质&#xff0c;虽然看起来是表象的&#xff0c;却是直指游戏核心的。简单讲&#xff0c;玩家认可一款游戏永远都是造型场景好&#xff0c;剧情好&#xff0c;画质棒&…

grpc入门到精通_Spring Cloud 从入门到精通(一)Nacos 服务中心初探

点击上方蓝色“Java精选”&#xff0c;选择“设为星标”技术文章第一时间送达&#xff01;什么是Nacos&#xff1f;Nacos是阿里巴巴开源的项目&#xff0c;是一个更易于帮助构建云原生应用的动态服务发现、配置管理和服务管理平台。Nacos英文全称是Dynamic Naming and Configur…

百度新年贪吃蛇效果

闲来无事&#xff0c;在网上闲逛的时候开到有人说百度蛇年的贪吃蛇logo小游戏不错&#xff0c;于是乎就自己仿照写了一个。&#xff08;注&#xff1a;所有素材都来自百度&#xff09; 效果图 用到的图片 1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional…

贝叶斯公式设b_数据分析经典模型——朴素贝叶斯

编辑导语&#xff1a;做过数据分析的人&#xff0c;想必对贝叶斯模型都不会陌生。贝叶斯预测模型是运用贝叶斯统计进行的一种预测&#xff0c;不同于一般的统计方法&#xff0c;其不仅利用模型信息和数据信息&#xff0c;而且充分利用先验信息。通过实证分析的方法&#xff0c;…

Asterisk使用数据库配置方法

安装&#xff1a; 1、安装 unixODBC unixODBC-devel libtool-ltdl libtool-ltdl-devel &#xff0c;为了使asterisk支持数据库存储&#xff08;必须先安装&#xff09; 2、安装 mysql 并设置好 C_INCLUDE_PATH 和 LD_LIBRARY_PATH 3、从 http://www.asterisk.org/downloads 下载…