报错内容:
查阅论坛中的历史问题发现有相同的问题,原因是exchange中hive的metastore版本和 cdh中hive的metastore版本不一致导致的,有大佬知道怎么修改这个版本吗?
我cdh版本是 6.3.2,对应的spark版本是 2.4.0,hive版本是2.1.1,hadoop版本是3.0.0
报错内容:
不理解你的问题诶
你把错误日志贴多一写,createOrReplaceTempView的时候是用的sparksql,不依赖hive的。 除非你的spark集群绑定了hive环境,会将临时表写入到hive中。
暂时解绑hive 或者更新下Exchange中hive metastore的版本(不要直接在jars中修改metastore版本,要在工程中修改依赖版本)
感谢,问题已经解决了;升级了Exchange 中hive metastore 的版本,修改 pom.xml 文件内容如下:
<spark.version>2.4.0-cdh6.3.2</spark.version>
<hadoop.version>3.0.0-cdh6.3.2</hadoop.version>
增加的内容如下:repositories 标签下面
cloudera
Repository - Sonatype Nexus Repository
或者可以试一下打包nebula的时候把spark相关的scope改成provided,由平台提供实际类。很多企事业单位底层用的cdh tdh 之类的商业hadoop版本,里面各组件版本都说不准。