当与50 GB的文本文件一起使用时,spark sql应用程序崩溃

时间:2017-04-21 19:14:18

标签: scala apache-spark apache-spark-sql

我们正在使用带有6个奴隶的火花1.6。每个从站有大约64 GB的RAM。我们正在将csv文件转换为数据帧并加入它们。其中一个文件大约50gb,另一个是拉链大约25 MB。即使有这么多RAM,这个过程也会崩溃。大文件有几百万行。内存与文件大小是否有经验法则。将文件视为平面文件而不是CSV帮助?

1 个答案:

答案 0 :(得分:0)

您可以通过增加spark.sql.shuffle.partitions来尝试查看是否有效,默认为200,所以尝试增加到2048,玩一下,看看是否有帮助。

在你的情况下,最好的方法是将df转换为RDD并通过HashPartitioner对RDD进行分区。