【发布时间】:2017-08-15 08:50:16
【问题描述】:
我正在 Apache NiFi 中创建一个数据摄取工作流,使用 Kafka 作为缓冲系统。我有一个运行相同工作流的 3 节点集群,每个节点有 4 个核心。
我依赖于多个将数据移入和移出不同 Kafka 主题的实例,这是工作流程中最慢的部分,并且在性能方面非常不一致,因为两个相同的测试可能有高达 100% 的持续时间增加。
我们的发布和使用 Kafka 处理器在所有三个节点上运行,我们的 Kafka 主题在三个代理上具有 3 个分区。
有没有人知道什么会导致这种不一致以及我可以做些什么来缓解它并加快工作流程?
【问题讨论】:
-
我们需要更多细节...... NiFi 的哪个版本?什么版本的卡夫卡经纪人?什么版本的 Kafka 处理器(0.9 vs 0.10)?您是否在 PublishKafka 前看到了流文件的堆积,或者究竟是什么变慢了?您是否一次发布和使用一条消息?
-
NiFi 1.1.0 版,Kafka 0.10.1.2.1 版,0.10 kafka 处理器,在发布 kafka 之前在队列中建立文件,使用 kafka 并没有按预期快速返回文件,我相信它一次发布和消费 1 个文件,未包含特定的批处理逻辑。
标签: performance concurrency apache-kafka apache-nifi hortonworks-dataflow