Hbase的NoServerForRegionException: Unable to find region for talk,,99999999999999 after 10 tries问题

来源:互联网 发布:java spring 单例模式 编辑:程序博客网 时间:2024/06/10 18:45

      第一次使用Hbase的java api来写程序就遇到了NoServerForRegionException: Unable to find region for talk,,99999999999999 after 10 tries这个问题,经过一系列的查询终于解决,下面就总结一下出现这个问题的解决办法,下面是错误信息:

     很明显,错误信息提示的是找不到RegionServer的信息,由于对于Hbase来说,RegionServer的信息是在zookeeper中存储的,所以,我们首先要想到是不是zookeeper没有连接上,或没有启动起来,这就需要您去查看您的集群的情况,查看zookeeper的日志信息,看起是否工作良好。

    如果zookeeper工作良好,那么就有可能您的程序中没有加载hbase-site.xml中的参数,您只需在程序中加入一下代码:

        configuration = HBaseConfiguration.create();          configuration.set("hbase.zookeeper.quorum", "hdfsvm001.hogpu.cc,hdfsvm002.hogpu.cc");          configuration.set("hbase.zookeeper.property.clientPort","2181");          configuration.set("zookeeper.znode.parent","/hbase-unsecure");            try {              connection = ConnectionFactory.createConnection(configuration);          } catch (IOException e) {              e.printStackTrace();          }  
再次尝试。

    如果以上都没问题,那么下面就是我遇到的问题,版本问题,Hbase1.*和Hbase0.*有很大的变化,其中一部分api发生了改变,比如说:Htable(Hbase0.*)和Table(Hbase1.*),那么您就需要重新从Hbase的lib文件夹下面找到您所需的jar包,修改您的代码,即可成功。

阅读全文
0 0
原创粉丝点击