DAG-планировщик Spark: от логического плана к физическому выполнению

При отправке задания Spark DAG-планировщик преобразует логический план (цепочку трансформаций RDD) в физический план выполнения:

  1. Построить DAG из последовательности трансформаций
  2. Определить границы стадий в точках перемешивания (широкие зависимости: groupByKey, reduceByKey)
  3. Топологически отсортировать стадии для определения порядка выполнения
  4. Отправить задачи для партиций каждой стадии планировщику задач

Стадии внутри одного конвейера (связанные узкими зависимостями) могут объединять трансформации, избегая промежуточной материализации.