cdp搭建测试spark功能 遇到问题
  TEZNKK3IfmPf 2023年11月12日 29 0

公司集群由cdh换成了cdp。

用spark代码测试 读取hive内的ods数据经过map等算子转化,然后存取到另外一个dw表里。代码都在cdh里ok的,已经发布生产。

备注cdh, spark版本为2.4.0-cdh6.3.2 hive版本为 2.1.1-cdh6.3.2

cdp spark版本为2.4.7.7.1.7.0-551 hive版本 3.1.3000.7.1.7.0-551

本着简单的方式只修改了pom文件,然后打包放到linux去跑数。

cdp搭建测试spark功能 遇到问题

出现如下错误

org.apache.hadoop.hive.ql.metadata.HiveException: java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient

cdp搭建测试spark功能 遇到问题

这还由啥说的复制 Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient去百度下。

发现千篇一律的metastore不能启动没有启动 通过 hive metastore xxxxx启动了就好了。

然而我自己通过beeline已经能连接到了,所以上述问题肯定不存在

cdp搭建测试spark功能 遇到问题那么我报一个别人都不会报的错? 

首先看下这个报错是什么?不能实例化一个连接hiveMetaStore的session。

1.有可能metastore没开启,那么不能实例化。 排除了

2.我们代码的问题,实例化不行。

那么研究下2...继续看报错。

cdp搭建测试spark功能 遇到问题

Caused by: java.lang.NoSuchMethodError: org.apache.hadoop.hive.shims.ShimLoader.getHadoopThriftAuthBridge()Lorg/apache/hadoop/hive/thrift/HadoopThriftAuthBridge;

看到了这句话? 说实话看不懂这个shim是啥啊。但是不妨碍我在idea里找到这个

cdp搭建测试spark功能 遇到问题

 说实话我也看不出,毕竟设计到源码了。

但是我突然想到个问题,报的错是NoSuchMethodError,这是什么意思呢?

cdp搭建测试spark功能 遇到问题

 突然间恍然大悟。仔细看下版本 hive-exec1.2.1

 cdp搭建测试spark功能 遇到问题

 额外说句 这个jar包 我之前一篇文章说过 关于acid的表,设计到了这个jar,所以我就知道这个jar不对,服务器上有这个jar

cdp搭建测试spark功能 遇到问题

 然后我打包又打了一个,两个jar都有刚刚上述的shims类和方法,这不就报错了么?

在pom文件里 没有发现直接引用该jar。。。通过

cdp搭建测试spark功能 遇到问题

cdp搭建测试spark功能 遇到问题 

 找到是 spark-hive包下的,所以排除就好了

cdp搭建测试spark功能 遇到问题

 下面的metastore也要排除 否则会报同样的错,就是后面的类有点不一样原因同上

cdp搭建测试spark功能 遇到问题

 附上成功的代码

cdp搭建测试spark功能 遇到问题

 cdp搭建测试spark功能 遇到问题

 cdp搭建测试spark功能 遇到问题

 如果帮到你,点个赞是对我的鼓励,谢谢

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月12日 0

暂无评论

推荐阅读
  TEZNKK3IfmPf   2023年11月14日   23   0   0 Hive
  TEZNKK3IfmPf   2023年11月14日   21   0   0 mysqlHive
  TEZNKK3IfmPf   2023年11月14日   32   0   0 Hive视图
  TEZNKK3IfmPf   2023年11月14日   23   0   0 hadoopHive
  TEZNKK3IfmPf   2024年04月26日   65   0   0 hadoopHive
TEZNKK3IfmPf