0

我正在加入两个表,如下所示,程序在日志行下方停止并且永远不会继续。

信息 SparkContext:开始工作:Exchange.scala 的 RangePartitioner:79

可能是什么问题和可能的解决方案?列数是个问题吗?任何建议,将不胜感激。

表 1 有 400 行 450 列 表 2 有 1000 行 100 列

        val table1= myTable1.as('table1) 

        val table2= myTable2.as('table2) 

        val results= table1.join(table2,LeftOuter,Some("table1.Id".attr === "table2.id".attr )) 


       println(results.count()) 
4

2 回答 2

1

你在 Spark UI 上看到了什么,有多少执行者注册了?

您可以选择收集驱动程序进程的jstack吗?

此外,如果您正在运行提交,请粘贴确切的命令。我认为您可能会使用较少数量的执行程序线程。

我希望下面的链接会有所帮助

http://spark.apache.org/docs/latest/submitting-applications.html

于 2015-01-21T10:09:56.233 回答
0

将中间 RDD 保存到磁盘应该可以解决问题。rdd.saveAsTextFile("filename") 或 rdd.saveAsParquetFile("filename")

于 2015-03-22T15:55:21.540 回答