springboo2 集成 hbase 2

文章目录

  • 环境说明:

springboo2 集成 hbase 2

环境说明:

hbase:2.1.5
springboot:2.1.1.RELEASE
hadoop :2.8.5
java: 8+

hadoop环境:Hadoop 2.8.5 完全分布式HA高可用安装(二)–环境搭建
hbase环境:hbase 2.1 环境搭建–完全分布式模式 Advanced - Fully Distributed

注意:Spring for Apache Hadoop已经停止维护,新版不支持哦!

现在网上的资料都已经过时了,太老了。hbase使用的都是比较老的版本,而且Spring for Apache Hadoop也已经停止维护:
springboo2 集成 hbase 2_第1张图片
所以,目前已经无法正常使用spring-data-hadoop来操作hbase了。
如果我们使用这样的版本:


            org.springframework.data
            spring-data-hadoop-boot
            2.5.0.RELEASE
            
                
                    javax.servlet
                    servlet-api
                
            
        

        
            org.springframework.data
            spring-data-hadoop
            2.5.0.RELEASE
            
                
                    javax.servlet
                    servlet-api
                
            
        

        
            org.apache.hbase
            hbase-client
            2.1.5
        

会报错:

java.lang.ClassNotFoundException: org.apache.hadoop.hbase.client.HTableInterface

因为在2.1.5版本的hbase-client中已经将HTableInterface删除。
我们看看老版本的hbase-client对HTableInterface的描述:
springboo2 集成 hbase 2_第2张图片
可以看到,HTableInterface已经不推荐使用,而是使用Table来代替,显然由于spring-data-hadoop停止维护,没有对其进行更新。

解决办法:

  • 去修改spring-data-hadoop源码
  • 直接使用原生的hbase-client来操作: 使用最新的 hbase-client 2.1 操作 hbase

老版本的请参考其他人的博客:https://blog.csdn.net/rohsuton/article/details/84827973

你可能感兴趣的:(hbase)