我希望每次触发流时都能列出目录中的所有文件。我遇到以下问题 a)使用ListFile + FetchFile-文件夹中的所有文件只列出一次,但是会记住状态,因此下次运行时,除非修改了文件,否则不会列出任何文件。我希望ListFile + FetchFile完全像以前一样运行。我可以手动删除“状态”信息。但这不是可配置的 b)使用GetFile方法并使用KeepSource = true,处理器重复执行一次又一次地列出文件。它希望它只发生一次。
有没有一种方法可以将此方法配置为重复列出文件,无论文件是否已更改,并且仅列出一次。
让我知道
答案 0 :(得分:0)
我想第一个问题是你为什么要重复列出所有内容?
NiFi 是一种构建流程的工具,它旨在处理传入的新数据,而不是一遍又一遍地处理所有数据。您很可能处于以下情况之一:
有许多工具可以列出文件,并且很乐意再次执行此操作。 (一个简单的 shell 命令,甚至一些 python 或 spark 代码)。
一个。如果您正在寻找协调器:考虑像 Oozie 或 Airflow 之类的东西
B.如果你真的需要你可以让 Nifi 执行一个脚本而不是使用 ListFile,但正如前面提到的,你很可能会朝着不应该的方向前进。