Nifi:如何在 nifi 中同步两个目录

Posted

技术标签:

【中文标题】Nifi:如何在 nifi 中同步两个目录【英文标题】:Nifi: How to sync two directories in nifi 【发布时间】:2017-09-21 07:07:34 【问题描述】:

我必须将我的响应流文件写在一个目录中,而不是从中获取数据更改它,然后将它放在其他目录中我想让这两个目录同步(我的意思是每当我删除或更改流文件在一个目录中时也应该在其他目录中更改)我有超过 10000 个流文件,所以 chechlist 不是一个好的解决方案。你能推荐我吗:

    任何可以帮助我完成此操作的控制服务? 任何更好的方法我都可以在没有控制器服务的情况下完成这项任务

【问题讨论】:

rsync tool 我可以在 nifi 中使用 rsync 我的意思是我可以制作工作流以便 rsync 捕获 hdfs 目录中的更改吗? 或者我可以在自定义处理器中实现它我的意思是如果我编写自定义处理器或者我可以为本地目录实现 rsync 吗? 【参考方案1】:

您可以使用ListFileFetchFilePutFile 处理器的组合来检测文件系统目录中的单个文件写入更改并将其内容复制到另一个目录。但是,这不会检测文件删除,因此我相信更好的解决方案是在ExecuteProcess 处理器中使用rsync

据我所知,rsync 不适用于 HDFS 文件系统,所以在这种情况下,我建议使用像 Helix 或 DistCp 这样的工具(我没有特别评估这些工具)。您可以通过ExecuteProcess 从“命令行”调用它们,或者将客户端库包装在ExecuteScript 或自定义处理器中。

【讨论】:

以上是关于Nifi:如何在 nifi 中同步两个目录的主要内容,如果未能解决你的问题,请参考以下文章

✨Nifi系列✨ Nifi同步并解析FTP服务器Excel文件,并存储到数据库

NiFi Bootstrap 如何确定 NiFi 是不是未运行?

NiFi同步中文表中文字段名

NiFi同步中文表中文字段名

NIFI如何利用eclipse开发自己的Processor(上)

NIFI同步API接口数据