java.io.IOException: org.apache.parquet.io.ParquetDecodingException: Can not read value at 0 in bloc

java.io.IOException: org.apache.parquet.io.ParquetDecodingException: Can not read value at 0 in block -1 in file hdfs://test:9999/user…000.snappy.parquet
由于 Hive 和 SparkSQL 在 Decimal 类型上使用了不同的转换方式写入 Parquet,导致 Hive 无法正确读取 SparkSQL 所导入的数据。对于已有的使用 SparkSQL 导入的数据,如果有被 Hive/Impala 使用的需求,建议加上 spark.sql.parquet.writeLegacyFormat=true,重新导入数据。
session.conf.set(“spark.sql.parquet.writeLegacyFormat”, true)

你可能感兴趣的:(疑难杂症)