问题

近日学习了使用Java api对Hbase进行DDL、DML操作,但是在使用api对表进行增删改查以及创建命名空间时,程序一直运行并不报错,但是在使用api确认表是否存在时程序很快返回。网上查阅资料后得到:应该配置Zookeeper端口号等方案,但经尝试后并未解决问题。

配置Zookeeper端口号:

Configuration configuration = HBaseConfiguration.create();
configuration.set(HConstants.ZOOKEEPER_CLIENT_PORT,"2181");

解决方案
C:\Windows\System32\drivers\etchosts文件的最后添加集群主机IP地址及对应名称,比如用3台虚拟机(node01,node02,node03)搭建集群:

192.168.xxx.xxx node01
192.168.xxx.xxx node02
192.168.xxx.xxx node03

添加后程序立刻响应并完成操作。
之前在使用api对hadoop集群进行操作时也没有配置host文件,在创建Configuration时直接写入了ip地址,程序可以运行。但使用api对Hbase进行操作时不配置就导致程序无响应。

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐