Simulação de cores e simultaneidade de tarefas

Eu tenho uma pergunta muito básica sobre faísca. Eu costumo executar trabalhos de faísca usando 50 núcleos. Ao visualizar o progresso do trabalho, na maioria das vezes ele mostra 50 processos em execução em paralelo (como deveria ser feito), mas às vezes mostra apenas 2 ou 4 processos de ignição em execução em paralelo. Como isso:

[Stage 8:================================>                      (297 + 2) / 500]

Os RDDs que estão sendo processados sãorepartitioned em mais de 100 partições. Portanto, isso não deve ser um problema.

Eu tenho uma observação embora. Vi o padrão que na maioria das vezes acontece, a localidade dos dados no SparkUI mostraNODE_LOCAL, enquanto outras vezes em que todos os 50 processos estão em execução, alguns deles mostramRACK_LOCAL. Isso me faz duvidar que, talvez isso aconteça porque os dados são armazenados em cache antes do processamento no mesmo nó para evitar a sobrecarga da rede, e isso atrasa o processamento adicional.

Se for esse o caso, como evitá-lo. E se não for esse o caso, o que está acontecendo aqui?

questionAnswers(1)

yourAnswerToTheQuestion