Как Nifi «Разделение по атрибуту» отправляет FlowFiles на другие узлы Nifi? - PullRequest
0 голосов
/ 29 января 2019

У меня есть 3 узла в кластере nifi.Я использую "Partition by Attribute" для распределения потоковых файлов по другим узлам nifi в кластере nifi.Например, я использую «тип» атрибут для «Разделение по атрибуту»;

FlowFile -> type: A
FlowFile -> type: B
FlowFile -> type: C

Для этого сценария FlowFiles с тем же «типом» будет идти на тот же узел.Но предположим, что один узел (которому отправляются файлы потока с типом A) не работает.Хотя FlowFiles с «типом B и C» продолжат успешно отправляться, FlowFiles с «типом A» останется в очереди (не будет отправлено.).

. Между тем, aСкоро появится FlowFile с «типом XY» (впервые. Означает, что никогда не был раньше) .В этом случае этот входящий файл отправляется только на узлы, которые активно принимают данные (узлы, которые отправляются FlowFiles с «типом B и C»)?Или он может отправить его на падающий узел?

Например, для этой проблемы;

FlowFile -> type: A -----> Waiting in the queue

FlowFile -> type: B ------> successfully sent

FlowFile -> type: C ------> successfully sent

and

FlowFile -> type: XY ------> Which node can be sent to? (B or C ?)

Я не хочу, чтобы файл потока с типом XY попадал в недоступную очередь кластера.

1 Ответ

0 голосов
/ 29 января 2019

В настоящее время он вычисляет узел, используя все узлы в кластере (некоторые из которых могут быть недоступны), он на самом деле не знает, было ли значение замечено ранее, поэтому файл потока с XY все еще может выбрать недоступный узел.Данные будут стоять в очереди и ждать, пока узел вернется.Если узел не собирался возвращаться, то вы можете удалить узел из кластера, а затем он пересчитает новый узел для всех файлов потока в очереди.

...