NiFI: передача потокового файла следующему процессору по дате и времени из имени файла - PullRequest
0 голосов
/ 05 мая 2019

У меня есть поток 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.

Таким образом, если файлы находятся в потоке, он должен запускаться с первого времени даты.order Как показано на рисунке, если в потоке несколько потоковых файлов, первым будет выполняться тот, в имени которого меньше datetime.

Iпрочитал что-то о EnforceOrder и prioritizer и нашел этот пост , но все еще не могу понять, как это сделать.

Спасибо

...