Я использую приложение spark со следующими этапами и настройкой на amazon emr
Этапы:
dstream.map(record => transformRecord).map(result => result._1).flatMap(rd => rd).foreacRDD(rdd => { rdd.toDF; df.save() })
Конфигурация:
1 главный узел с 2 основными узлами в режиме кластера пряжи. Все остальные свойства искры по умолчанию установлены по умолчанию для 2 искровых исполнителей и 4 ядер искровых исполнителей с памятью 2g
.
Использование регистра:
Использование потока JSON-записей из брокера сообщений, их преобразование, сохранение в базе данных
Вопрос:
С этим конфигом на месте, когда выполняется spark-submit - я вижу, что только один искровый исполнитель потребляет записи и обрабатывает их. Другой просто действует как какой-то планировщик. Почему это происходит?
Как увеличить параллельную обработку в том смысле, что потреблять больше записей и выполнять их изолированно ?? (Увеличивает ли количество экспонентов какую-либо разницу)
Какая связь между искровыми исполнителями и параллелизмом в искре на пряже?