为HBase客户端寻找合适的hbase-site.xml hbase-default.xml配置示例

时间:2011-02-02 21:50:37

标签: api configuration client hbase

我正在尝试从Java应用程序连接到HBase节点。 HBaseConfiguration是关键,但可用的Javadoc和文档非常糟糕且不够。

有没有人有适当的hbase-site.xml hbase-default.xml示例用于远程连接?

谢谢!

3 个答案:

答案 0 :(得分:2)

从客户的角度来看,您只需要设置两个变量:

  

hbase.rootdir

     

hbase.zookeeper.quorum

答案 1 :(得分:1)

以下是我的设置文档中有关hbase-site.xml的步骤。我们不会对hbase-default.xml进行任何更改,因为......那就是所有默认设置。 :)

  1. 编辑hbase-site.xml。将以下内容复制到文件中。
  2.   

    <?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;
                    <最终>真< /最终> < /性>
      < /结构>

    1. 保存文件并退出编辑器。
    2. 请注意,hbase.rootdir指向PDHadoop1,因为它是开发环境中的名称节点。同样,hbase.zookeeper.quorum指向开发环境中的所有zookeeper服务器。请在您的环境中使用适当的服务器名称替换这些值。
    3. 编辑区域服务器。将以下内容复制到文件中。
    4. 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盒子上......