原因是DataFrame API和Hive API不兼容,网上有Scala版本的解决办法https://www.jianshu.com/p/a91368a33a31。但是java版本的还不知道怎么解决。
Dataset goodstudentsDS = sparkSession.sql("SELECT SI.name,SI.age,SS.score" + " FROM students_info SI" + " JOIN students_scores SS ON SI.name=SS.name" + " WHERE SS.score >=70"); goodstudentsDS.show(); //接着将DataFrame中的数据保存到good_students_info中 sparkSession.sql("DROP TABLE IF EXISTS good_students_info"); goodstudentsDS.write().mode(SaveMode.Append).format("hive").saveAsTable("good_students_info"); 报错信息:
Exception in thread "main" org.apache.spark.sql.AnalysisException: Cannot create hive serde table with saveAsTable API;
大佬们,该怎么解决呢???????