【发布时间】:2014-09-25 04:47:21
【问题描述】:
您好,我已经在我的机器上安装了 ubuntu 并安装了 hbase0.98-hadoop2。然后我编辑了 hbase-env.sh 文件和 hbase-site.xml。现在我的 hbase shell 工作正常。但是当我尝试使用 hbase java api 从 Java 代码连接到 hbase 时。我得到错误。 我的代码是:
Configuration hc = HBaseConfiguration.create();
HTableDescriptor ht = new HTableDescriptor("User");
ht.addFamily( new HColumnDescriptor("Id"));
ht.addFamily( new HColumnDescriptor("Name"));
System.out.println( "connecting" );
HBaseAdmin hba = new HBaseAdmin( hc );
System.out.println( "Master running ? "+ hba.isMasterRunning());
System.out.println( "Creating Table" );
hba.createTable( ht );
System.out.println("Done......");
我的输出是:
connecting
Exception in thread "main" java.lang.NumberFormatException: For input string: "42529`;��7ec�PBUF
jamil-37037�������)
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
at java.lang.Integer.parseInt(Integer.java:492)
at java.lang.Integer.parseInt(Integer.java:527)
at org.apache.hadoop.hbase.HServerAddress.<init>(HServerAddress.java:63)
at org.apache.hadoop.hbase.MasterAddressTracker.getMasterAddress(MasterAddressTracker.java:63)
at org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation.getMaster(HConnectionManager.java:353)
at org.apache.hadoop.hbase.client.HBaseAdmin.<init>(HBaseAdmin.java:89)
at HBaseConnector.main(HBaseConnector.java:157)
我的代码在 HbaseAdmin 中产生了问题。请问有什么帮助吗? 请记住我安装了独立的 hbase 并没有单独安装 hadoop。它是同一个包 hbase0.98.6-hadoop2。
【问题讨论】:
-
看起来 zookeeper 端口没有得到正确解析。它需要一个整数值但获取文本。 hbase-site.xml 在类路径中吗?如果是,它有 hbase.zookeeper.quorum 吗?您可以尝试将 hbase.zookeeper.quorum 设置为您的 HBaseConfiguration。
-
如何在类路径中设置 hbase-site.xml? hbase-site.xml 文件中没有提到 hbase.zookeeper.quorum。我正在使用独立的 hbase。