使用kettle把XML文档转换成数据表结构



在kettle中Get data from xml
步骤和 XML Input Stream (StAX)步骤读取并解析xml文件。Get data from xml
步骤使用dom方式解析,比较消耗内存,当文件很大时,就不可取。XML Input Stream (StAX)步骤使用完全不同的方式解析大而复杂的文件,且能快速载入数据,所以建议使用该步骤。

下面通过示例来展示如何使用该步骤,源xml文件内容如下:

<?xml version="1.0"?>

<timeseries>

<measurementyear="2000">

<!-- value ofitem named A in 2000 is 8.5 -->

<itemname="A">8.5</item>

<itemname="B">9.8</item>

</measurement>

<measurementyear="2001">

<itemname="A">12.2</item>

<itemname="B">9.4</item>

</measurement>

<measurementyear="2002">

<itemname="A">11.1</item>

<itemname="B">7.2</item>

</measurement>

</timeseries>

解析成数据表的格式数据如下:

使用下面步骤去实现该功能

  1. xmlinput stream(stax):流方式载入xml文档
  2. 过滤行:去除掉不相关的文档元素
  3. switch/case步骤:分离第一级(measurement)和第二级(item)
  4. Rowdenormaliser:把第二级的多行转成一行(行专列)
  5. MergeJoin:合并子元素到第一级行(增加列)

示例可以从这里下载

Rowdenormaliser步骤

     
最容易理解执行情况的方式,通过预览没步骤的执行结果(5.x版本可以直接查看数据流),下图显示该步骤的执行原理。

MergeJoin
步骤

把两个来自不同数据源的流进行合并,其实和SQL中join原理是一样的,只不过在kettle中是针对流数据,不是表数据。非常重要的是:流数据要根据键(join中使用的)排序,本列中第一步载入xml文件时,已经排序,所以不再选哟“sort
rows”步骤。

时间: 2024-09-27 14:54:11

使用kettle把XML文档转换成数据表结构的相关文章

java将XML文档转换成json格式数据

功能 将xml文档转换成json格式数据 说明 依赖包: 1. jdom-2.0.2.jar : xml解析工具包; 2. fastjson-1.1.36.jar : 阿里巴巴研发的高性能json工具包 程序源码 package com.xxx.open.pay.util; import com.alibaba.fastjson.JSONObject; import org.jdom2.Element; import org.jdom2.JDOMException; import org.jdo

java将office文档pdf文档转换成swf文件在线预览

java将office文档pdf文档转换成swf文件在线预览 第一步,安装openoffice.org   openoffice.org是一套sun的开源office办公套件,能在widows,linux,solaris等操作系统上执行. 主要模块有writer(文本文档),impress(演示文稿),Calc(电子表格),Draw(绘图),Math(公式),base(数据库) 笔者下载的是openoffice.org 3.3.0.下载完直接安装即可.      但是,我们还需要启动openof

将Latex tex文档转换成 word文档(上)

有时候逼不得已,必须得将自己精心排版好的latex 文档 转换成word 给别人编辑 以下提供一个方法 下载 Tex2Word 工具,地址我的网盘 安装 解压后安装,使用默认安装路径 安装过程中.点击使用安装 破解软件.依照安装包里给出方法将 C:\Program Files\tex2word C:\Program Files\Microsoft Office\OFFICE11\STARTUP\ C:\Program Files\Common Files\Microsoft Shared\TEX

如何把ppt文档转换成pdf

如何把ppt文档转换成pdf 如何把ppt转换成pdf?你是否会在制作ppt的时候想将其转换成PDF格式而上传至网络上与网友共享?使用迅捷ppt转换成pdf转换器就可以很轻松的解决这一问题. 具体操作过程如下: 1 首先手头要有一份ppt演示稿(文稿可以是单个或是多个).在在电脑上桌面上新建2个文件夹,一个取名为“ppt”,另一个命名为“pdf”; 2.双击开打ppt转pdf转换软件(这里以ppt转pdf为例).在“菜单栏”中选择“Office转pdf”; 3.点击添加文件将此“ppt”格式文件

如何将ppt文档转换成pdf

如何将ppt文档转换成pdfpdf转换成ppt,也许你很容易解决,但是反之把ppt转换成pdf你是否知道方法呢?曾经我很笨拙地将ppt里面的文字一段段地粘贴出来,整个过程花费了很多时间,但最后在校对的时候发现还是出现了错误,那个工作量就可想而知了...... 经过后面的不断测试,还是被我幸运的找到了一款非常好用的ppt转换成pdf转换器,其不但方便,还可以起到保护源文件的作用.无需其他高级程序,只需要一个软件就能实现. (一)准备: 1.迅捷ppt转pdf转换器正式版;       2.500张

C#实现文档转换成PDF

网上有很多将doc.ppt.xls等类型的文档转换成pdf的方法,目前了解到的有两大类: 1.使用虚拟打印机将doc.ppt.xls等类型的文档 2.使用OFFICE COM组件 我采用了第二种方法实现,初步测试通过,还没有放到服务器上进行批量实时转换的测试. 下面开始介绍详细步骤: 1.安装OFFICE 2007.我安装的是OFFICE 2007 Professional Plus版.安装后提示要激活,开始没有激活也能使用,只是每次一打开office软件就提示要激活,实在忍受不了,就下了一个激

将Latex tex文档转换成 word文档

有时候逼不得已,必须得将自己精心排版好的latex 文档 转换成word 给别人编辑 下面提供一个方法 下载 Tex2Word 工具,地址我的网盘 安装 解压后安装,使用默认安装路径 安装过程中,点击使用安装 破解软件,按照安装包里给出方法将 C:\Program Files\tex2word C:\Program Files\Microsoft Office\OFFICE11\STARTUP\ C:\Program Files\Common Files\Microsoft Shared\TEX

浅析如何将XML文档解析成java对象(待梳理)

User类 public class User implements Serializable { private static final long serialVersionUID = 7506854293380407436L; private Integer id; private String loginName; private String password; private Date createDate; private String username; public User(

免费好用的图片识别小程序,纸质文档转换成电子档用微信这个免费功能只要3秒!

电脑日常工作中,经常需要把纸质文档整理成电子档,手动录入既耗时,效率还低,尤其纸质文档多的时候,靠手动录入根本不是办法,该怎么办呢?不要急,接下来小编教大家一招,3秒钟就能把纸质文档转换成电子档. 具体操作方法如下: 打开微信--小程序--搜索[迅捷文字识别],然后打开它. 可以看到它有2大功能,我们今天要用到第一个功能[照片.拍照],拍照识别,把纸质文档拍下来,然后点击[使用照片],只要3秒文字就识别出来啦. 文字识别好以后,点击最下方的[复制]功能,就可以把文字内容粘贴到备忘录或者Word文