apache-nifi - Nifi“按属性分区”如何将FlowFiles发送到其他Nifi节点?
问题描述
我在 nifi 集群中有 3 个节点。我正在使用“按属性分区”将流文件分发到 nifi 集群中的其他 nifi 节点。例如,我为“按属性分区”使用“类型”属性;
FlowFile -> type: A
FlowFile -> type: B
FlowFile -> type: C
对于这种情况,具有相同“类型”的流文件将转到同一个节点。但是,假设一个节点(发送类型为 A 的流文件)已关闭。虽然“类型 B 和 C”的流文件将继续成功发送,但“类型 A”的流文件将保留在队列中(不会发送。)。
与此同时,一个“类型 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 类型的流文件进入不可用的集群队列。
解决方案
目前它使用集群中的所有节点(其中一些可能不可用)来计算一个节点,它并不知道之前是否看到过该值,因此带有XY的流文件仍然可以选择不可用的节点。数据将排队等待节点返回。如果该节点不会回来,那么您可以从集群中删除该节点,然后它将为所有排队的流文件重新计算一个新节点。
推荐阅读
- c# - 与较新版本的系统程序集绑定编译失败
- python - 如何使用 any() 测试两个数组是否重叠
- linux - 获取 PIC 的中断屏蔽寄存器 (IMR) 并禁用一个特殊的 IRQ
- c++ - 错误 C2027 或 C2029 取决于定义顺序
- javascript - Webpack 4:生成共享依赖项
- wordpress - WordPress 如何对数字和对象使用转义功能,例如 post_type
- javascript - 从 MutationObserver 的突变编辑 DOM 中的元素
- javascript - 我应该在哪里存储我的 facebook appid?它需要被保护吗?
- swift - 尝试从 Firebase 检索数据时未调用 tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) 函数
- ssis - ssis中序列容器的并行化