使用Kettle从FTP拉取文件

1、业务场景简要说明

对接方式:FTP文件。

客户的FTP目录路径:

/201602/01/xxx.txt

/201602/01/xxx.txt


使用Kettle从FTP拉取文件_第1张图片

注意点

对方在写文件的时候,应先将文件写入到临时文件,写完后,再rename文件名。

如:先写xxx.txt.tmp->xxx.txt


2、流程

2.1转换流程构造路径

使用Kettle从FTP拉取文件_第2张图片

使用Kettle从FTP拉取文件_第3张图片

//获得当前系统时间,此处得到初始化时间

var dateFormatYearAndMonth= java.text.SimpleDateFormat("yyyyMM");

var dateFormatDay =java.text.SimpleDateFormat("dd");

var yearAndMonth =dateFormatYearAndMonth.format(newjava.util.Date());

 

var day = dateFormatDay.format(newjava.util.Date());

 

 

var sourcePath = '/' + yearAndMonth + '/'+ day;

var targetPath = '/'+ yearAndMonth + '/' + day + '_bak';

使用Kettle从FTP拉取文件_第4张图片


2.2拉取流程

使用Kettle从FTP拉取文件_第5张图片

使用Kettle从FTP拉取文件_第6张图片

使用Kettle从FTP拉取文件_第7张图片

注意点:

1、在该例子中,抽取的时间颗粒度是天,时间在切换的时候,应将时间向前推几分钟,这样数据就不会漏了,后进来的数据会晚几分钟抽取到。



你可能感兴趣的:(ETL,Kettle)