我有一个python函数,我将其转换为Pandas_UDF函数,直到上周工作正常,但最近几天出现以下错误。我们使用Pandas UDF尝试了一个简单的python函数,并且没有抛出此错误。我不确定代码中到底是什么引起了这种情况。火花环境是否有任何变化。如果有帮助,我正在使用Azure Databricks。
搜索仅显示this link,但它很旧。
赞赏有关如何解决此问题的所有建议。
谢谢, 雨滴
SparkException:作业由于阶段失败而中止:23.0阶段中的任务0失败了4次,最近一次失败:23.0阶段中的任务0.3丢失(TID 252、172.17.69.7,执行者0):org.apache.spark.api .python.PythonException:追溯(最近一次调用为last): 文件“ /databricks/spark/python/pyspark/serializers.py”,第180行,_read_with_length 返回self.loads(obj) 载入中的文件“ /databricks/spark/python/pyspark/serializers.py”,行669 返回pickle.loads(obj,encoding = encoding) 子导入中的文件“ /databricks/spark/python/pyspark/cloudpickle.py”,第875行 导入(名称) ImportError:没有名为“ _pandasujson”的模块
在处理上述异常期间,发生了另一个异常:
回溯(最近通话最近): 主文件“ 394”中的文件“ /databricks/spark/python/pyspark/worker.py” func,profiler,deserializer,serializer = read_udfs(pickleSer,infile,eval_type) read_udfs中的文件“ /databricks/spark/python/pyspark/worker.py”,第234行 arg_offsets,udf = read_single_udf(pickleSer,infile,eval_type,runner_conf) read_single_udf中的文件“ /databricks/spark/python/pyspark/worker.py”,第160行 f,return_type = read_command(pickleSer,infile) 在read_command中的文件“ /databricks/spark/python/pyspark/worker.py”,第69行 命令=序列化器._read_with_length(文件) 文件“ /databricks/spark/python/pyspark/serializers.py”,第183行,_read_with_length 引发SerializationError(“由” + traceback.format_exc()引起) pyspark.serializers.SerializationError:由回溯引起(最近一次调用最近): 文件“ /databricks/spark/python/pyspark/serializers.py”,第180行,_read_with_length 返回self.loads(obj) 载入中的文件“ /databricks/spark/python/pyspark/serializers.py”,行669 返回pickle.loads(obj,encoding = encoding) 子导入中的文件“ /databricks/spark/python/pyspark/cloudpickle.py”,第875行 导入(名称) ImportError:没有名为“ _pandasujson”的模块