конфигурация spark-submit для обработки загрузки событий 60K событий в секунду - PullRequest
0 голосов
/ 21 апреля 2019

Я настраиваю свечу Отправить задание для обработки более 60 000 событий в секунду. Каким должен быть мой внутренний пакет и драйвер, исполнитель, узлы, настройки ядра для обработки этой нагрузки.

Я пробовал интервал между 1 и 10 минутами. С памятью исполнителя от 4 ГБ до 30 ГБ, с количеством ядер от 10 до 60.

spark-submit --conf "spark.hadoop.mapreduce.fileoutputcommitter.algorithm.version = 2" - master spark: // masterURL: 7077 - кластер режима развертывания - память-драйвер 30g --num- исполнители 60 --executor-cores 10 --executor-memory 30g --conf "spark.scheduler.mode = FAIR" --class «MainClass» SampleJar.jar

Запланированный интервал между партиями должен быть завершен до следующего графика

1 Ответ

0 голосов
/ 03 мая 2019

В конце концов, после борьбы с кучей различных конфигураций и прочтения почти всех рекомендаций по настройке памяти блока производительности. Я выясняю, как это исправить. Это было почти прямо с точки зрения реализации.

Проблема была в том, что пропускная способность кафки не соответствовала мощности потоковой обработки. Проблема была решена путем изменения перераспределения JavaInputDStream на большее число (num).
Это приведет к увеличению количества потоков для обработки в искровом кластере, и искра принесет больше параллельной обработки. Еще одна потоковая работа всегда будет поражена количеством разделов Kafka.

Надеюсь, это поможет решить кому-то проблему.

...