zoukankan      html  css  js  c++  java
  • java api 访问HBase集群说明

    本文对java项目在windows环境访问HBase的过程进行记录。

    1、引入对应的HBase的jar包。网上有的帖子里说是要指定引入某几个文件即可,我实际测试的时候发现总是报错 java.lang.NoClassDefFoundError: com/ctc/wstx/io/InputBootstrapper 。因为对hbase访问所需jar包不熟悉,最后解决的方式是从集群上的hbaselib目录里,copy所有的包引入java项目里。还好不算大,80M左右。HBase版本是2.1.0,有大神知道这个版本需要引用的包具体是哪些的,麻烦留言告诉一声~

    2、HADOOP_HOME and hadoop.home.dir are unset 的错误。按照网上解决方案提示解决。大意是windows环境访问hbase需要配置环境变量,下载winutils-master.zip解压,增加HADOOP_HOME指向解压目录、%HADOOP_HOMEin% 即可。文件可去https://github.com/steveloughran/winutils下载,选择与hbase版本最近的版本即可。

     

     3、错误提示访问的是localhost,我们的hbase是在服务器上,这显然是哪里配置不对。

     按照网上的思路,说是要修改服务器上的/etc/hosts文件,将服务器暴露的ip地址与master对应起来;同时windowssystem32driversetchosts文件也需要配置。看了一下,配置都在。

     那为啥还会出这样的问题呢?折腾了一阵突然想起,会不会是代码写的有问题,于是把获取hbase链接的init方法改成了下面这样,果然OK了。

  • 相关阅读:
    偏函数
    通过local对象的使用,分析flask中全局request对象为神魔不同的视图函数中不会混乱--协助解读flask的源码
    flask安装即web框架介绍
    事件
    文件复制工具
    非文本文件的写入
    文件读取
    sys模块
    datetime模块
    事件冒泡与捕获
  • 原文地址:https://www.cnblogs.com/coldlight/p/14653191.html
Copyright © 2011-2022 走看看