是否可以从Scala(Spark)调用Python函数



我正在创建一个火花作业,该列需要使用Python编写的函数添加到数据框中。其余的处理是使用Scala进行的。

我找到了如何从Pyspark调用Java/Scala函数的示例:

  • https://community.hortonworks.com/questions/110844/is-it-possible-to-call-a-a-scala-function-in-pythonp.html
  • http://aseigneurin.github.io/2016/09/01/spark-calling-scala-cala-cola-code-from-pyspark.html

我发现发送数据的唯一示例是使用pipe

  • 如何在同一火花项目中同时使用Scala和Python?

我是否有可能将整个数据框发送到python函数,使函数操纵数据并添加其他列,然后将结果数据框发送回Calla scala函数?

如果这是不可能的,我当前的解决方案是运行pyspark进程并调用多个scala函数来操纵数据框,这不是理想的。

只需从Python注册一个UDF,然后从Scala评估SQL语句,该语句使用该函数使用dataFrame - 工作于魅力,只是尝试过;)https://github.com/jupyter/docker-stacks/tree/master/all-spark-notebook是在托雷(Toree)运行笔记本的好方法,该笔记本将Scala和Python代码混合使用相同的Spark上下文。

我找到了这篇文章:

使用jupyter使用Scala,Spark和Python的机器学习:设置

它向您展示了如何设置使用Spark和Python的Jupyter笔记本。如果您只是在尝试可能足够的数据。

相关内容

  • 没有找到相关文章