SparkSQL访问Hive遇到的问题及解决方法

需要先将hadoop的core-site.xml,hive的hive-site.xml拷贝到project中

测试代码

SparkSQL访问Hive遇到的问题及解决方法

报错

SparkSQL访问Hive遇到的问题及解决方法

查看源码

SparkSQL访问Hive遇到的问题及解决方法

解决方法

将$HIVE_HOME/lib下的spark-hive_2.11-2.4.2.jar与spark-hive-thriftserver_2.11-2.4.2.jar添加到project中

继续报错

SparkSQL访问Hive遇到的问题及解决方法

查看源码

SparkSQL访问Hive遇到的问题及解决方法

进入ConfVars

SparkSQL访问Hive遇到的问题及解决方法

发现ConfVars中定义的变量并没有METASTORE_CLIENT_SOCKET_LIFETIME,而HiveConf.java来自于hive-exec-1.1.0-cdh5.7.0.jar,即证明hive1.1.0中并没有假如该参数。

解决方法

将hive依赖换为1.2.1

SparkSQL访问Hive遇到的问题及解决方法

继续报错

SparkSQL访问Hive遇到的问题及解决方法

解决方法

这是因为远端没有启动hive造成的,启动hive时需要配置metastore。

dawei

【声明】:北京站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。