我有一个NiFi流,其中流文件将流向ExecuteStreamCommand
处理器,以执行python脚本进行某些处理。流中运行的文件的名称格式为日期(MMdd_HHmm),例如:0505_1015.csv
0505_1030.csv
0505_1045.csv
,依此类推。但是在我的流程中,我需要按顺序运行每个文件(如果这些文件同时在流程中运行),因此它不是先进先出,而是流程中名称和日期较少的文件需要运行并先进入处理器。
因此,根据示例,如果0505_1015.csv
0505_1030.csv
0505_1045.csv
当前在流中等待在下一个处理器中运行。 0505_1015.csv
将首先进入处理器,然后在其运行完毕后,将在处理器中执行0505_1030.csv
。
因此,如果文件在流中,则应从第一个日期时间开始运行。 如图所示,如果流中有多个流文件,则首先执行的是名称中具有较短日期时间的流文件。
我已经阅读了有关EnforceOrder
和prioritizer
的内容,并发现了this post,但是我仍然不知道该怎么做。
谢谢