spark saveAsTable在最后阶段失败

时间:2019-07-26 17:51:52

标签: apache-spark-sql

我对Spark真的很陌生,这个问题大约有一个星期。

到目前为止,我正在使用具有查询结果(sqlContext.sql)的DF,并将其保存为表saveAsTable)。

我正在使用通过这种方式使用窗口的查询创建DF。

scala> sqlContext.sql("SELECT key1, if(row_number() over a=1 or Fielda is null,1,0) as Rfield1, row_number() over a as sorted_a FROM domain.table1 window a as ( partition by fieldb order by fieldc desc, fieldd desc, fielde desc, fieldf desc, fieldg desc, fieldh desc, fieldi, fieldj desc, fieldk, fieldL desc, FieldM desc)  limit 200")

我使用show命令来证明查询y可以运行,并且得到:

scala> DFOut.show()
+------------+---------------+-----------+
|    Key1    |   RField1     | sorted_a  |
+------------+---------------+-----------+
|    04968556|              1|          1|
|    04968425|              0|          2|
|    04967642|              0|          3|
|    04723129|              0|          4|
|    04723078|              0|          5|
|    39357650|              1|          1|
|    37281208|              0|          2|
|    36825618|              0|          3|
|    36613083|              0|          4|
|    31948119|              0|          5|
|    31354512|              0|          6|
|    30500946|              0|          7|
|    30500941|              0|          8|
|    30500915|              0|          9|
|    30500905|              0|         10|
|    30500841|              0|         11|
|    29681100|              0|         12|
|    29617308|              0|         13|
|    29144052|              0|         14|
|    28911497|              0|         15|
+------------+---------------+-----------+

仅显示前20行

问题是我想另存为表格时

DFOut.saveAsTable("domain.destinationtable")

它花了很多时间在:

  

[阶段3:============================================ ===========>(199 +1)/ 200]

然后:

  

WARN cluster.YarnSchedulerBackend $ YarnSchedulerEndpoint:标记为失败的容器:主机上的container_e25_1560124121636_286351_01_000067:dfsdtlkpvlmx303.mx.corp。退出状态:143。诊断:根据要求将容器杀死。退出代码是143   容器退出,退出代码为非零143   被外部信号杀死

问题仅在于此查询。

以前有人遇到过同样的问题吗?

0 个答案:

没有答案