Производительность PySpark: UDF против Join, разбор через физические планы Spark
GeekCoders
0:00 / 0:00
Производительность PySpark: UDF против Join, разбор через физические планы Spark
90 просмотров · 3 часа назад
GeekCoders
35,4 тыс. подписчиков
90 просмотров · 3 часа назад
Онлайн-курс по GCP Data Engineer: https://www.geekcoders.co.in/courses/...
В этом видео мы сравниваем два способа добавления сегментов клиентов к данным заказа в PySpark: пользовательскую функцию Python и операцию объединения (join). Оба дают одинаковый результат, но планы выполнения сильно различаются, и это различие влияет на скорость и потребление памяти.
Мы рассмотрим:
Почему пользовательские функции Python замедляют работу Spark и почему поиск с помощью collect() рискован на больших таблицах
Как работает версия с объединением, включая широковещательные объединения, и почему ничего не передается драйверу
Как читать физический план: распознавание ArrowEvalPython (обходной путь Python) и BroadcastHashJoin (работа, которая остается в Spark)
Что означает «полностью поддерживается Photon» и почему шаг Python блокирует полный путь Photon
Как намеренно обрабатывать несовпадающие записи с помощью левого объединения и объединения, вместо того, чтобы неожиданно получить null
Код и слайды включены в описание.
Теги: #PySpark #ApacheSpark #Databricks #DataEngineering #SparkPerformance #UDF #BroadcastJoin #SparkSQL #BigData