Java API 远程连接Standalone模式的Hbase

前言

很多人使用HBase都是从Standalone模式开始的,毕竟不是每个人都有一个集群可以用来随便测试的。但是很多书上没有对如何使用Java API远程连接Standalone模式的HBase详细介绍,导致很多人的代码在连接HBase时碰到很多问题。本文可为你解惑

步骤一,JDK

安装Standalone模式的HBase,这个看看HBase的官网即可。
设置JDK,一般jdk7即可,目前jdk8经常会碰到那个“util.map”的class问题。
在linux的用户(安装HBase的用户)的.bash_profile文件的末尾加上如下代码:

#注意替换为自己的jdk安装目录
export JAVA_HOME=/opt/jdk7
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
#注意替换为自己的hbase安装目录
export HBASE_HOME=/opt/hbase
export PATH=${HBASE_HOME}/bin:${PATH}

步骤二,hosts(特别重要)

修改/etc/hosts文件,在其末尾加入如下代码:

#注意改为自己的ip和hostname名称
192.168.33.44 hbase_svr_name

很多人发现自己使用Java远程连接Hbase报错,都会出现zookeeper连接127.0.0.1的信息,都是因为hosts文件没有设置。

步骤三,hbase-site.xml

修改$HBASE_HOME/conf/hbase-site.xml文件:

<configuration>
<property>
  <name>hbase.rootdir</name>
  <!--注意这里改为自己的hbase的存储目录 -->
  <value>file:///opt/hbase/data</value>
</property>

<property>
  <name>hbase.zookeeper.quorum</name>
  <!--注意这里改为自己的hostname-->
  <value>hbase_svr_name</value>
</property>

<property>
  <name>hbase.zookeeper.property.dataDir</name>
  <value>/opt/hbase/data/hbase</value>
</property>

<property>
  <name>zookeeper.znode.parent</name>
  <value>/hbase</value>
</property>

</configuration>

步骤四:调用API

无论是windows还是linux下,调用API是一样的,除了要把hbase、hadoop、zookeeper依赖的jar包都设置好以外,最重要的就是以下这个代码片段:

Configuration config=  HBaseConfiguration.create();
//这里改为你的hbase服务器ip
config.set("hbase.zookeeper.quorum","192.168.33.44");
//zookeeper的默认端口,2181
config.set("hbase.zookeeper.property.clientPort","2181");

经过测试,其他属性可以不设置。有人说windows也必须在hosts文件中添加

192.168.33.44 hbase_svr_name

似乎并无必要,除非你要在

config.set("hbase.zookeeper.quorum","hbase_svr_name");

这里写入hostname而不是ip。

就这样了,有问题请尽快反馈给我,谢谢。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值