hive和spark版本问题

FAILED: SemanticException org.apache.hadoop.hive.ql.metadata.HiveException: java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient
当你在执行hive命令之后进行操作,你会发现有这么个报错,这就是因为hive和spark版本的问题,因为你安装的是Apache的版本,而不是CDH版本(CDH会自动的管理各组件的版本依赖)
这里我的版本是spark版本是2.2.0,hive是2.3.6
每当spark 提交作业的时候回去检测hive的vision表,发现版本不对就会更新vision表,然后你用hive去连,会发现版本不对,因此会报错,这时候可以把MySQL里的版本更新,但是你再次启动spark hive的时候,依旧会存在这个问题,所以这时候需要用到CDH了
更新命令(在MySQL的HIVE表中):UPDATE VERSION SET SCHEMA_VERSION=‘2.3.0’, VERSION_COMMENT=‘Set by MetaStore [email protected]’ where VER_ID=1;
hive的DEBUG模式:
hive --hiveconf hive.root.logger=DEBUG,console

第二种解决方式:
将Local MetaStore安装模式改为Remote MetaStore模式就行了

自己安装Apache的版本选择很重要,稍不注意就会冲突,而利用cdh安装的话会自动的帮你解决各种依赖问题

你可能感兴趣的:(hive)