执行 Pyspark 作业时顶点失败

Posted

技术标签:

【中文标题】执行 Pyspark 作业时顶点失败【英文标题】:Vertex failure While executing Pyspark Job 【发布时间】:2020-09-14 11:34:47 【问题描述】:

我正在使用 Spark 提交命令执行一个 pyspark 作业。之前它是工作文件,我已经执行了 10 多次相同的作业。它只是一个从 csv 文件到配置单元表的简单数据加载命令,并且只包含 500 条记录。当我'现在正在执行相同的命令,它显示顶点失败问题。

我正在使用下面的 Spark 提交命令。

    spark-submit --num-executors 3 --executor-cores 3 --executor-memory 20g  
    --jars /usr/hdp/3.1.0.0-78/hive_warehouse_connector/hive-warehouse-connector-assembly-1.0.0.3.1.0.0-78.jar   
    --py-files /usr/hdp/current/hive_warehouse_connector/pyspark_hwc-1.0.0.3.1.0.0-78.zip main.py 
    /user/hive/source

    /user/hive/sourc>Source File Location

我正在收到错误消息。

    Error while processing statement: FAILED: Execution Error, 
    return code 2 from org.apache.hadoop.hive.ql.exec.tez.TezTask. Vertex failed, vertexName=Map 1,
    vertexId=vertex_1599711935259_0207_17_00, diagnostics=[Task failed, taskId=task_1599711935259_0207_17_00_000000, 
     diagnostics=[TaskAttempt 0 failed, info=[Error: Error while running task ( failure ) : 
    Vertex did not succeed due to OWN_TASK_FAILURE, failedTasks:1 killedTasks:0,
  Vertex vertex_1500011935259_0207_17_00 [Map 1] killed/failed due to:OWN_TASK_FAILURE]Vertex killed, 
    vertexName=Reducer 2, vertexId=vertex_1500011935259_0207_17_00, 
    diagnostics=[Vertex received Kill while in RUNNING state., 
    Vertex did not succeed due to OTHER_VERTEX_FAILURE, failedTasks:0 killedTasks:1, 
   Vertex vertex_1500011935259_0207_17_00 [Reducer 2] killed/failed due to:OTHER_VERTEX_FAILURE]
   DAG did not succeed due to VERTEX_FAILURE. failedVertices:1 killedVertices:1

有人可以建议我如何解决这个错误。?

【问题讨论】:

【参考方案1】:

这个问题得到解决我得到这是由于以下参数的不匹配计算。

    hive.tez.container.size
    tez.runtime.io.sort.mb=0.4*hive.tez.container.size
    tez.runtime.unordered.output.buffer.size-mb=0.1*hive.tez.container.size

【讨论】:

以上是关于执行 Pyspark 作业时顶点失败的主要内容,如果未能解决你的问题,请参考以下文章

Google Cloud Dataproc 上的 Pyspark 作业失败

由于阶段失败,Pyspark 作业中止错误

OOzie 中 PySpark 作业的主类

pyspark 代码将 dynamodb 表复制到配置单元问题:不允许操作

Pyspark 在读取目录中的所有 parquet 文件时失败,但在单独处理文件时成功

Pyspark:TaskMemoryManager:分配页面失败:在错误分析中需要帮助