我正在尝试从Java应用程序连接到HBase节点。 HBaseConfiguration是关键,但可用的Javadoc和文档非常糟糕且不够。
有没有人有适当的hbase-site.xml hbase-default.xml示例用于远程连接?
谢谢!
答案 0 :(得分:2)
从客户的角度来看,您只需要设置两个变量:
hbase.rootdir
hbase.zookeeper.quorum
答案 1 :(得分:1)
以下是我的设置文档中有关hbase-site.xml
的步骤。我们不会对hbase-default.xml
进行任何更改,因为......那就是所有默认设置。 :)
<?xml version =“1.0”?>
<?xml-stylesheet type =“text / xsl” HREF = “configuration.xsl” >
<结构>
<性>
<名称>&hbase.rootdir LT; /名称> <值GT; HDFS://PDHadoop1.corp.COMPANY.com:54310的/ usr / HBase的< /值GT; <最终>真< /最终> < /性>
<性>
<名称>&hbase.zookeeper.quorum LT; /名称> <值GT; PDHadoop1.corp.COMPANY.com,PDHadoop2.corp.COMPANY.com,PDHadoop3.corp.COMPANY.com,PDHadoop4.corp.COMPANY.com< /值GT; <最终>真< /最终> < /性>
<性>
<名称>&hbase.cluster.distributed LT; /名称> <值GT;真< /值GT;
<最终>真< /最终> < /性>
< /结构>
PDHadoop3.corp.COMPANY.com
PDHadoop2.corp.COMPANY.com
PDHadoop1.corp.COMPANY.com
我为XML缺乏格式化而道歉。
这些是我们在制作中使用的设置,我在我的开发群集上打开文件进行验证。
我希望有所帮助。
答案 2 :(得分:1)
我遇到的一个主要问题是,如果你的/ etc / hosts包含指向环回地址(127.0.0.1,127.0.1.1,et cetra)的主机名的条目,那么Hbase master将错误地注册自己在Zookeeper中使用该环回地址 - 当您的客户端与主服务器不在同一台计算机上时,这将无效。
我浪费了相当多的时间来(首先)让Hbase工作。解决方案是删除/ etc / hosts中的条目;但这要求你覆盖操作系统的“开箱即用”行为,至少在我测试过的ubuntu盒子上......