我在nifi群集中有3个节点。我正在使用“按属性分区” 将流文件分发到nifi群集中的其他nifi节点。例如,我将“类型” 属性用于“按属性分区”;
FlowFile -> type: A
FlowFile -> type: B
FlowFile -> type: C
对于这种情况,具有相同“类型”的FlowFiles将进入相同的节点。但是,假设一个节点(发送了类型A的流文件)已关闭。具有“ B和C型”的FlowFiles将继续成功发送,而具有“ A型”的FlowFiles将保留在队列中(不会发送。)
同时, 带有“ XY类型”的FlowFile即将到来(第一次。这意味着它从未来过) 。在这种情况下,此传入文件是否仅发送到主动接收数据的节点(发送了“类型B和C”的FlowFiles的节点)?还是可以将其发送到下降节点?
例如此问题;
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类型的流文件进入不可用的群集队列。
答案 0 :(得分:4)
当前,它使用群集中的所有节点(其中一些可能不可用)来计算节点,它实际上并不知道以前是否看到过该值,因此带有XY的流文件仍可以选择不可用的节点。数据将排队等待节点返回。如果该节点不再需要返回,则可以从群集中删除该节点,然后它将为所有排队的流文件重新计算一个新节点。