错误展示:
错误原因:
从HDFS中读取的表的属性名中包含空格,这在Hive中是非法的,所以需要将字段名中空格替换为其他合法字符。
解决方法:
例如:在Spark中对原DataFrame进行转换操作。
// 替换字段名中的空格为下划线
val df3 = df2.schema.fieldNames
.foldLeft(df2){
(x,y) => x.withColumnRenamed(y, y.replaceAll(" ","_"))
}
最后重新上传,在Hive中重新查看即可。