熊猫到PySpark转换器

时间:2019-07-07 17:51:29

标签: python pandas apache-spark pyspark

我的任务是主要使用Pandas库将大量的Python代码转换为PySpark。在线有“翻译”吗?如果没有,我该如何创建一个将Pandas代码转换为PySpark代码的转换器?

我尝试了逐行手动转换,但是速度很慢。

1 个答案:

答案 0 :(得分:1)

https://databricks.com/blog/2017/10/30/introducing-vectorized-udfs-for-pyspark.html

这篇博客文章介绍了即将发布的Apache Spark 2.3版本中的Pandas UDF(又称矢量化UDF)功能,该功能大大提高了Python中用户定义函数(UDF)的性能和可用性。

在过去的几年中,Python已成为数据科学家的默认语言。诸如pandas,numpy,statsmodel和scikit-learn之类的软件包已得到广泛采用,并成为主流工具包。同时,Apache Spark已成为处理大数据的事实上的标准。为了使数据科学家能够利用大数据的价值,Spark在版本0.7中添加了Python API,并支持用户定义的功能。这些用户定义的函数一次只能运行一行,因此遭受很高的序列化和调用开销。结果,许多数据管道在Java和Scala中定义了UDF,然后从Python调用了它们。

基于Apache Arrow构建的Pandas UDF为您带来两全其美的能力-完全用Python定义低开销,高性能UDF的能力。

在Spark 2.3中,将有两种类型的Pandas UDF:标量和分组地图。接下来,我们使用四个示例程序来说明它们的用法:加一,累积概率,减法均值,普通最小二乘线性回归。