Без разницы, если вы не дадите никаких подсказок или оптимизаций в своем коде API SQL или DataFrame.Вы можете написать операции соединения, используя DataFrame или SQL API, операции будут проходить через тот же оптимизатор катализатора и преобразовываться в план выполнения.
Физический план, часто называемый планом Spark, определяет, как логический план будет выполняться в кластере, генерируя различные физические стратегии выполнения и сравнивая их с помощью модели затрат.
Физическое планирование приводит к серии RDD и преобразований.Это результат того, почему вы, возможно, слышали, что Spark называют компилятором - он принимает запросы в DataFrames, наборах данных и SQL и компилирует их в преобразования RDD для вас .