Несколько человек (1, 2, 3) обсуждали использование Scala UDF в приложении PySpark, обычно по соображениям производительности. Меня интересует обратное - использование Python UDF в проекте Scala Spark.
Меня особенно интересует создание модели с использованием sklearn (и MLFlow), а затем эффективно применяет это к записям в задании потоковой передачи Spark. Я знаю, что могу также разместить модель Python за REST API и выполнять вызовы этого API в приложение потоковой передачи Spark в _ 1_, но управление параллелизмом для этой задачи и настройка API для размещенной модели - это не то, что меня очень волнует.
Возможно ли это без особой индивидуальной разработки с чем-то вроде Py4J? Это просто плохая идея?
Спасибо!
private[spark]
, но вы все равно можете получить к нему доступ, поместив объект-оболочку внутриorg.apache.spark
. Внутри этой функции есть много причуд, которые могут вам не понадобиться. Если вам не нужны файлы udf, для вызова вашего кода может быть достаточно простогоmapPartitions
(развертывание процесса python для каждого раздела). - person turtlemonvh   schedule 24.12.2020