Spark UI - Spark SQL Query Выполнение - PullRequest
0 голосов
/ 11 июня 2018

Я использую Spark SQL API.Когда я вижу раздел Spark SQL в пользовательском интерфейсе spark, в котором подробно описывается план выполнения запроса, он говорит, что сканирует этап паркетного несколько раз, хотя я читаю паркет только один раз.Есть ли логическое объяснение?

Я также хотел бы понять различные операции, такие как Hash Aggregate, SortMergeJoin и т. Д., И лучше понять интерфейс Spark в целом.

1 Ответ

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

Если вы делаете союзы или объединения, они могут заставить ваш план «дублироваться» с самого начала.

Поскольку искра не сохраняет промежуточные состояния (если вы не кэшируете) автоматически, она должна будет прочитатьисточники несколько раз

что-то вроде

1- df = Read ParquetFile1
2- dfFiltered = df.filter('active=1')
3- dfFiltered.union(df)

План, вероятно, будет выглядеть так: readParquetFIle1 -> union <- filter <- readParquetFIle1 </p>

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...