ETL-kettle-Ftp 抓取文件下载到本地后移动源文件
例子:
步骤一、首先定义例子将要用到的全局变量,如图:
详情如下:
1、 |
ga_local_ip |
主机名称 |
2、 |
ga_local_dba_name |
数据库名称 |
3、 |
ga_local_username |
数据库账号 |
4、 |
ga_local_password |
数据库密码 |
5、 |
ga_local_host |
数据库端口号 |
6、 |
ftp_load_Deposit_in |
ftp(抓取文件路径) |
7、 |
ftp_load_backups |
ftp(抓取后移动文件夹的路径) |
8、 |
ftp_id |
ftp(ID) |
9、 |
ftp_name |
ftp(账号) |
10、 |
ftp_password |
ftp(密码) |
11、 |
ftp_port |
ftp(端口) |
步骤二,定义局部变量,在ftp转换过程中用到
整个作业如图:
转换ftp_load_Deposit_in 用做处理局部变量
如图:
控件详情如下:
Table input如图:
ftp_load_Deposit_in字段: 表示抓取文件路径
ftp_load_backups字段: 表示抓取后移动文件夹的路径
To_day字段:表示年月日时间
year_month字段:表示年月时间
Minutes_Seconds字段:表示分秒时间
Select Values控件:
用于流中的字段选择,选择需要的字段,流向下一控件,如图:
Set Variables控件:
新增局部变量,如图:
注:Valid in the root job:变量仅仅在根任务中合法。
步骤三、变量配置完成后,在作业中进行ftp操作,如图:
Get a file with FTP控件配置,如图:
用${变量}的方式,添加全局变量的code值。
相关局部变量含义:
ftp_load_Deposit_in字段: 表示抓取文件路径
ftp_load_backups字段: 表示抓取后移动文件夹的路径
To_day字段:表示年月日时间
year_month字段:表示年月时间
Minutes_Seconds字段:表示分秒时间
注: .*-${TO_DAY}\.xls$表示的意思:
抓取xls文件并文件名含有当天的日期。