kettle庖丁解牛第34篇之常用转换组件之Add XML
Posted 飞哥大数据
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了kettle庖丁解牛第34篇之常用转换组件之Add XML相关的知识,希望对你有一定的参考价值。
引言
上一篇文章中,讲解的是:我工作中遇到的一个实际案例,我们要周期性的从上游mysql数据库中抽取数据到本地hive库中,每次抽取的是最近6个月的数据。hive中的目标表是按月做的分区,把最近6个月的数据分6次循环插入覆盖到对应的分区中。
在本篇文章中,我们接着介绍:kettle中的Add XML组件
转换
转换(transaformation)是ETL解决方案中最主要的部分,它处理抽取、转换、加载各种对数据行的操作。
创建转换
我们要做的ETL操作,全是在转换中设计的,所以我们要先创建一个转换。
保存转换
给你新建的转换,起个名字,并保存
Add XML
可通过此组件将读取的数据内容,按照指定的设置,生成XML文件的格式数据。
a、内容
1、对未来生成的xml进行基本设置
2、下面是标签的选项列表
选项 | 描述 |
编码 | 指定未来生成的xml的编码 |
Output Value | 将读取的数据内容,生成xml文件格式后,它会以一个新字段名来传送到下一组件,这个新字段的名字在此设置 |
omit xml header | 省略xml头 |
omit null value from xml result | 从xml结果中省略空值 |
b、字段
1、设定生成XML文件格式的属性。
2、下面是标签的选项列表
选项 | 描述。 |
字段名 | 读入的源数据的字段名 |
Element name | 生成的xml中的属性名 |
类型 | 字段类型(String、Date、Number 等)。 |
格式 | 控制输入数据的格式(整数、有小数位、日期格式等) |
长度 | 对于Number:有效数的数量。 对于String:字符的长度。 对于Date:打印输出字符的长度(例如4 代表返回年份)。 |
精度 | 对于Number:浮点数的数量。 对于String,Date,Boolean:未使用。 |
Currency | 用来解释如$10,000.00 的数字。 |
Decimal | 进制 |
数字分组符号 | 数字分组符号 |
空 | 空 |
属性 | 属性 |
Attribute parent name | 父级属性名 |
好了,关于Add XML组件的每一个标签页,我都尽可能的讲解了一下。其实我日常工作中,并没有使用到这么多,常用的也就是那么几个。但是我们学习过程中,我还是讲得全一些吧,希望大家花一次时间学习,尽可能都有个大概的了解吧。下面我们实例操作一下吧,这样大更好的吸收和理解。
实战演示
我们把txt文件中的内容,通过Add XML组件设置后,生成一个XML文件格式的数据,然后通过文本文件输出组件进输出。
a、创建txt文件
我在D盘下,创建一个txt文件,命名为:文本数据。第1行是文件表头,从第2行开始是数据。此文件有3列数据,每1列通过";"分割。我使用的分割符,它是英文的。你要注意你的分割符,它是中文的?还是英文的?
b、创建转换
c、文本文件输入设置
d、预览记录
兄弟们,看到这个预览数据的界面,证明你已经成功的通过文本文件输入组件,把你磁盘上的一个txt文件,读取进来了。
e、Add XML设置
f、文本文件输出
g、运行转换
h、验证结果文件
可以看到此处构造的xml格式的数据,正好是我们利用文本文件输入的数据生成,到此就结束了。
结束语
本篇文章主要讲解了:Add XML组件的各种详细设置,实战演示了如何操作它来读取磁盘上的txt文件,然后生成XML格式的数据。
兄弟们,其实想和作是有一段距离的,你想着想着就没有了,可是你做着做着,它就落地了。
啥都别说了,兄弟们后面跟着我干就完了,我们依然掰开揉碎的方式去说。后续的内容更精彩,敬请期待,感谢兄弟们的关注!!
以上是关于kettle庖丁解牛第34篇之常用转换组件之Add XML的主要内容,如果未能解决你的问题,请参考以下文章