springboo2 集成 hbase 2
程序员文章站
2022-05-23 08:36:47
...
文章目录
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也已经停止维护:
所以,目前已经无法正常使用spring-data-hadoop来操作hbase了。
如果我们使用这样的版本:
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-hadoop-boot</artifactId>
<version>2.5.0.RELEASE</version>
<exclusions>
<exclusion>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-hadoop</artifactId>
<version>2.5.0.RELEASE</version>
<exclusions>
<exclusion>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.apache.hbase</groupId>
<artifactId>hbase-client</artifactId>
<version>2.1.5</version>
</dependency>
会报错:
java.lang.ClassNotFoundException: org.apache.hadoop.hbase.client.HTableInterface
因为在2.1.5版本的hbase-client中已经将HTableInterface删除。
我们看看老版本的hbase-client对HTableInterface的描述:
可以看到,HTableInterface已经不推荐使用,而是使用Table来代替,显然由于spring-data-hadoop停止维护,没有对其进行更新。
解决办法:
- 去修改spring-data-hadoop源码
- 直接使用原生的hbase-client来操作: 使用最新的 hbase-client 2.1 操作 hbase
老版本的请参考其他人的博客:https://blog.csdn.net/rohsuton/article/details/84827973
推荐阅读
-
台积电5nm打造1700平方毫米巨型中介层:集成96GB HBM2E内存
-
vue2.x集成百度UEditor富文本编辑器的方法
-
[HBase Manual] CH2 Getting Started
-
Spring Boot2(二):使用Spring Boot2集成Mybatis缓存机制
-
小白的springboot之路(十二)、集成log4j2日志
-
Cocos2d-x 3.0中集成社交分享ShareSDK的详细步骤和常见问题解决
-
spring boot2集成ES详解
-
Spring Boot2(三):使用Spring Boot2集成Redis缓存
-
集成AMD GPU 三星新Exynos疯狂堆料:Cortex-X2大核加持
-
Intel下代至强集成64GB HBM2e:没有DDR5也能跑