unionAll in spark SQL继续挂起

时间:2016-03-31 04:27:17

标签: apache-spark apache-spark-sql union-all

我在OLTP / OLAP处理后收到两个数据集,虽然这两个数据集包含相同的字段,但在获取相同字段时,它们的架构会有所不同,例如字段为Null或Not Null。

详细解释说我有df1和df2。

df1 has field 'a' long with not null
df2 has field 'a' long with null

现在,当我在做unionAll时,我正在修改其中一个模式

val x = df1.sqlContext.createDataFrame(df1.rdd, df2.schema)
x.unionAll(df2)
o/p : Job execution goes on hang

另一次尝试

df1.sqlContext.createDataFrame(df1.rdd, df2.schema)
df1.unionAll(df2)
o/p : Here also Job execution goes on hang

请让我知道如何避免这个问题,或者我做错了什么。

〜PRASHANT

1 个答案:

答案 0 :(得分:0)

我经历过同样的事情。检查unionAll之前和之后的分区数。您可以看到此计数可能是df1 + df2,因为操作是连接行'。您可以像这样重新分区数据:

{{1}}

有关分区的详细信息,请参阅How to define partitioning of DataFrame?