kettle处理远程电脑或者服务器的CSV文件

博主介绍:

他们叫我技术总监,拥有5年BI、数据库、用友NC、帆软report、python工作经验,

毕业一年被迫当上某集团部门开发经理,成立开发部,次年任命为总监。

因个人执着于技术,所以被总经理戏称为技术总监。

拥有帆软认证、项目管理工程师等认证。目前主要专研大数据方向,希望和您一起学习一起进步。

文章目录

  • 前言
  • 一、csv文件是什么?
  • 二、使用步骤
    • 1.创建共享文件盘
    • 2.读入数据
  • 总结


前言

日常使用过程中不可避免要对CSV文件进行数据分析,比如很多没有数据库的实验室设备存储文件很多是以csv文件格式存储的。本主主要介绍远程服务器或者设备上CSV文件的清洗和处理。

一、csv文件是什么?

逗号分隔值(Comma-Separated Values,CSV,有时也称为字符分隔值,因为分隔字符也可以不是逗号),其文件以纯文本形式存储表格数据(数字和文本)。纯文本意味着该文件是一个字符序列,不含必须像二进制数字那样被解读的数据。CSV文件由任意数目的记录组成,记录间以某种换行符分隔;每条记录由字段组成,字段间的分隔符是其它字符或字符串,最常见的是逗号或制表符。通常,所有记录都有完全相同的字段序列。通常都是纯文本文件。建议使用WORDPAD或是记事本来开启,再则先另存新档后用EXCEL开启,也是方法之一。

二、使用步骤

1.创建共享文件盘

具体效果如下(示例):

kettle处理远程电脑或者服务器的CSV文件_第1张图片

 前期准备:

kettle服务器与CSV文件PC机或服务器可相互访问。可通过ping对应PC机或服务器IP来测试。

如:cmd ping 10.110.60.136 -t

kettle处理远程电脑或者服务器的CSV文件_第2张图片

如公司不允许直接开放IP可以通过开放455端口实现。该配置在防火墙配置。

共享CSV文件所在PC机或服务器的文件夹。

可参考下面链接https://jingyan.baidu.com/article/495ba84144089478b20ede3b.htmlicon-default.png?t=M276https://jingyan.baidu.com/article/495ba84144089478b20ede3b.html在服务器设置共享盘:

kettle处理远程电脑或者服务器的CSV文件_第3张图片

kettle处理远程电脑或者服务器的CSV文件_第4张图片然后输入共享PC或服务器的账号密码即可完成共享盘的设置。 

2.读入数据

效果图如下(示例):

原CSV文件数据

kettle处理远程电脑或者服务器的CSV文件_第5张图片

抽取转换至数据库的数据

kettle处理远程电脑或者服务器的CSV文件_第6张图片

实现步骤:

 分析CSV文件的格式,发现对应CSV文件的分隔符的规律。(建议使用记事本打开查看)

kettle处理远程电脑或者服务器的CSV文件_第7张图片


 新建kettle转换,新建csv文件输入组件,按图示设置(具体按实际CSV文件设置)kettle处理远程电脑或者服务器的CSV文件_第8张图片

 数据清洗:

去掉错误数据如特殊字符和重复标题行等。 

kettle处理远程电脑或者服务器的CSV文件_第9张图片

具体使用字符串替换组件,对应组件使用正则表达式的方式。如图所示选择需要清洗的字段设置替换规则,如样品名称里面出现了双引号是我们不想要的,我们可以使用正则表达式“+来处理该字段所有包括双引号的字符用空来替换,对应਍字符替换的方法一致。对应重复标题行在执行SQL脚本里面进行处理。

kettle处理远程电脑或者服务器的CSV文件_第10张图片

 kettle处理远程电脑或者服务器的CSV文件_第11张图片

 对应可以通过增加常量的组件来增加csv文件里面没有的列,但是我们需要统计的列。如需增加车间的名称。

kettle处理远程电脑或者服务器的CSV文件_第12张图片

 使用过滤记录功能,在入库前过滤掉为空的值。如图所示过滤记录编号为空的值。

kettle处理远程电脑或者服务器的CSV文件_第13张图片

 最后一步:

入库。这边建议使用插入/更新的方式,该方式可以保证已同步的数据不会丢失,同时可以指定联合主键,防止重复数据入库。

kettle处理远程电脑或者服务器的CSV文件_第14张图片

 

总结

以上就是今天要讲的内容,本文仅仅简单介绍了kettle CSV文件同步的使用,而kettle提供了大量能使我们快速便捷地处理CSV文件的方法。具体步骤包括:

1、设置共享文件盘

2、识别CSV文件分隔符

3、设置CSV文件抽取程序(CSV文件读取→脏数据清洗→增加自定义字段→空数据过滤→入库数据处理)

最后送大家一句:三更灯火五更鸡,正是男儿读书时。

你可能感兴趣的:(sql,etl)