我有一个Hive表,存储为orc,与我使用spark作业创建的数据框架具有相同的模式 . 如果我将数据框保存为css,json,text,那么它可以正常工作 . 我可以将这些文件手动迁移到Hive表中 .
但是当我尝试直接插入蜂巢时
df.insertInto("table_name", true)
我在YARN UI中收到此错误:
ERROR ApplicationMaster: User class threw exception: org.apache.spark.sql.AnalysisException: cannot resolve 'cast(last_name_2 as array<double>)' due to data type mismatch: cannot cast StringType to ArrayType(DoubleType,true);
我还尝试在调用insert之前注册临时表,并使用:
df.write.mode(SaveMode.Append).saveAsTable("default.table_name")
我究竟做错了什么?