sparkpython效率低 | 您所在的位置:网站首页 › pandas效率过低 › sparkpython效率低 |
Spark新手在这里.我尝试使用Spark对我的数据框执行一些pandas操作,并且令人惊讶的是它比纯Python慢(即在Python中使用pandas包).这是我做的: 1) 在Spark中: train_df.filter(train_df.gender == '-unknown-').count() 返回结果大约需要30秒.但使用Python需要大约1秒钟. 2)在Spark中: sqlContext.sql("SELECT gender, count(*) FROM train GROUP BY gender").show() 同样的事情,在Spark中大约需要30秒,在Python中需要1秒. 我的Spark比纯Python慢得多的几个原因: 1)我的数据集大约有220,000条记录,24 MB,而且这个数据集不足以显示Spark的扩展优势. 2)我的火花在本地运行,我应该在像Amazon EC这样的东西上运行它. 3)在本地运行是可以的,但我的计算能力并没有削减它.这是一款8 Gig RAM 2015 Macbook. 4)Spark很慢,因为我正在运行Python.如果我使用Scala,它会好得多. (Con论点:我听说很多人都在使用PySpark.) 哪一个最有可能是原因,还是最可信的解释?我很想听到一些Spark专家的意见.非常感谢你!! 与较小的数据集上的pyspark相比,Python肯定会表现得更好.处理更大的数据集时,您会看到不同之处. 默认情况下,在SQL上下文或Hive上下文中运行spark时,默认情况下将使用200个分区.您需要使用sqlContext.sql(“set spark.sql.shuffle.partitions = |
CopyRight 2018-2019 实验室设备网 版权所有 |