✨Nifi系列✨ ‍‍‍GetFTP功能介绍

Posted DATA数据猿

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了✨Nifi系列✨ ‍‍‍GetFTP功能介绍相关的知识,希望对你有一定的参考价值。

Nifi系列 GetFTP功能介绍

使用GetFTP Processor去FTP服务器中同步文件,通过修改GetFTP配置项,实现不同的功能。

一、GetFTP基础配置项

SCHEDULING

如果Nifi部署的分布式集群的话,建议使用Primary node模式,否则每个节点都会从FTP服务器读取一次文件,造成数据重复。

至于调度时间,根据自己实际需求而定。

PROPERTIES

FTP服务器的IP、端口、用户名、密码为必填项

启动

通过简单修改调度项,以及配置FTP服务器的基础信息后,就已经可以成功同步到数据文件

二、Delete Original 配置项

默认情况下,Delete Original 为true,也就是每次同步成功后,都会把FTP服务器上的源数据删除。但是很多情况下,我们只是希望同步数据,并且保留FTP服务器源数据文件。

Delete Original 为true时,同步成功后,删除源数据文件;

Delete Original 为false时,同步成功后,不删除源数据文件;

Delete Original = true

在FTP服务器中创建一个名为zxy_delete_original的文件

重新启动后,通过list queue查看文件已经读取到

与此同时,FTP服务器中该文件已经被删除

Delete Original = false

在FTP服务器中重新创建一个名为zxy_delete_original的文件。

重新启动后,通过list queue查看文件已经读取到

再次检查FTP服务器中源文件,仍然存在

三、Search Recursively

通过修改配置项Search Recursively,决定在同步FTP服务器的时候,是否递归搜索。默认为false。

Search Recursively为true时,递归搜索;

Search Recursively为false时,非递归搜索;

测试文件如下,且文件夹b下也有文件。

Search Recursively = true

设置递归搜索时,会去检索FTP服务器下所有文件

Search Recursively = false

设置非递归搜索时,只能获取到根目录下的文件,而不能检索根目录文件里的其他文件

四、Use UTF-8 Encoding

是否使用UTF-8编码

Use UTF-8 Encoding为true时,使用UTF-8编码;

Use UTF-8 Encoding为false时,不使用UTF-8编码;

测试文件如下,创建一个中文表名,查看不同配置下的同步情况。

Use UTF-8 Encoding = true

当设置UTF-8编码的时候,读取到的中文表名称是正常的。

Use UTF-8 Encoding = false

当设置UTF-8编码的时候,读取到的中文表名称是乱码的。

以上是关于✨Nifi系列✨ ‍‍‍GetFTP功能介绍的主要内容,如果未能解决你的问题,请参考以下文章

大数据NiFi:NiFi Processors(处理器)

大数据NiFi:NiFi Processors(处理器)

大数据NiFi:什么是NiFi

Nifi01概念

Nifi01概念

Nifi和Mini NiFi(MiNiFi)之间的区别