加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程 > 正文

join – Spark 2.0.0错误:PartitioningCollection要求其全部分

发布时间:2021-05-16 13:08:00 所属栏目:编程 来源:网络整理
导读:我在Spark中插手一些DataFrames而且我一向收到以下错误: PartitioningCollection requires all of its partitionings have the same numPartitions. 这好像产生在我将两个DataFrame毗连在一路后,每个看起来都很公道,可是在插手它们之后,假如我实行从毗连的Da

我在Spark中插手一些DataFrames而且我一向收到以下错误:

PartitioningCollection requires all of its partitionings have the same numPartitions.

这好像产生在我将两个DataFrame毗连在一路后,每个看起来都很公道,可是在插手它们之后,假如我实行从毗连的DataFrame中获取一行,我会收到此错误.我真的只是想相识为什么会呈现这个错误可能背后的寄义是什么,由于我好像无法找到任何干于它的文档.

以下挪用导致此非常:

val resultDataframe = dataFrame1
  .join(dataFrame2,$"first_column" === $"second_column").take(2)

但我虽然可以打电话

dataFrame1.take(2)

dataFrame2.take(2)

我还实行从头分区DataFrames,在插手之前行使dataFrame1和dataFrame2上的Dataset.repartition(numPartitions)或Dataset.coalesce(numParitions),以及在毗连之后的resultDataFrame上,但好像没有任何对象影响错误.一些大致的谷歌搜刮后,我无法找到其他人获得错误的参考…

办理要领

我在已往几天碰着了同样的题目,当我在互联网上找不到任何引用时,我很扫兴.直到你的!

我要添加的一些工作:在数据帧(多个毗连)上的一组很是伟大的操纵之后,我获得了错误.另外,这些操纵涉及从统一父数据帧天生的数据帧.
我试图用一个最小的例子来复制它,可是从我的管道中提取它并不是一件轻易的事.

我猜疑当DAG过于伟大时,Spark也许在计较正确的打算时碰着贫困.
不幸的是,好像假如它是Spark 2.0.0中的一个错误,那么夜间构建还没有修复它(我几天前实行过2.0.2快照).

办理题目(暂且)的适用办理方案好像是:在管道中写入磁盘(在某些时辰)某些数据帧,然后再次读取它们.这有用地迫使Spark有一个更小,更易于打点的优化打算,并且它不再瓦解.虽然,这只是一个姑且修复.

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读