Scala Spark挂在零运行任务的联合上

Scala Spark挂在零运行任务的联合上,scala,apache-spark,union,distributed,Scala,Apache Spark,Union,Distributed,我有两个RDD[T]类型的记录 For example: val a: RDD[Integer] = .... val b: RDD[Integer] = ... when I perform val z = a.union(b) println(z) 我发现火花永远不会熄灭 [第23阶段:============================>(1) +[0)/2] 不确定为什么显示0个正在运行的任务 环境: 火花1.6 Scala 2.11.6 a和b中的记录总数分别为10条记录。这是一

我有两个RDD[T]类型的记录

For example:
val a: RDD[Integer] = ....
val b: RDD[Integer] = ...
when I perform
val z = a.union(b)
println(z)
我发现火花永远不会熄灭

[第23阶段:============================>(1) +[0)/2]

不确定为什么显示0个正在运行的任务

环境:

火花1.6

Scala 2.11.6

a和b中的记录总数分别为10条记录。这是一个小文件


是否有人遇到过这样的情况:运行任务为零,spark挂起且永不结束。

如果可以复制它,是否可以执行线程转储并将其发布到此处?资源是否已耗尽?您运行的是哪种模式spark?如果本地开始使用--master local[*],如果确保容器(资源)可用。如果两个转换都应用于同一个RDD,请在调用它们之前使用
.cache()
。@YuvalItzchakov不,两者都是不同的RDD。当它碰到钥匙孔时就会冻结。摘要指标尚未启动任务尚未启动任务尚未启动任务我使用combineByKey对RDD进行了转换,之后我看到了这种行为。@YuvalItzchakov我尝试使用.cache()和类似.cache().count()的操作,然后执行联合。在这种情况下,它起了作用。不知道为什么?有什么理论支持这种行为吗?我试图在我的主要源代码中避免这么多操作,这将是一个性能问题。正在尝试查看是否有解决方法。如果可以复制它,是否可以执行线程转储并将其发布到此处?资源是否已用完?您运行的是哪种模式spark?如果本地开始使用--master local[*],如果确保容器(资源)可用。如果两个转换都应用于同一个RDD,请在调用它们之前使用
.cache()
。@YuvalItzchakov不,两者都是不同的RDD。当它碰到钥匙孔时就会冻结。摘要指标尚未启动任务尚未启动任务尚未启动任务我使用combineByKey对RDD进行了转换,之后我看到了这种行为。@YuvalItzchakov我尝试使用.cache()和类似.cache().count()的操作,然后执行联合。在这种情况下,它起了作用。不知道为什么?有什么理论支持这种行为吗?我试图在我的主要源代码中避免这么多操作,这将是一个性能问题。试着看看是否有解决方法。