Parallel processing ApacheFlink,线程比Kafka分区多
数据流很简单,就像 卡夫卡->一些逻辑->卡夫卡 “某些逻辑”是这里的瓶颈,所以我想使用更多的线程/任务来提高吞吐量,而不是增加kafka分区(目前为3个)。输入和输出主题之间的顺序在这里并不重要Parallel processing ApacheFlink,线程比Kafka分区多,parallel-processing,apache-kafka,apache-flink,flink-streaming,Parallel Processing,Apache Kafka,Apache Flink,Flink Streaming,数据流很简单,就像 卡夫卡->一些逻辑->卡夫卡 “某些逻辑”是这里的瓶颈,所以我想使用更多的线程/任务来提高吞吐量,而不是增加kafka分区(目前为3个)。输入和输出主题之间的顺序在这里并不重要 使用ApacheStorm可以很容易地做到这一点。我可以增加螺栓的并行性来实现一些逻辑。我怎么能和弗林克一起做?更普遍的问题是,对于Flink的不同阶段,是否有任何简单的方法可以使用不同的并行性?这在Flink中非常简单。您可以使用setParallelism()方法指定每个运算符的并行度: Data
使用ApacheStorm可以很容易地做到这一点。我可以增加螺栓的并行性来实现一些逻辑。我怎么能和弗林克一起做?更普遍的问题是,对于Flink的不同阶段,是否有任何简单的方法可以使用不同的并行性?这在Flink中非常简单。您可以使用
setParallelism()
方法指定每个运算符的并行度:
DataStream<String> rawEvents = env
.addSource(new FlinkKafkaConsumer010("topic", new SimpleStringSchema(), props));
DataSteam<String> mappedEvents = rawEvents
.flatMap(new Tokenizer())
.setParallelism(64); // set parallelism to 64
DataStream rawEvents=env
.addSource(新的FlinkKafkaConsumer010(“主题”,新的SimpleStringSchema(),props));
DataSteam mappedEvents=rawEvents
.flatMap(新标记器())
.setParallelism(64);//将并行度设置为64