首页 > 解决方案 > 如何加速 Spark (Pyspark) 中的缓存?

问题描述

我需要在 Pyspark(2.4.4) 中缓存一个数据帧,而且内存缓存很慢。

通过读取相同的文件(CSV),我使用 Spark 缓存对 Pandas 缓存进行基准测试。具体来说,Pandas 的速度要快 3-4 倍。

提前致谢

标签: apache-sparkcachingpysparkapache-spark-sql

解决方案


你在比较苹果和橘子。Pandas 是单机单核数据分析库,而 pyspark 是分布式(集群计算)数据分析引擎。这意味着由于开销(分布式架构,JVM ...),您永远不会在使用 pyspark 的单台机器上读取小文件的 pandas 表现出色。这也意味着一旦您的文件超过一定大小,pyspark 的性能就会优于 pandas。

作为开发人员,您必须选择最适合您要求的解决方案。当 pandas 对您的项目来说速度更快并且您预计未来数据不会大幅增加时,请使用 pandas。否则使用 pyspark 或 dask 或...


推荐阅读