还在为异构数据源发愁?一文掌握助睿ETL抽取CSV、TXT、Excel的三种姿势
一、实验背景
1.1案例说明
ETL流程的起点,在于从各类数据源中采集原始数据,而这一环节往往因数据来源的多样性和异构性而充满挑战。在传统数仓建设过程中,数据多取自企业内部的事务处理系统,如财务软件或ERP平台,其底层通常依托关系型数据库(例如MySQL、Oracle、SQL Server)。对此类场景,通过JDBC接口直接连接数据库进行抽取是常规做法。然而,一旦面对非关系型存储、缺乏兼容数据库驱动的情形,抽取操作便会变得棘手。此外,数据归属权或部署位置的限制也常构成障碍——例如,当数据归属于外部合作方(如供应商、客户),或存储于企业防火墙之外时,直接访问数据库往往不被允许,此时采用文件交换方式则成为一种稳妥且高效的替代方案。
本案例聚焦于助睿ETL平台所提供的多种文件数据读取能力,涵盖CSV、TXT及Excel等常见格式,旨在展示如何借助内置组件,实现对异构文件数据的快速识别、解析与抽取,从而简化多样化文件源的处理流程。
1.2 实验环境
(1)平台名称:助睿在线实验平台
(2)访问地址:https://lab.guilian.cn/
(3)使用产品:助睿数智(Uniplore)- AI驱动的一站式零代码数据智能服务平台系统
(4)子平台:助睿ETL数据集成平台
(5)产品官网:Uniplore iDIS-大数据智能全流程服务平台-BI数据可视化工具
该平台支持从数据接入、ETL处理、机器学习建模到可视化展示的全链路零代码操作,适用于高校教学与企业数据加工。
1.3 数据准备
以下数据文件均从助睿 ETL 平台的「公共空间」中获取:
(1)本案例中「从 CSV 文件中读取数据」小节,将使用 project.csv 数据文件;
(2)本案例中「从文本文件中读取数据」小节,将使用足球比赛数据文件:usa_201209.txt;
(3)本案例中「从 Excel 中读取数据」小节,将使用购房者信息数据文件:custinfo.xlsx。
二、实验步骤
2.1数据准备
登录助睿 ETL 平台,选择「数据集成」模块,找到「我的项目」,点击项目右侧的「…」按钮,选择「打开项目」,进入目标项目页面;

点击页面右侧的「公共空间」,切换至「数据资源」标签页,找到资源名称为 porject.csv 的文件,点击该文件右侧的「更多」按钮,选择「导出」选项;

在弹出的「导出数据资源到项目空间」窗口中,确认待导出文件为 project.csv,选择导出路径(如 / 根目录),点击「确定」按钮完成导出到「文件库」中。

切换至左侧导航栏的「文件库」标签页,点击右键菜单中的「刷新」按钮,查看已导出至项目空间的文件资源。

按照同样的方法将剩下两个表:custinfo.xlsx和usa_201209.txt也导出到同一目录下。
2.2从 CSV 文件中读取数据
本案例将通过助睿 ETL 编写工作流,实现对 CSV 文件数据的提取与加工。首先从 CSV 文件中提取项目信息数据,然后以项目的【start_date】(开工日期)和【end_date】(结束日期),计算项目执行天数,并基于该天数设定项目的【performance】(绩效)等级,最终完成项目绩效的自动化评估与数据标准化。实现逻辑如下:通过「CSV 文件输入」组件从 CSV 文件中读取原始项目数据,使用「字段选择」组件筛选并保留后续计算所需的关键字段;在「计算器」组件中新建【diff_date】字段,用于计算开工日期与结束日期之间的间隔天数;完成天数计算后,通过「数值范围」组件,根据间隔天数的区间规则自动生成并设置新的输出字段【performance】的值,完成项目绩效的判定。
具体操作如下:
新建转换流,进入项目切换到「组件库」标签页,拖拽「CSV 文件输入」组件至画布,配置如下图所示:

双击「CSV 文件输入」组件,在弹出的窗口中单击 “浏览文件”,通过文件浏览器组件选择目标文件,配置如下图所示:

在文件浏览器组件中选中需要读取的 CSV 文件「porject.csv」,点击确定,文件浏览器组件会自动解析文件路径,并回填至「CSV 文件输入」组件中,配置如下图所示:

在完成文件路径的填写后,可通过「CSV 文件输入」组件的获取字段功能,自动解析CSV文件结构,提取文件中的字段。具体操作:在「CSV 文件输入」组件下方的数据区域点击右键,选择 “获取字段”,配置如下图所示:

在完成数据字段配置后,可通过组件的「预览」功能查看数据读取结果,验证数据是否正常加载、字段是否解析正确,结果如下图所示:

在上述过程中,我们完成了CSV文件的数据解析与读取。接下来我们将对读取的数据进行初步加工。将「字段选择」组件拖至画布,建立从「CSV 文件输入」组件到「字段选择」组件的连接,配置如下图所示:

双击「字段选择」组件打开组件配置窗口,在默认的Tab页签(选择和修改)中右键点击并选择「获取字段」,获取前一个组件「CSV 文件输入」传递过来的字段信息,配置如下图所示:

在「字段选择」组件的配置窗口中,选择和修改页签提供了字段管理功能,可对字段信息如名称、长度、精度等进行调整。在本节案例中,不涉及到字段信息的调整,所以这里保持默认即可,配置如下图所示:

完成「字段选择」组件的配置后,拖拽「计算器」组件至画布,建立从「字段选择」组件到「计算器」组件的连接,此时弹出的提示框中有两个可选值:主输出步骤和错误步骤。主输出步骤是指正常数据的处理链路,错误步骤是错误数据的处理链路。因为字段选择组件涉及到字段信息的修改,字段类型、长度,数据在进行类型、长度等转换过程中会出错,这些出错的数据就会流入错误数据处理链路,而正常的数据就会流入主输出数据链路。在本节案例中,我们只处理正常数据,因此选择「主输出步骤」。配置如下图所示:

双击「计算器」组件进入配置界面,点击「插入」新增一行配置,此时相当于增加一个数据计算逻辑。在「计算器」组件中,一个数据计算逻辑由新字段、计算公式、字段A/B/C等结构组成。新字段是指计算逻辑输出的字段,计算公式指数据的计算方法,字段A/B/C是指计算逻辑的输入数据。界面如下图所示:

在「新字段」列手动输入字段名 diff_date,在「计算」下拉列表中选择 Date A - Date B (in days),「字段 A」下拉列表选择 end_date,「字段 B」下拉列表选择 start_date,「值类型」下拉列表选择 Integer,完成配置后点击「确认」。此时的数据计算逻辑是计算项目开始时间start_date和项目结束时间end_date之间的天数差,并将计算结果存储在字段 diff_date。配置界面如下图所示:

在完成计算器」组件的配置后拖拽“数值范围”组件至画布,建立从“计算器”到“数值范围”之间的连接,配置如下图所示:

双击「数值范围」组件打开组件配置窗口:在「输入字段」下拉列表中选择 diff_date,在「输出字段」处手动输入字段名 performance,并按业务规则配置「范围(最小≤x < 最大)」区间,即根据项目天数差diff_date对项目进行评价,并将评价值存储在字段 performance中,评价规则如下:
(1)下界为 0、上界为 30,评价值为 excellent;
(2)下界为 30、上界为 180,评价值为 very good;
(3)下界为 180、上界为 360,评价值为 good;
(4)下界为 360,评价值为 poor;
完成配置后点击「确认」。「数值范围」组件配置界面如下图所示:

拖拽「文本文件输出」组件至画布,建立从「数值范围」组件到「文本文件输出」组件的连接,配置界面如下图所示:

双击「文本文件输出」组件打开组件配置窗口,完成文件输出路径、字段映射等相关配置界面如下图所示:
(1)手动输入「文件名称」为 porject_output;
(2)手动输入「扩展名」为 csv;
即通过「文本文件输出」组件将数据写入到porject_output.csv 文件中。

切换至「内容」标签页,将「分隔符」手动修改为英文逗号 ,即输出的文件中以,分割字段,配置如下图所示:

切换至「字段」标签页,在字段列表区域右键单击,选择「获取字段」,自动加载上游组件传递的所有字段信息,即将上游组件传递的字段都写入到文件中;

完成后点击「确认」保存设置,结果如下图所示:

完成所有步骤后,整个转换工作流视图如下图所示:

点击画布左上角的「运行」按钮,在弹出的提示框中点击「启动」,即可运行整个转换流程。

运行结果如下图所示:


运行转换后,文件库中生成一个Project_output.csv表,数据如下图所示:

2.3从文本文件中读取数据
本小节将利用足球比赛数据,演示如何使用助睿 ETL 平台完成文本数据的标准化读取、字段筛选与结果验证,为后续的数据统计与分析提供可靠的数据源。数据包含比赛日期、比赛地点、主客队、比分等关键字段,我们将通过三步核心操作实现数据处理:
(3)数据接入:通过「CSV 文件输入」组件读取文本文件数据,验证文件路径、字段解析与数据格式的正确性,确保源数据能被 ETL 平台正常识别;
(2)字段 筛选:使用「字段选择」组件,按需筛选出后续分析所需的关键字段(如比赛日期、主客队、比分),剔除无关字段,精简数据结构;
(1)结果验证:搭配「空操作(什么也不做)」组件接收数据,该组件仅接收数据不做任何业务处理,核心作用是测试数据是否能从上游组件完整传递到输出环节,验证整个流程的连通性,确保后续流程的稳定性。
通过以上操作,我们将快速搭建一个完整的文本数据读取与验证流程,为后续的比赛数据统计、比分分析等业务场景奠定基础。
具体操作如下:
新建转换,拖拽「CSV 文件输入」组件至画布,配置界面如下图所示:

双击组件打开配置窗口,在「文件名」栏「浏览文件」选择待读取的足球比赛数据文件:usa_201209.txt 。然后将「列分隔符」设置为英文分号 ;(需与文件实际分隔符格式保持一致,如文件中为中文分号 ; 则对应设置为中文)。最后勾选「包含列头行」选项。即使用「CSV 文件输入」组件读取usa_201209.txt 文件,并按分隔符“;”解析列,并使用文件中第一行的数据作为字段名称。配置界面如下图所示:

配置完成后,在下方数据预览区域的空白处右键单击,在弹出的菜单中选择「获取字段」,即可自动解析并加载文本文件中的字段信息。完成配置后点击「确认」按钮保存,配置界面如下图所示:

选中「CSV 文件输入」组件,右键单击并选择「预览输出」,查看数据读取结果,验证数据是否正常加载、字段解析是否正确,预览效果如下图所示:


将「字段选择」和「空操作(什么也不做)」组件依次拖拽至画布,建立从「CSV 文件输入」→「字段选择」→「空操作(什么也不做)」的连接,在弹出的步骤选择提示框中均选择「主输出步骤」,完成整个转换流程的搭建,完整转换如下图所示:

双击「字段选择」组件进入配置界面,切换至「移除」标签页,在空白区域先「获取字段」再「删除选中行」仅保留需要移除的Venue字段,点击「确认」完成字段剔除配置。此时「字段选择」组件将移除字段流中的Venue字段,不再将其传递给下一个组件,配置界面如下图所示:



点击画布左上角的「运行」按钮,在弹出的提示框中点击「启动」,即可运行整个转换流程,执行结果如下图所示:

选中「空操作(什么也不做)」组件,右键单击并选择「预览」,查看经过字段筛选后的数据输出结果,验证字段剔除是否生效、数据传递是否完整,结果如下图所示:


2.4从 Excel 文件中读取数据
近年来房地产市场持续发展,房价波动明显,购房是多数人人生中重大的投资决策,购房选择会直接影响后续的生活质量与幸福感。而房地产市场的楼盘供给丰富,不同房源在价格、区位、面积、户型、配套等方面差异显著,购房者在决策时,往往会对住房价格、环境品质、物业服务、户型合理性等多维度因素产生选择困惑,加大了购房决策的难度。在基于购房决策影响因素(如购房者年龄、性别、学历、月薪、家庭人数等)开展数据建模分析前,需要先对原始数据进行过滤与筛选,本案例将使用助睿 ETL 平台读取获取到的购房者信息数据(Excel 文件),通过字段选择操作,筛选出业务分析所需的目标字段,完成数据的基础预处理。
具体操作如下:
新建转换工作流,在「组件库」中拖拽「Excel 输入」组件至画布,配置界面如下图所示:

双击组件打开配置窗口,点击「浏览」按钮使用文件浏览器组件选择待读取的 Excel 文件。

再点击「增加」按钮将文件添加至「选中的文件」中,完成基础文件配置。即通过 Excel XLSX(Streaming)引擎解析和读取 custinfo.xlsx 文件。配置界面如下图所示:

切换至「内容」标签页,完成相关配置:勾选「头部」「非空记录」,在「编码」下拉列表中选择「UTF-8」,即custinfo.xlsx 文件中第一行为字段名称,只读取文件中非空记录,且文件编码为UTF-8。配置界面如下图所示:

切换至「工作表」标签页,点击页面下方的「获取工作表名称」按钮,此时组件将读取文件并获取文件的工作簿信息。配置界面如下图所示:

在弹出的工作表选择窗口中,勾选该工作表前的复选框。点击两栏中间的右向箭头按钮,将选中的Sheet1工作表添加至右栏列表中,完成后点击「确定」按钮。此时组件只会读取工作簿Sheet1的数据。配置界面如下图所示:


切换至「字段」标签页,在空白区域右键单击选择「获取来自头部的字段」选项,此时组件会读取文件的工作簿Sheet1的第一行数据,并解析成字段信息。配置如下图所示:

将字段名称、数据类型等属性自动加载到字段列表中,点击「确认」按钮。配置界面如下图所示:

从「组件库」中拖拽「字段选择」组件、「空操作(什么也不做)」组件至画布,按「Excel 输入」→「字段选择」→「空操作(什么也不做)」的顺序依次建立组件连接,在弹出的连接线类型选择提示框中,均选择「主输出步骤」,完整转换流程如下图所示:

双击「字段选择」组件进入配置界面,在「选择和修改」标签页右键单击,选择「获取字段」,自动加载上游「Excel 输入」组件的所有字段信息;仅保留目标字段「education」「employment」,点击「确认」按钮完成字段配置, 配置界面如下图所示:


点击画布左上角的「运行」按钮,点击「启动」,流程执行结果如下图所示:


选中「空操作(什么也不做)」组件,右键单击并选择「预览输出」,查看经过 Excel 数据读取、字段筛选后的最终数据输出结果,验证目标字段筛选是否生效、数据传递是否完整,结果如下图所示:

三、实验结果
2.2的实验结果:



本小节通过“CSV文件输入”→“字段选择”→“计算器”→“数值范围”→“文本文件输出”五个组件,完成了从CSV文件读取、日期差值计算、绩效等级评定到结果导出的完整数据处理链路。根据实验运行日志与输出结果,现从数据量、处理逻辑与执行效率三个维度进行分析:
(1)数据量与字段流转分析。 “CSV文件输入”组件共读取原始记录6条,经“字段选择”组件保留关键字段后,6条数据完整传递至下游。输出文件project_output.csv中包含project_name、start_date、end_date、diff_date、performance共5个字段,说明字段筛选与衍生字段添加均按预期生效。
(2)业务计算逻辑验证。 “计算器”组件成功基于end_date与start_date计算出天数差值diff_date,其计算结果与“数值范围”组件中配置的绩效评定规则形成闭环。从输出数据来看:project A(diff_date=15)被评定为excellent,project B(109天)为very good,project C(273天)为good,project D(108天)为very good,project E(20天)为excellent,project F(365天)为poor。所有记录的绩效等级均符合预设的分段规则(0≤x<30为excellent,30≤x<180为very good,180≤x<360为good,x≥360为poor),证明“数值范围”组件的区间配置准确无误,业务规则得以正确落地。
(3)执行效率评估。 从步骤度量日志来看,各组件处理6条记录的总耗时均在毫秒级:CSV文件输入速度为1,167条/秒,字段选择为667条/秒,计算器为500条/秒,数值范围为428条/秒,文本文件输出为333条/秒。整体吞吐量稳定,各组件间数据传递无阻塞或积压现象,表明该转换流程在数据量较小的情况下具有极高的处理效率。
2.3的实验结果:


本小节通过“CSV文件输入”→“字段选择”→“空操作(什么也不做)”三个组件,完成了TXT文本数据的读取与字段精简操作。根据运行日志与预览结果,现分析如下:
(1)文本文件解析能力验证。 “CSV文件输入”组件成功读取了usa_201209.txt足球比赛数据文件,共计解析出15条记录。该文件以中文分号;作为列分隔符,且首行为列头行,通过正确配置分隔符与勾选“包含列头行”选项,组件准确识别了Date、Country、Matches、Venue等字段结构,说明组件对非标准分隔符(如中文分号)具有良好的兼容性与解析能力。
(2)字段筛选功能验证。 “字段选择”组件在“移除”标签页中配置剔除Venue字段,从预览结果(即“空操作”组件接收到的数据)来看,输出数据仅包含Date、Country、Matches三个字段,且保留了原始的3个Country列(主队国家、比分、客队国家),字段顺序与预期一致,证明字段移除操作精准生效,数据传递完整无丢失。
(3)数据量一致性检验。 步骤度量显示,“CSV文件输入”组件输出15条记录(含表头行逻辑处理后的有效数据行),“字段选择”与“空操作”组件均处理14条数据并输出14条(有效数据行,不含表头)。各组件读/写数量一致,无拒绝或错误记录,表明整个处理链路数据流转通畅,字段剔除操作未引起数据丢失,流程稳定性良好。
2.4的实验结果:


本小节通过“Excel输入”→“字段选择”→“空操作(什么也不做)”三个组件,完成了购房者信息Excel文件的读取与目标字段筛选。根据运行日志与预览结果,现分析如下:
(1)Excel文件读取能力验证。 “Excel输入”组件成功读取custinfo.xlsx文件,共加载400条记录,字段总数与原始工作表结构一致。在配置过程中,通过“获取工作表名称”功能自动识别Sheet1工作表,并通过“获取来自头部的字段”功能基于首行数据自动解析字段名称与数据类型,整个过程操作便捷、解析准确,证明组件对XLSX格式文件具有完善的读取能力。
(2)字段筛选结果验证。 “字段选择”组件在“选择和修改”标签页中配置仅保留education(学历)和employment(就业情况)两个字段。从预览数据来看,输出结果仅包含这两列,且数据类型保持为数值型(如5.0、29.0等),字段筛选操作精准无误,有效精简了数据结构,为后续基于购房决策影响因素的分析提供了干净的数据子集。
(3)执行效率与数据完整性检验。 步骤度量显示,Excel输入组件读取400条记录耗时约0.101秒,处理速度为625条/秒;字段选择组件耗时0.109秒(609条/秒);空操作组件耗时0.128秒(592条/秒)。三阶段处理时间均衡,无性能瓶颈。输入、输出、拒绝、错误各项计数均为0或400,数值匹配一致,表明全部400条记录均成功通过筛选并传递至下游,数据零丢失、零异常,流程执行完整可靠。
四、实验总结
一、收获
通过本次实验,系统掌握了基于助睿ETL平台进行多类型文件数据抽取与加工的全流程操作方法,具体收获如下:
(1)掌握了多种文件数据源的接入能力。 熟练使用“CSV文件输入”组件完成CSV及TXT文本文件的读取,理解了分隔符配置、列头行识别、字段自动解析等关键参数的作用;掌握了“Excel输入”组件针对XLSX文件的操作流程,包括工作表选择、头部字段提取及编码设置等核心环节。
(2)构建了完整的数据加工处理逻辑。 在CSV文件案例中,运用“计算器”组件实现了日期差值计算,并借助“数值范围”组件完成基于业务规则的数据分级映射,理解了零代码方式下条件判断与衍生字段生成的实现路径。
(3)掌握了数据字段管理与流程调试方法。 通过“字段选择”组件实现对字段的筛选与剔除,理解了“主输出步骤”与“错误步骤”的分流设计思想;通过“空操作(什么也不做)”组件验证数据链路连通性,掌握了预览输出、获取字段等调试手段,增强了对数据流转过程的感知能力。
(4)加深了对ETL核心理念的理解。 从数据抽取、字段加工到结果输出,亲历了完整的数据管道构建过程,认识到ETL不仅仅是工具操作,更涉及业务规则解读、数据质量把控和流程链路设计等综合能力。
二、对平台的整体评价
助睿ETL平台在本实验中展现了良好的易用性与实用性,具体体现在以下几个方面:
(1)零代码操作降低了使用门槛。 整个实验过程中,所有数据处理环节均通过拖拽组件、配置参数完成,无需编写任何代码,使得非技术背景的实验者也能快速上手,极大提升了数据加工的效率。
(2)组件设计合理,功能覆盖全面。 平台内置的输入/输出组件、转换组件、分流组件等覆盖了ETL流程中的常见场景,组件之间连接灵活,参数配置窗口直观明了,“获取字段”“预览输出”等辅助功能有效提升了配置准确性与调试效率。
(3)文件格式兼容性强。 平台同时支持CSV、TXT、Excel等多种结构化文件数据的读取与解析,对分隔符、编码、工作表等要素提供了细致的配置选项,能够应对实际工作中多样化的数据源格式。
(4)交互反馈及时,实验体验流畅。 从组件配置到流程运行再到结果预览,平台响应迅速,运行日志清晰,便于快速定位问题,整体实验过程顺畅,符合教学与实际应用的双重需求。
总体而言,助睿ETL平台以零代码、可视化的方式有效简化了数据集成的复杂度,既适合高校教学中帮助学生理解ETL原理与流程,也适用于企业实际场景中的快速数据加工,是一款兼具教学价值与工程实用性的数据集成工具。
#商业数据分析 #ETL 数据加工 #数据实验
更多推荐



所有评论(0)