当我运行诸如pandas或scikit之类的python库的python库时,我试图通读并确切地了解火花来自何处,但是我看不到任何特别有用的信息。如果不使用pyspark数据框就可以实现相同的加速,那么我可以只使用pandas部署代码,并且它的性能大致相同吗?
我想我的问题是:
如果我有有效的熊猫代码,是否应该将其翻译为PySpark以提高效率?
答案 0 :(得分:1)
如果您询问是否通过在驱动程序节点上启动任意Python代码来获得加速,则答案是否定的。驱动程序是普通的Python解释器,它不会以“魔术”方式影响您的代码。
如果我有有效的熊猫代码,是否应该将其翻译为PySpark以提高效率?
如果要获得分布式计算的好处,则必须使用分布式原语重写代码。但这不是免费的午餐:
换句话说-如果您的代码在Pandas或Scikit Learn上运行正常,那么将其重写为Spark的可能性很小。