如何在用Java编写的Spark应用程序中运行Python代码?

如何在用Java编写的Spark应用程序中运行Python代码?,java,python,hadoop,apache-spark,avro,Java,Python,Hadoop,Apache Spark,Avro,我一直在研究如何从Java代码运行Python代码,我已经看到了一些这样做的选项 我的场景有点不同,想象一下用java编写的Spark应用程序将处理一个分布的大型数据集(比如3B的记录,大约1TB大小)。 对于每个记录,Python代码将被调用一次。Java代码需要传递一个Avro记录,Python代码将处理它并返回结果 考虑到性能非常重要,我们将处理大型数据集,我正在尝试找出解决此问题的最佳选择 关于[理论上]的简单性,我想到的主要想法是注册Python UDF以在Java中使用。以下是一些相

我一直在研究如何从Java代码运行Python代码,我已经看到了一些这样做的选项

我的场景有点不同,想象一下用java编写的Spark应用程序将处理一个分布的大型数据集(比如3B的记录,大约1TB大小)。 对于每个记录,Python代码将被调用一次。Java代码需要传递一个Avro记录,Python代码将处理它并返回结果


考虑到性能非常重要,我们将处理大型数据集,我正在尝试找出解决此问题的最佳选择

关于[理论上]的简单性,我想到的主要想法是注册Python UDF以在Java中使用。以下是一些相关的SOs,我还没有审查,更不用说自己测试了:-更多资源(在蜂巢中创建永久性UDF以在spark中使用):-