spark-submit配置,以处理每秒60K事件的事件负载

时间:2019-04-21 07:25:06

标签: spark-submit

我正在设置spark提交作业,以每秒处理超过60k个事件。我的批处理内部驱动程序,执行程序,节点,核心设置应该是什么,以处理该负载。

我尝试了从1分钟到10分钟的批处理间隔。 执行器的内存从4GB到30G,核心数为10到60。

spark-submit --conf“ spark.hadoop.mapreduce.fileoutputcommitter.algorithm.version = 2” --master spark:// masterURL:7077 --deploy-mode cluster --driver-memory 30g --num-执行者60-执行者核心10-执行者内存30g --conf“ spark.scheduler.mode = FAIR”-类“ MainClass” SampleJar.jar

计划的批次间隔应在下一个计划之前完成

1 个答案:

答案 0 :(得分:0)

最终,在苦苦挣扎一堆不同的配置并阅读了大部分性能块后,我们提出了内存调整建议。我找到了解决办法。 就实施而言,这几乎是直截了当的。

问题是kafka吞吐量与流处理能力不匹配。 通过将JavaInputDStream分区更改为更大的数字(num),可以解决问题。
这将启动更多线程以在spark集群处进行处理,而spark将带来更多并行处理。卡夫卡分区的数量总是会打击其他流作业。

希望这将有助于解决某人的问题。