spark接hbase遇到版本兼容的问题

spark集群spark-submit提交后运行HbaseTest设置zookeeper参数:

conf.set("hbase.zookeeper.property.clientPort", "2181")
conf.set("hbase.zookeeper.quorum", "ip1,ip2")


运行时报错:

Caused by: java.lang.IllegalAccessError: com/google/protobuf/HBaseZeroCopyByteString
        at org.apache.hadoop.hbase.protobuf.RequestConverter.buildRegionSpecifier(RequestConverter.java:897)
        at org.apache.hadoop.hbase.protobuf.RequestConverter.buildGetRowOrBeforeRequest(RequestConverter.java:131)
        at org.apache.hadoop.hbase.protobuf.ProtobufUtil.getRowOrBefore(ProtobufUtil.java:1402)
        at org.apache.hadoop.hbase.client.HTable$2.call(HTable.java:701)
        at org.apache.hadoop.hbase.client.HTable$2.call(HTable.java:699)
        at org.apache.hadoop.hbase.client.RpcRetryingCaller.callWithRetries(RpcRetryingCaller.java:120)

网上搜了一下看到如下:


试了很多方法 ,还是报错,最后想到因为是0.96的bug,干脆依赖的jar全部换掉,都换成0.98的,如下:


以上是依赖的所有jar,有需要的同学可以参考,我的hbase的版本是0.98.13

换了jar之后编译,放到spark上跑,成功取到表里的数据。

阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Rosen_Luo/article/details/46832505
个人分类: Hbase
上一篇IntelliJ IDEA开发Spark1.4.0环境部署
下一篇spark1.4 读取hbase 0.96 报错 java.io.NotSerializableException: org.apache.hadoop.hbase.io.ImmutableBytes
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭