[Kettle] Excel输入

Excel文件采用表格的形式,数据显示直观,操作方便

Excel文件采用工作表存储数据,一个文件有多张不同名称的工作表,分别存放相同字段或不同字段的数据

数据源

物理成绩(Kettle数据集2).xls https://download.csdn.net/download/Hudas/88509178?spm=1001.2014.3001.5501

1. 建立【Excel输入】转换工程

使用Ctrl+N快捷键,创建【转换1】转换工程,单击【核心对象】选项卡,展开【输入】对象,选中【Excel输入】组件,并拖曳到右边工作区中,如下图所示

2. 设置【Excel输入】组件参数

双击【Excel输入】组件,弹出【Excel输入】对话框,其中显示默认的【文件】对话框,如下图所示

需要注意的是,【Excel输入】对话框下方的【预览记录】按钮是灰色的,表示不能单击该按钮

在【Excel输入】对话框中,包含组件的基础参数,以及【文件】【工作表】【内容】【错误处理】【字段】【其他输出字段】6个选项卡的参数

【文件】【工作表】【字段】选项卡的参数是必填项 (没有设置参数时,选项卡名称前面会显示"!"符号,表示是必填项,设置参数后"!"符号会消失),并且必须按照【文件】【工作表】【字段】选项卡的顺序设置,其他为可选项

【文件】选项卡参数

在【文件】选项卡参数的说明如下表所示

|-------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| 参数名称 | 说明 |
| 表格类型(引擎) | 表示Excel文件的表格类型,类型如下 Excel 97-2003 XLS:JXL软件后端提供向后兼容类型 Excel 2007 XLSX (Apache POI):读取所有已知的Excel文件类型 Excel 2007 XLSX (Apache POI流):读取大型Excel文件 Open Office ODS:使用ODFDOM引擎读取OpenOffice电子表格 默认为Excel 97-2003 XLS |
| 文件或目录 | 表示要输入的Excel文件或所在的目录,可以单击【浏览】按钮获取Excel文件或目录。默认值为空 |
| 正则表达式 | 表示使用正则表达式,获取文件相应的Excel文件。使用正则表达式,可以动态匹配获取多个Excel文件。默认值为空 |
| 正则表达式(排除) | 表示排除型的正则表达式,与正则表达式相反,使用排除型的正则表达式,排除掉匹配文件,而获取不匹配的Excel文件。默认值为空 |
| password | 表示读取Excel文件的密码。一些Excel文件有读取密码,因此要输入密码才能获取,默认值为空 |
| 文件和目录 | 表示选中的Excel文件或目录,单击【增加】按钮,读入经过浏览获取的文件和目录 |
| 通配符号 | 表示使用通配符号选中Excel文件或目录。配置符合通配符号规则的多个Excel文件 |
| 通配符号(排除) | 表示使用排除性通配符号选中Excel文件或目录。配置符合通配符号(排除)规则外的其他多个Excel文件 |
| 要求 | 表示配置所需的源文件的位置 |
| 包括子目录 | 表示是否包括子目录的文件 |
| 选中的文件 | 表示选中的Excel文件列表。通过单击【增加】按钮将文件或目录添加到列表中,并进行参数设置,参数有:【文件/目录】【通配符号】【通配符号(排除)】【要求】【包括子目录】等参数,有关参数的说明如下表所示。至少要有一个选中的Excel文件,默认值为空 |
| 从前面的步骤获取文件名 | 表示是否从前面组件(步骤)读取文件名,如果选择是,则不用本组件获取Excel文件,而是从前面步骤的组件中读取文件、并保存文件的字段名。默认值为空 |

在【文件】选项卡中,设置参数,并导入"物理成绩.xls"文件,步骤如下所示

(1) 浏览导入Excel文件

单击【浏览(B)...】按钮,在计算机上浏览并导入"物理成绩.xls"文件,如下图所示

(2) 添加并编辑Excel文件

单击【增加】按钮,将【文件或目录】输入框中的"C:\Users\HP\Desktop\物理成绩.xls"文件,添加至【选中的文件】表中,如下图所示

如果选中的文件有问题,那么单击【删除】或【编辑】按钮,即可对选中的Excel文件进行编辑。其中,单击【选中的文件】表的行号,再单击【删除】按钮,即可删除选中所在行的文件

(3) 查看被选中的文件名称

单击【显示文件名称...】按钮,弹出【文件读取】对话框,查看被选中读取的文件,如下图所示

重复步骤(1)~(3),可以添加多个Excel文件,并查看读取的文件名称

提示Tips

另外,如果需要导入同一个目录下的多份名称类似的文件,如导入同一个目录下名称分别为"物理成绩.xls""物理成绩1.xls"和"物理成绩2.xls"的文件

我们可以使用通配符的方式导入,具体操作是在【选中的文件】参数表中,在【文件/目录】输入框中键入"C:\Users\HP\Desktop\",在【通配符号】输入框中键入"物理成绩*.\.xls",可以一次性读入这3个文件,如图所示

【工作表】选项卡参数

单击【工作表】选项卡,如下图所示

在【要读取的工作表列表】表中设置工作表参数,获取导入的Excel文件的工作表,【工作表】选项卡参数的说明如下表所示

|----------|------------------------------------------------------------------------------|
| 参数名称 | 说明 |
| 工作表名称 | 表示Excel文件的工作表名称。可以是一个Excel文件、多个工作表,也可以是多个Excel文件、多个工作表。不同的文件,工作表名称可以相同。默认值为空 |
| 起始行 | 表示要读取的工作表中的开始行,行号是从0开始。默认值为空 |
| 起始列 | 表示要读取的工作表中的开始列,列号是从0开始。默认值为空 |

在【工作表】选项卡中,设置导入的Excel文件的工作表参数,步骤如下所示

(1) 获取选中文件的工作表

单击【获取工作表名称...】按钮,弹出【输入列表】对话框,左边【可用项目】列表列出选中文件的所有工作表,如"物理成绩.xls"文件的"Sheet1"工作表,而右边【你的选择】列表列出被选中的工作表,如图所示

(2)选择工作表

在【输入列表】对话框中,单击中间的【>】【>>】【<】【<<】按钮,可以在左、右列表中,选中或移除工作表,有关按钮说明如下表所示

|--------|-----------------------------------------------------------|
| 按钮 | 说明 |
| > | 表示右移按钮,选择左边【可用项目】列表中一个工作表,移到右边【你的选择】列表中 |
| < | 表示左移按钮,将右边【你的选择】列表中的一个工作表移回到左边【可用项目】列表中,与【>】按钮操作相反 |
| >> | 表示右移批处理按钮,将左边【可用项目】列表中的所有工作表,移到右边【你的选择】列表中 |
| << | 表示左移批处理按钮,将右边【你的选择】列表中的所有工作表,移回到左边【可用项目】列表中,与【>>】按钮操作相反 |

在【输入列表】对话框中,将左边【可用项目】工作表"Sheet1"选中移到右边【你的选择】表中

(3) 设置选中的工作表参数

单击【确定】按钮,将【你的选择】列表选中的"Sheet1"工作表添加至【要读取的工作表列表】表中进行参数设置,【起始行】和【起始列】参数都设置为"0",此时完成【工作表】选项卡参数的设置,如下图所示

提示Tips

如果导入的Excel文件中的每个工作表的字段结构都相同,那么在【要读取的工作表列表】表中的第1行,不设置任何工作表名称(即【工作表名称】输入栏留空),只需设置第1行的【起始行】和【起始列】输入栏参数,这样的设置是读取所有的工作表,即第1行将用于所有工作表

【字段】选项卡参数

单击【字段】选项卡,如下图所示

在【字段】选项卡中,设置"物理成绩.xls"文件中字段的参数,步骤如下所示

(1) 获取字段

单击【获取头部数据的字段...】按钮,添加字段到【字段】表中设置字段参数,如下图所示

(2) 设置字段参数

对字段参数进行设置,如下图所示,此时完成【字段】选项卡参数的设置

当获取字段后,【Excel输入】对话框下方【预览记录】按键的字体显示为黑色,说明此时可以预览数据

提示Tips

需要说明的是,如果有些Excel文件的文件头部没有字段数据,那么系统会自动生成默认的字段名称,也可以重新编辑字段名称,字段的类型、长度等字段属性

【内容】选项卡参数

单击【内容】选项卡,如下图所示

对读取Excel文件内容进行参数设置,一般按照缺省值配置,参数的说明如下表所示

|----------|----------------------------------------------------------------------------------|
| 参数名称 | 说明 |
| 头部 | 表示对选中的工作表是否包含表头行。默认值为√ |
| 非空记录 | 表示是否在输出中不出现空行(记录)。默认值为√ |
| 停在空记录 | 表示当读取记录遇到空行时,选择是否停止读取文件的当前工作表。默认值为空 |
| 限制 | 表示限制生成的记录数量。当设置为0时,结果不受限制。默认值为0 |
| 编码 | 表示读入的文本文件编码。第一次使用时,Kettle会在系统中搜索可用的编码。使用Unicode的,请指定UTF-8或UTF-16。默认值为Kettle系统的编码 |

【错误处理】选项卡参数

单击【错误处理】选项卡,如下图所示,可对获取Excel文件时产生的错误处理参数进行设置,检查和定位错误位置,一般按照缺省值配置

【其他输出字段】选项卡参数

单击【其他输出字段】选项卡,如下图所示

对Excel文件的其他输出字段参数进行设置,用于指定处理文件的附加信息,默认值为空,一般按照缺省值配置,有关参数的说明如下表所示

|------------|-------------------------------|
| 字段参数 | 说明 |
| 文件名称字段 | 表示指定完整的文件名称和扩展名的字段。默认值为空 |
| 工作表名称字段 | 表示指定要使用的工作表名称的字段。默认值为空 |
| 表单的行号列 | 表示指定要使用的当前工作表行号字段。默认值为空 |
| 行号列 | 表示指定写入行数的字段。默认值为空 |
| 文件名字段 | 表示指定文件名但没有路径信息、但有扩展名的字段。默认值为空 |
| 扩展字段 | 表示指定文件名扩展名的字段。默认值为空 |
| 路径字段 | 表示指定以操作系统格式包含路径的字段。默认值为空 |
| 文件大小字段 | 表示指定文件数据大小的字段。默认值为空 |
| 是否为文件隐藏字段 | 表示文件是否为隐藏的字段(布尔值)。默认值为空 |
| Uri字段 | 表示指定包含Uri的字段。默认值为空 |
| Root Uri字段 | 表示指定仅包含uri的根部分的字段。默认值为空 |

3. 预览结果数据

设置好字段参数后,单击【预览记录】按钮,弹出【预览数据数量】对话框,要预览的行数采用默认值,并单击【确定】按钮

弹出【预览数据】对话框,展示Excel输入的数据,如下图所示

相关推荐
程序员梅雨11 小时前
【从零开始学习数据仓库 | 第二篇】: 拉链表 & 数仓分层
大数据·数据仓库·学习
roman_日积跬步-终至千里14 小时前
数仓开发的三层责任:业务定义、模型设计与 SQL 实现
数据库·数据仓库·sql·数据建模
geovindu2 天前
SQL Data Sampling and Approximation Techniques using postgreSQL 18
大数据·数据库·数据仓库·sql·postgresql·数据库开发·数据库架构
程序员梅雨2 天前
【从零开始学习数据仓库 | 第一篇】:维度建模理论
大数据·数据仓库·学习·阿里云·数据分析
棣廷3 天前
初识数据仓库——数仓分层到DataX数据采集
数据仓库
棣廷3 天前
初识Hive(2)
数据仓库·hive·hadoop
geovindu4 天前
Pivoting and Unpivoting Data in SQL using postgreSQL 18
大数据·数据库·数据仓库·sql·postgresql·数据库开发·数据库架构
数据库小学妹4 天前
OLAP数据库怎么选?看清OLTP、数仓、湖仓边界
数据仓库·mpp·列式存储·联机分析处理·数据库选型·olap数据库
程序 代码狂人4 天前
切片表与分区表的区别(数据开发面试版)
java·大数据·开发语言·数据仓库·算法