首页 > 解决方案 > 火花错误读取镶木地板

问题描述

我们正在使用 apache spark,我们将 json 文件作为 gzip 压缩的 parquet 文件保存在 hdfs 中。但是,当读回它们以生成数据帧时,某些文件(但不是全部)会引发以下异常:

ERROR Executor: Exception in task 2.0 in stage 72.0 (TID 88)
org.apache.parquet.io.ParquetDecodingException: Can not read value at 351 in 
block 0 in file file:/path/to/file [...]
Caused by: java.lang.ClassCastException: 
org.apache.spark.sql.catalyst.expressions.MutableLong cannot be cast to 
org.apache.spark.sql.catalyst.expressions.MutableDouble

任何帮助深表感谢!

标签: apache-sparkparquet

解决方案


当您尝试同时读取具有不同架构的 parquet 文件时,会发生这种错误。尝试让 /convert 您的所有源文件具有相同的架构或同时转换所有源文件。


推荐阅读