我有一个大型数据集,我试图使用Apache Spark运行(大约5TB)。我注意到,当作业开始时,它会非常快速地检索数据,并且作业的第一阶段(map
转换)非常快速地完成。
但是,在处理了大约500GB的数据后,map
转换开始变慢,一些任务需要几分钟甚至几小时才能完成。
我正在使用10台机器,122 GB和16CPU,我正在为每个工作节点分配所有资源。我想过增加机器的数量,但还有其他的东西我可能会丢失吗?
我尝试过我的一小部分数据集(30 GB),它似乎工作正常。
答案 0 :(得分:5)
似乎舞台在某些节点本地完成比其他节点更快。从这一观察出发,我会尝试这样做:
答案 1 :(得分:0)
在没有任何更多信息的情况下,似乎在计算的某个时刻,您的数据会溢出到磁盘,因为内存中没有更多空间。 这只是一个猜测,你应该检查你的Spark UI。